在Form1画1个Label1的标签数组,含3个标签控件,下标从0开始

  • 格式:doc
  • 大小:52.50 KB
  • 文档页数:4

基础题(1)【考点分析】本题考点有:标签的Caption属性,控件数组的建立方法。

【解题思路】控件数组的建立方法有两种:一种在设计时建立,首先,在窗体上画出某控件,并进行属性设置。

然后选中该控件进行"复制"和"粘贴"操作,系统提示"是否建立控件数组",选择是即可。

另外一种是运行时添加控件数组。

通过标签对象的Caption属性来设置标签显示内容。

【操作步骤】步骤1:新建一个窗体,按照题目要求建立标签控件数组并设置相关属性,如图所示。

步骤2:测试并运行程序,关闭程序后按题目要求存盘。

基础题(2)【考点分析】本题考点有:标签控件的Caption属性,MouseMove事件。

【解题思路】通过MouseMove事件中的X指定鼠标光标当前位置的横坐标,通过标签的Caption 属性设置初始内容为空,在程序运行过程中,利用该属性显示当前鼠标光标位置的横坐标值。

【操作步骤】步骤1:新建一个窗体,按照题目要求建立一个标签控件并设置相关属性,如图所示。

步骤2:打开代码编辑窗口,在指定位置编写如下代码。

参考答案Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single) Label1.Caption = X '标签中显示当前鼠标光标位置的横坐标值End Sub步骤3:测试并运行程序,关闭程序后按题目要求存盘。

简答题(1【考点分析】本题考点有:文本框的Text属性,标签的Caption属性,命令按钮的Click事件,V al()函数,自定义函数及调用,if语句及for语句。

【解题思路】通过Val()函数得到输入N值,利用N与2相除求得余数是否为0来判断N是奇数还是偶数。

自定义函数f来计算N!,通过for循环调用函数f来求出题目要求的和。

【操作步骤】步骤1:打开本题工程文件。

步骤2:打开代码编辑窗口,去掉程序中的注释符,将问号改为正确的内容。

参考答案(阴影部分是需要考生填入的内容)Private Sub Command1_Click()Dim sum As Longn = Val(Text1.Text) '将文本框中文本转换为数值sum = 0If n Mod 2 = 0 Then '判断奇数还是偶数m = n + 1Elsem = nEnd IfFor i = 1 To m Step 2sum = sum + f(i) '调用f来求得题目要求的和NextLabel2.Caption = sumEnd SubPrivate Function f(ByVal x As Integer) As Long '定义f,求N!y = 1For i = 1 To xy = y * iNextf = yEnd Function程序结束步骤3:调试并运行程序,关闭程序后按题目要求存盘。

简答题(2)【考点分析】本题考点有:自定义数组及初始化,单选按钮控件数组,自定义函数及调用,if语句,for语句,IIf()函数以及闰年如何判断。

【解题思路】首先判断年份是否为闰年,然后计算到要显示月历的月份之前共有多少天,再计算出要显示月历的月份的第1天是星期几,最后输出月历。

【操作步骤】步骤1:打开本题工程文件。

步骤2:打开代码编辑窗口,去掉程序中的注释符,将问号改为正确的内容。

参考答案(阴影部分是需要考生填入的内容)Option Base 1 'month_days 数组下界为1Private Sub Command1_Click()Dim days%, month%, year%, day1_1%, n%Static month_days As Variantmonth_days = Array(31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31)For k = 0 To 6If Option1(k).Value = True Thenday1_1 = kEnd IfNext kdays = 0month = Text2year = Text1month_days(2) = IIf(leap_year(year), 29, 28) '调用leap_year函数判断闰年'IIF( 逻辑表达式, 表达式1 , 表达式2 ),为真,返回表达式1 ,否则返回表达式2'======== 计算到要显示月历的月份之前共有多少天=========For k = 1 To month - 1days = days + month_days(k)Next k'======== 计算要显示月历的月份的第1天是星期几=========n = (days Mod 7 + day1_1) Mod 7'================ 输出月历==================Picture1.ClsPicture1.Print " SUN MON TUE WED THU FRI SAT"For k = 1 To month_days(month)Picture1.Print Tab(5 * n + 1); k;n = n + 1If n = 7 ThenPicture1.Printn = 0End IfNext kEnd Sub'================ 判断闰年==================Private Function leap_year(year As Integer) As Booleanleap_year = (year Mod 4 = 0 And year Mod 100 <> 0 Or year Mod 400 = 0) End Function程序结束步骤3:调试并运行程序,关闭程序后按题目要求存盘。

综合题【考点分析】本题考点有:用户自定义数据类型,自定义过程及调用,IIf()函数以及文件操作相关语句Open、Close、Input等。

【解题思路】Sub putdata过程用来显示记录,Sub SetEnabled过程用来控制命令按钮可用或不可用。

【操作步骤】步骤1:打开本题工程文件。

步骤2:打开代码编辑窗口,去掉程序中的注释符,将问号改为正确的内容。

参考答案(阴影部分是需要考生填入的内容)Private Type rec '自定义数据类型name As String * 3Math As IntegerChinese As IntegerEnglish As IntegerEnd TypeDim a(20) As rec, num As Integer, n As IntegerPrivate Sub readdata()Open App.Path & "\in5.txt" For Input As #1 '打开文件k = 1Do While Not EOF(1) 'eof()函数为判断是否到文件尾函数Input #1, a(k).name, a(k).Math, a(k).Chinese, a(k).English '文件记录读入数组a ()k = k + 1LoopClose #1 '关闭文件num = 20 '记录条数End SubPrivate Sub Command1_Click()n = 1putdata n '调用putdata过程End SubPrivate Sub Command2_Click()n = n + 1putdata n '调用putdata过程End SubPrivate Sub Command3_Click()n = n - 1putdata n '调用putdata过程End SubPrivate Sub Command4_Click()n = numputdata n '调用putdata过程End SubPrivate Sub Form_Load()readdataCommand1_ClickEnd SubPrivate Sub putdata(k As Integer)Label1.Caption = "第" & k & "条记录"Text1 = a(k).nameText2 = a(k).MathText3 = a(k).ChineseText4 = a(k).EnglishText5 = a(k).Math + a(k).Chinese + a(k).EnglishSetEnabled (k)End SubPrivate Sub SetEnabled(m As Integer)Command1.Enabled = IIf(m = 1, False, True)Command2.Enabled = IIf(m = num, False, True)Command3.Enabled = IIf(m = 1, False, True)Command4.Enabled = IIf(m = num, False, True) End Sub步骤3:调试并运行程序,关闭程序后按题目要求存盘。