当前位置:文档之家› 上海市高等学校计算机等级考试试卷(B)

上海市高等学校计算机等级考试试卷(B)

上海市高等学校计算机等级考试试卷二级Visual Basic程序设计(考试时间120分钟----B卷)一、单选题(15分,每题1分)1. MyObject.SetFocus方法是将 D 移至对象MyObject上。

A. 鼠标B. 程序控制权C. 焦点D. 光标2.在Visual Basic 中称各种可在对象上操作的过程为______B____。

A. 属性B. 方法C.事件D.封装3.下列控件中既可用于输入文本,又可用于显示文本的是___B_____。

A. Label 控件(输出)B. TextBox 控件C. Timer 控件D. CommandButton 控件4.能够将文本框来的属性是__B____ _。

A. LockedB. VisibleC. HideD. Enabled5. 可以通过函数,返回最近一次读写操作的文件指针位置。

A. LOCB. LOF9返回某文件字节数)C. EOF (检查指针是否到达文件尾)D. Seek6.下列数值中_____D_______ 不可能通过表达式Rnd * 20 + 10 产生。

A.10B. 15C. 20D. 307.表达式10 \ 8 Mod 9 的值是_____B____。

A. 0B. 1C. 2D. 98. 如果有自定义函数Fact(x As Integer),则形式参数x的默认传递方式是。

A. 传值B. 传址C. 传变量D. 传函数9.为了给x,y,z三个变量赋初值1,下面的赋值语句正确的是___A________。

A. x=1: y=1: z=1B. x=1,y=1,z=1C. x=y=z=1D. xyz=110.数组声明语句Dim a(4,-1 To 2)中的数组a包含了_____D___个数组元素。

A. 12B. 15C. 16D. 2011.从函数过程退出,并返回到主调过程,可使用语句____C____ 。

A. Exit ForB. EndC. Exit SubD. Exit Function12.要使计时器正常工作,其属性值应满足______A___。

A. Enabled = True且Interval > 0B. Enabled = False且Interval > 0C. Enabled = False且Interval = 0D. Enabled = False且Interval = 013.当要用字符串"VB考试"修改列表框List1所选中的数据项时,正确的表示方法是_________。

A. List1.AddItem "VB考试"B. List1.List(List1.ListIndex)="VB考试"C. List(List1.ListIndex) = "VB考试"D. List1.List(ListIndex) = "VB考试"14.在用Open 语句打开文件时,如果省略"For方式",则打开的文件的存取方式是_________。

A. 顺序输入方式B. 顺序输出方式C. 随机存取方式randomD. 二进制方式binary15.在Visual Basic中默认坐标原点在窗体的________A___ 。

A. 左上角B. 左下角C. 中心D. 底部中点二、填充题(20分,每空2分)1.当焦点进入文本框Text1时,要自动选定文本框开始的5个字符,则需要通过代码Text1.SelStart = __0____ 和Text1.SelLength = 5来实现。

2.当设置文本框的ScrollBar 属性为2(有垂直滚动条)后,没有显示垂直滚动条,原因是没有将__MULTILINE______ 属性设置为True。

3.在程序代码Label1.Caption = "Visual Basic"中,表示对象的是___LABEL1______。

4.设变量TestMe的值为500,则Print TestMe > 1000, "Large", "Small") 将输出____SMALL____。

5.请在空白处填入适当的内容,使程序的输出结果是3 。

Private Sub Command1_Click()num = 0Do While ____num<>3____num = num + 1LoopPrint numEnd Sub6.对For i = 5 To -5 Step -2 语句,共循环___5_______次。

7.在过程定义时,表示值传递的关键字是____byval_____。

8.要使装入到列表框中的数据项能自动排序,应设置该控件的____sorted_______ 属性为True 。

9.要覆盖一个已存在的顺序文件中原有的数据,在Open 语句中应该以For __output_____模式打开文件。

10.已知窗体Form1 的CurrentX = 1000,执行了命令PSet Step(200, 200) 后,CurrentX 的值为________ 。

三、程序填充题(30分,每空2.5分)1.下面程序的功能是统计文件file2.txt中数字符号出现的次数。

程序的思想是:每次从文件中读取一个字符,判断是否是数字字符。

若是数字字符,计数器加1。

Private Sub Command1_Click()Dim a As Integer, c As String * 1(1) open” file2.txt”For Input As #3a = 0Do While Not EOF(3)c = Input$((2)#1 ) ' 读取一个字符,If c >= "0" And c <= "9" Then(3)a=a+1 ' 计数器加1End IfLoopClose #3Print " 数字字符出现的次数:"; aEnd Sub2. 程序完成对数组a中的10个整数用冒泡法按升序排列,并将排序结果显示在Picture1图片框中。

Private Sub Command1_Click()Dim a()Dim i%, j%, n%, t%a = Array(678, 45, 324, 528, 439, 387, 87, 875, 273, 823)n = UBound(a)For i = 0 To (1) 9For j = 0 To n - i - 1If (2) a(i) > a(j + 1) Thent = a(j)a(j) = (3) a(i)a(j + 1) = tEnd IfNext jNext iFor j = 0 To nPicture1. print “j“(4) ; " ";Next jEnd Sub3. 所谓回文素数是指构成的字符左右对称的素数。

例如:11、101、313等。

下面的程序求10~1000以内的所有回文素数。

程序的思想是选取正整数N,若N是素数,调用子过程hws判断该素数是否为回文数(判断左右对称),若是,在文本框内显示所求结果,如图所示。

Private Sub Command1_Click()Dim i%, j%, flg As Boolean,m%For i = 10 to 1000 (1)m= Int(Sqr(i))For j = 2 To m ' 判断是否为素数If i Mod j = 0 Then next i (2)Next jIf j>m ThenCall hws (3)If flg Then Text1 = Text1 & i & vbCrLfEnd IfNext iEnd SubPrivate Sub hws(n As Integer, bz As Boolean) 'Dim j%, k%, m$bz = Truem = CStr(n) ' 将数值转为字符k = len(m) (4) ' 求字符m的长度For j = 1 To k \ 2 '判断回文数If j (5) <> Mid(m, k - j + 1, 1) Thenbz = FalseExit ForEnd IfNext jEnd Sub四、编程题(35分)编写一个完整的程序,要求如下:1. 在Form1窗体上放置1个标签和1个列表框(初始值为空)。

窗体标题栏显示考生真菜单项菜单名称说明窗体1 Menu1 一级菜单….添加Menu11 二级菜单….平均值Menu12 二级菜单….-(分隔线)bar 二级菜单….退出(X) Menu13 二级菜单图形Menu2 一级菜单建立2.在Form1中,单击“添加”菜单项,在列表框中随机产生5组三个相邻正整数N ,N+1和N+2(100≤N<1000)。

单击“平均值”菜单项,计算所产生数的平均值(保留2位小数),并显示在标签上。

3.选择“图形”菜单项,显示Form2窗体。

双击Form2窗体,显示Form1窗体。

选择“退出”菜单项,结束程序运行。

4.单击Form2窗体,重新定义窗体的坐标系为(-10, 300)-(300, -10)。

在窗体上按公式:y=x2÷255,x=0~255。

用Pset方法绘制如图2所示图形,其中绘制坐标轴直线的线宽为1,绘制曲线的线宽为5,曲线的颜色为绿色。

5.在C:\KSB目录下将工程保存为bctb.vbp、Form1窗体为bctb1.frm、Form 2窗体为bctb2.frm。

(文件名中符号1是数字1,不是字母L)。

相关主题