收藏 分销(赏)

上海计算机二级VB试题.doc

上传人:二*** 文档编号:4452016 上传时间:2024-09-23 格式:DOC 页数:7 大小:93KB 下载积分:5 金币
下载 相关 举报
上海计算机二级VB试题.doc_第1页
第1页 / 共7页
本文档共7页,全文阅读请下载到手机保存,查看更方便
资源描述
. 2010年市高等学校计算机等级考试试卷 二级 Visual Basic程序设计 (考试时间120分钟----A卷) 一、单项选择题(共15分,每题1分) 1.是合法的变量名。 [A] A. X_yzB. 123abc C.IntegerD. X-Y 2.Rnd函数不可能的返回值是。 [A] A.1 B.0 C.0.0001 D.0.9999 3.要将一个值传递给子过程A的m参数,并通过n参数返回一个结果,子过程定义中正确的是。 [B] A. Sub A(ByVal m!, ByVal n!) B. Sub A(ByVal m!, ByRef n!) C. Sub A(ByVal m!, ByRef (n+1)!) D. Sub A(ByVal m+1, ByVal n+2) 4.能在窗体Form1的标题栏中显示“VisualBasic窗体”的语句是____________。[C] A. Form1.Name="VisualBasic窗体"B.Form1.Title="VisualBasic窗体" C. Form1.Caption="VisualBasic窗体"D.Form1.Text="VisualBasic窗体" 5.在用通用对话框控件建立打开文件对话框时,在文件列表框中只允许显示jpg图像类型的文件,则Filter属性的正确设置是。[D] A.Picture(.jpg)||*.jpg B.Picture(.jpg)(*.jpg) C.图片文件|(.jpg) D.图片(.jpg)|*.jpg 6. 关于多重窗体程序的表达中,错误的是____________。 [C] A.用Hide方法隐藏窗体,用Show方法显示窗体 B. 可以根据需要指定启动窗体 C. 若各窗体都建立了一个文本框控件(TextBox),它们的Name不能相同 D.若各窗体都有菜单,则各菜单是彼此独立的 7. 按照结构化程序设计的要求,语句是非结构化程序设计语句。 [C] A.If 语句 B.For 语句 C.GoTo语句 D.Select Case语句 8.同一个窗体中,各个对象的____________属性值是不同的,它用于唯一识别对象。A. Location B. Name[B] C.Size Text D. Select Case语句 9.有一个名为Menu1菜单项,为了在运行时使该菜单项失效(变灰),应使用的语句为____________。 A. Menu1.Enabled=False B. Menu1.Enabled=True C. Menu1.Visible=True D. Menu1.Visible=False [A] 10.要暂时关闭定时器,应把定时器的_________属性设置为False。 A. Visible B. Timer C. Enabled D. Interval [C] 11.在VB中,属于方法的是。[A] A.SetFocus B.LostFocus C.KeyPress D.SelectedText 12.使用Dim A(100) As Single 语句声明了数组A,A数组的下标取值围是_________。[B] A. 0~99 B. 0~100 C. 1~99 D. 1~100 13.列表框List1中已有5个列表项,要删除列表框List1最后一项, __________语句是正确的。 [A]A.List1.RemoveItem List1.ListCount - 1 B.List1.RemoveItem 5 C.List1. RemoveList1.ListCount - 1 D.List1.Remove 5 14.要向D盘根目录下的名为data.txt的顺序文件中添加容,应先使用_________语句打开文件。 [B]A.Open "data.txt" For Append As #1B.Open "D:\data.txt" For Append As #1C.Open "data.txt" For Output As #1D. Open "D:\data.txt" For Output As #1 15.要使文本框输入的字符均显示为*,则设置___________。 [D] A.Visible属性为* B.Name属性为* C.Text属性为* D.PassWordChar属性为* 二、程序调试题(共20分, 每错2.5分,第1题有2处错,第2题3处错,第3题3处错) 启动工程文件C:\ks\cxts1.vbp,程序存在8处错误,请调试改正,并按原文件名和位置保存。正确结果见样例cxts1.exe。 改错方法:不能修改或重新定义变量,不允许增加或删除语句,但可以修改语句,所修改的语句必须在句尾加上注释标记 '***********。 调试改错题1, 程序中有2个错误。 以下程序的功能是在文本框中输入百分制成绩,单击按钮后,在标签上显示成绩等第,分优秀、合格和不合格,规定:成绩≥80为"优秀";60≤成绩<80为"合格";成绩<60为"不合格"。 Private Sub Command1_Click() Dim d%, s$ d = Val(Text1.Text)\10 Select Case d Case d>=8 s = "优秀" Case 6 To 7 s = "合格" Case Else s = "不合格" End Select Label1.Text = "成绩等第为:" + s End Sub 正确答案:Case Is >= 8 或 8 To 10 或8,9,10 Label1.Caption 或 Label1 调试改错题2, 程序中有3个错误。 单击“调试改错题2”按钮,在Picture1显示有规律数字字符和字母字符图,见样例。 Private Sub Command2_Click() Dim ch$,i%,j% Picture1.Cls For i = 1 To 5 Ch = Trim(i) For j = 1 To 5 ' 输出数字字符 Picture1.Print Ch; Next j Picture1.Print Space(3); For j = i To 5 ' 输出字母字符 Picture1.Print Chr(65); Next j Picture1.Print Next j End Sub 正确答案:For j = 1 To i Picture1.Print Chr(i+64); Next i 调试改错题3, 程序中有3个错误。 单击“调试改错题3”按钮,自动产生两个 5~999 之间的随机正整数a,b,在Text2显示较小的数a,Text3显示较大的数b。计算a到b之间的偶数和,结果显示在Label3。 Private Sub Command2_Click() Dim a%, b%, c%, i% a = Int(Rnd * 995 + 5) b = Int(Rnd * 995 + 5) If a > b Then t = b: a = b: b = t End If Text1 = a Text2 = b s = 1 For i = a To b If Mod(i,2)=0 Then s = s + i Next i Label3 = "Sum=" & s End Sub 正确答案:t=a S=0 i mod 2 = 0 三、程序填空题(共30分,每空2 .5分) 1.按公式,求累加和s不超过1000的最大项数n。 要求每行显示每个n的累加和如下图,并将全部结果保存在c:\data.txt中。 Private Sub Form_Click() Dim n%, s$ n = 1 s = (1) Print " N", " S" Do While ( (2) ) s = s + n * n Print n, s n=n+1 Loop Print "累加和不超过1000的最大项数n="; n - 2 ' Open "c:\jg.txt" For (3) As #1 Print #1, "n="; n - 2 Close #1 End Sub 答案:(1)0 (2)s < 1000 (3)Output 2. 以下程序段的功能是:在一个字符串变量str1中查找子串变量str2中出现的个数,并显示是否找到与查找到的结果。样例为查找子串"at"出现的个数为2个。 Private Sub Form_Click() Dim str1$, str2$, cd1%, cd2%, n%, i% str1 = Text1.Text str2 = Text2.Text cd1 = Len(str1) cd2 = Len(str2) i = 1 n = 0 Do While i <= ____(1)_____ If Mid(str1, i, _____(2)_____) = str2 Then n = n + 1 End If _____(3)_____ Loop If ____(4)_____ Then Label3 = "找到了" & n & "个" Else Label3 = "没有找到!" End If End Sub 答案 (1)cd1 cd1-cd2+1 (2)2 (3)i=i+1 (4)n>0 3.以下程序段的子过程RightShift的功能是:将一维字符数组s中的元素循环右移一位并输出变动后的结果。 Command1_Click()事件过程通过键盘输入右移位数,调用子过程RightShift完成对给定的字符数组元素循环右移,样例为右移3次的结果。 Private Sub Command1_Click() Dim i%, m%, a() a = Array("A", "B", "C", "D", "E", "F", "G", "H") Print "原始顺序为: "; For i = 0 To UBound(a) Print a(i) & " "; Next i Print ______(1)________= InputBox("请输入右移位数:") For i = 1 To m Print "第" & i & "次右移后:"; Call________(2)__________ Next i End Sub Sub RightShift(ByRef s()) Dim Last$, i%, n% n =________(3)__________ Last = s(n) For i = n To 1 Step -1 ‘ 逐位右移 s(i) = ________(4)__________ Next i s(0) = ________(5)__________ For i = 0 To n ‘ 显示右移后的结果 Print s(i) & " "; Next i Print End Sub 答案:(1)m (2)RightShift(a) (3)UBound(s) (4)s(i - 1) (5)Last 四、编程题(35分) 1.参见样例,在Form1窗体上放置2个列表框。建立如下菜单: 菜单项 菜单名 备注 应用 Menu1 一级菜单 …产生 Menu11 二级菜单 …计算 Menu12 二级菜单 - bar 分隔线 …完毕 Menu13 二级菜单 绘图 Menu2 一级菜单 在Form2上,放置“绘图”和“返回”2个命令按钮。 2.单击“产生”菜单项,在列表框List1中随机生成10个3位正整数。 单击“计算”菜单项,在列表框List2中显示List1各数据项每位数之和。 3.单击“绘图”菜单项时,显示窗体2,并隐藏窗体1;单击"完毕"菜单项时,完毕程序的运行。 4.在窗体2上单击“绘图”命令按钮,定义窗体坐标系(-1, 60)-(20, -60),绘制坐标轴线;按公式y = (3 * Sin(x) + Cos(5 * x)) * 20绘制直线(0≤ x ≤20)。 单击“返回”命令按钮则关闭窗体2,显示窗体1。 5.在C:\KS 目录下将工程保存为bct1.vbp、Form1窗体为bct11.frm、Form 2窗体为bct12.frm。 7 / 7
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 考试专区 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服