《上海计算机二级Vb试题.doc》由会员分享,可在线阅读,更多相关《上海计算机二级Vb试题.doc(81页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、如有侵权,请联系网站删除,仅供学习与交流上海计算机二级Vb试题【精品文档】第 81 页一、单选题(30分,每小题1分)u 一个完整计算机系统应包括_(1)_。(A) 主机、键盘、和显示器 (B)硬件系统和软件系统(C) 主机和其他外部设备 (D) 系统软件和应用软件u 打印机属于计算机部件中的_(2)_。(A) 输出设备 (B) 输入设备 (C) 存储设备 (D) 缓冲设备u 下列表示存储容量的数据中,_(3)_是最大的。(A)20480 KB (B) 1.44 MB (C) 1 GB (D)4865723 Byteu 在计算机内部能够直接执行的程序语言是_(4)_。(A)数据库语言 (B)高
2、级语言 (C)机器语言 (D)汇编语言u 下列叙述正确的是_(5)_。(A)程序设计就是编制程序 (B)程序的测试必须由程序员自己去完成(C)程序经调试改错后还应进行再测试 (D) 程序经调试改错后不必进行再测试u 以下叙述中错误的是_(6)_。(A)Visual Basic 是事件驱动型可视化编程工具(B)Visual Basic应用程序不具有明显的开始和结束语句(C)Visual Basic工具箱中的所有控件都具有宽度(Width)和高度(Height)属性(D)Visual Basic中控件的某些属性只能在运行时设置u 以下不属于VB工作模式的是_(7)_模式。(A) 编译 (B) 设计
3、 (C) 运行 (D) 中断u 以下语句的输出结果是_(8)_ 。 Print Format $(32548.5,“000,000.00”) (A) 32548.5 (B) 32,548.5 (C) 032,548.50 (D) 32,548.50u 若要使某可见控件获得焦点,则可使用_(9)_方法来实现。(A) Refresh (B) SetFocus (C) Value (D) GotFocusu 在下列说法中,正确的是_(10)_。(A) 通过适当的设置,可以在程序运行期间,让时钟控件显示在窗体上(B) 在列表框中不能进行多项选择(C) VB系统不能在列表框中自动实现将项目按字母顺序从大
4、到小排列(D) 复选框的Value属性值为布尔型u 执行以下程序段,输出的结果为_(11)_。a$=abbacddcbaFor i=6 To 2 Step -2x=Mid(a,i,i): y=Left(a,i)z=Right(a,i): z=UCase(X & Y & z)Next iPrint z(A) ABA (B) BBABBA (C) ABBABA (D) AABAABu 控件在窗体上的位置是由_(12)_属性确定的。(A) Width和Height (B) Top和Left (C) Width和Left (D) Top和Width u 关于Name属性,以下叙述中_(13)_是正确的
5、。(A) 窗体的Name属性指定窗体的名称,用于标识一个窗体。(B) 窗体的Name属性用于设置显示在窗体标题栏的文本。(C) 可以通过代码在程序运行中改变某个对象的Name属性值。(D) 对象的Name属性值可以设置为空。u 下列名称中_(14)_可以作为VB的变量名。(A) mod (B) m-d (C) tempVal (D) leftu 要求出变量x和y中较大的一个并保存在变量Max中,下面的程序段中_(15)_是不正确的。(A) Max = IIf(x y, x, y)(B) If x y Then Max = x Else Max = y(C) Max = xIf y = x Th
6、en Max = y(D) If y x Then Max = yMax = xu 执行以下语句后,a的值为_(16)_Dim a As Integera = 1Do Until a = 100 a = a + 2Loop(A) 102 (B)100 (C)溢出 (D)101u 对于语句If a = b Then c = d 的语法分析,_(17)_是正确的。(A) a=b 和 c=d都是赋值语句 (B) a=b是关系表达式,c=d是赋值语句(C) a=b 和 c=d都是关系表达式 (D) a=b是赋值语句,c=d是关系表达式u 运行下列程序段,单击两次命令按钮,则第二次单击时窗体中显示的结果
7、是_(18)_。Private Sub Command1_Click() Dim a As Integer Static b As Integer a = a + 5: b = b + 5 Print a, bEnd Sub(A) 5 10 (B) 5 5 (C) 10 10 (D) 0 0u 在系统默认的情况下,Dim a(3, 4, 2 To 5) 定义的数组共有_(19)_个元素。(A) 36 (B) 48 (C) 60 (D) 80u 下面的子过程定义语句中没有语法和逻辑错误的是_(20)_。(A) Sub S1(ByVal n%() (B) Sub S1(n As Integer)
8、As Integer(C) Function S1(ByVal n As Integer) (D) Function S1%(ByVal S1 As Integer)u 执行了下面程序后,组合框中数据项的值是_(21)_ 。Private Sub Form_Click()For i=1 to 6Combo1.AddItem iNext iFor i= 1 to 3Combo1.RemoveItem iNext iEnd Sub (A)1 5 6 (B)1 3 5 (C)4 5 6 (D)2 4 6u 设窗体上有一个列表框控件List1,且其中含有若干列表项。则以下能表示当前被选中的列表项内容的
9、是_(22)_.(A)List1.List B)List1.ListIndex (C)List1.Index (D)List1. Textu 在窗体上画一个名称为Command1的命令按钮和一个名称为Text1的文本框,然后编写如下事件过程:Private Sub Command1_Click()n = Val(Text1.Text)For i = 2 To nFor j = 2 To sqr(i)If i Mod j = 0 Then Exit ForNext jIf j Sqr(i) Then Print iNext iEnd Sub该事件过程的功能是_(23)_(A) 输出n以内的奇数
10、(B) 输出n以内的偶数(C) 输出n以内的素数 (D) 输出n以内能被j整除的数u 如果要在菜单中添加一个分隔线,则应将其标题属性设置为_(24)_。(A)= (B)* (C)& (D)-u 以下关于文件的叙述中正确的是_(25)_。(A) 一个记录中所包含的各元素的数据类型都是相同的(B) 随机文件中每个记录的长度是固定的(C) Open命令的作用是打开一个已经存在的文件(D) 使用Input # 语句可以从随时机文件中读取数据u 以下定义数组或给数组元素赋值的语句中,正确的是_(26)_。(A) Dim a As Variant (B) Dim a(10) As Integer a=Ar
11、ray(1,2,3,4,5) a=Array(1,2,3,4,5)(C) Dim a%(10) (D) Dim a(3),b(3) As Integer a(1)=ABCDE a(0)=0 : a(1)=1 : a(2)=2 : b=au 窗体中有一个命令按钮,编写如下程序,程序运行后,输出结果为_(27)_。Private Sub test(p,m,n) p=p+1: m=m+1: n=n+1 Print “Sub:”; p; m; n End SubPrivate Sub Command1_Click() a1=1: b1=2: c1=3 Call test(a1,b1+3,(c1) Pr
12、int “Main:”; a1; b1; c1End Sub(A) Sub: 2 6 4Main: 2 6 4(B) Sub: 2 6 4Main: 1 6 4(C) Sub: 2 6 4Main: 1 2 3(D) Sub: 2 6 4Main: 2 2 3u 以下语句用于打开一个顺序文件OpenC:MyFile.txt For OutPut,但是该语句的一个重要错误是没有_(28)_。 (A) 指定打开方式 (B) 指定文件号 (C) 指定打开文件名 (D) 指定文件类型u 在窗体上画一个名称为Label1、标题为“VisualBasic考试”的标签,两个名称分别为Command1和Com
13、mand2、标题分别为“开始”和“停止”的命令按钮,然后画一个名称为Timer1的计时器控件,并把其Interval属性设置为500。编写如下程序:Private Sub Form_Load()Timer1.Enabled=FalseEnd SubPrivate Sub Command1_Click()Timer1.Enabled=TrueEnd SubPrivate Sub Timer1_Timer()If Label1.Left 2 * b Or a = c And b c Or c du 运行下列程序,单击命令按钮,则Text1中显示_5_,窗体中显示_0_。Private Sub Co
14、mmand1_Click() Dim i As Integer, j As Integer, a(5, 4) As Integer For i = 2 To 3 For j = 2 To 4 a(i, j) = i + j Next j Next i Text1.Text = a(3, 2) Print a(3, 1)End Subu 如下图,窗体上有两个命令按扭C1, C2及一个文本框Text1,当按下C1时,将C2的标题与Text1中的内容交换。C2C1 Private Sub C1_Click()Dim a As StringForm1.Caption = 交换后a = _Text1.T
15、xt_ Text1.Text = _C2.Caption_ C2.Caption = aEnd Subu 请完善以下判断完数的程序。一个数如果恰好等于它的因子之和,这个数就被称为“完数”。一个数的因子是指除了该数本身以外能够被其整除的数。例如6是一个完数,因为6=1+2+3。Private Sub CmdJudge_Click()If _m=k_ Then Picture1.Print m & 是完数 Picture1.Print m; =; For i = 1 To UBound(a) - 1 Picture1.Print a(i); +; Next i Picture1.Print _a(
16、ubound(a)_Else Picture1.Print m & 不是完数End IfEnd SubDim a()m = Val(Text1.Text)ReDim a(1)a(1) = 1k = _1_j = 1For i = 2 To m - 1 If m Mod i = 0 Then k = k + i 因数和 j = j + 1 因数个数 ReDim _preserve_ a(j) a(j) = _i_ End IfNext I(转右)u 编写程序。在窗体上显示如下图所示的“九九加法表”。_option_ Explicit Private Sub Form_Click() Dim i%
17、, j% Print + 1 2 3 4 5 6 7 8 9 For i = 1 To _9_ Print i; For j = 1 To _i_ If i + j 10 _then Print ; Print _i+j_; Next j _print_ Next i End Subu 在窗体上画一个名称为Command1的命令按钮,然后编写如下程序, 通过调用过程Swap,调换数组中数值的存放位置,即a(1)与a(10)的值互换,a(2)与a(9)的值互换,a(5)与a(6)的值互换。请填空Option Base 1Private Sub Command1_Click()Dim a(10)
18、As IntegerFor i = 1 To 10a(i) = iNextCall Swap(_a_)For i = 1 To 10Print a(i);NextEnd SubSub Swap(b() As Integer)n = _Ubound(b)_For i = 1 To n / 2t = b(i)b(i) = b(n)b(n) = t_n=n-1_NextEnd Subu 设当前文件夹已有文件t1.txt和t2.txt,其中各有若干文字。现要将t2.txt的内容合并到t1.txt 中。例如t1.txt原来内容为ABCD, t2.txt原来内容为1234,合并后t1.txt的内容将成为“
19、ABCD1234”Private Sub Command1_Click() Open t1.txt _for append_ As #1 Open t2.txt For Input As #2 Do While Not EOF(2) Line Input #2, s _Print #1,s_ Loop CloseEnd Sub三、编程题(20分,每题10分)1 编写一个自定义函数Gcd(m,n),实现求m和n两个正整数的最大公约数。2在文本框Text1中输入一串字符,用标签Label1显示其中出现频率最高的字母(不区分大小写)及其出现次数。例如:输入“This is a beautiful w
20、orld.”则输出“使用频率最高的是i,共出现3次。”一、单选题(30分,每小题1分)1、( )字节称为一个MB。(A) 1024 (B)1000K (C) 1024*1024 (D) 10000K2、计算机硬件系统的五大部件是( )。 (A)CPU、内存储器、输入设备、输出设备、外存储器 (B)运算器、控制器、存储器、输出设备、输入设备 (C)CPU、总线、存储器、外设、主板 (D)主机箱、显示器、音箱、鼠标、键盘 3、常用的输入设备有( )。 (A)键盘、鼠标、扫描仪 (B)显示器、键盘、鼠标 (C)打印机、扫描仪、键盘 (D)触摸屏、打印机、鼠标4、计算机网络的主要作用是( )。(A)
21、数据处理 (B) 信息传输与数据处理(C) 文献查询 (D) 资源共享与信息传输5、二进制数1010等于十六进制数( )。(A) 10 (B) 11 (C) A (D) B6、在VB中要强制显式声明变量,可在窗体模块或标准模块的声明段中加入语句( )。(A) Option Base 0 (B) Option Explicit (C) Option Base 1 (D) Option Compare7、下列程序段的执行结果为( )。 J1 = 10 J2 = 30 If J1 10 And Is10 (D) Case 3,5,Is1024、关于文件操作控件,下列叙述不正确的是( )。(A) 驱动
22、器列表框(DriveListBox)能显示系统中所有有效磁盘驱动器(B) 从驱动器列表框中选择驱动器能变更系统当前的工作驱动器(C) 使用通用对话框(CommonDialog)中的“打开文件”对话框选择文件名,无需编程即可自动地打开所选文件(D) 通过编写适当的程序代码可以使文件列表框(FileListBox)中显示当前目录列表框(DirLIstBox)中选中的文件列表25、从磁盘上读入一个名为“c:filel.txt”的顺序文件,下面程序段正确的是( )。(A) Open c:filel.txt For Output As # 2(B) Open c:filel.txt For Input
23、As # 1(C) F=c:filel.txtOpen F For Input As # 2(D) F=c:filel.txtOpen F For Input As # 126、改变下列( )属性可设置控件的位置,。(A) Height 与 Width (B) Height 与Top (C) Left 与 Top (D) Left 与 Width27、在Visual Basic 中,( ) 关键字用于注释语句。(A) Rem (B) End (C) Else (D) Loop28、X是一个数值型变量,表达式Int(X / 2)= X / 2 的作用是( )。(A) 用于测试X是否偶数 (B)
24、返回一个整数(C) 返回一个奇数 (D) 用于测试X是否整数29、执行了下面程序后,组合框中显示的数据项是( )。Private Sub Form_Load()For i=1 to 6Combo1.AddItem iNext iFor i= 1 to 3Combo1.RemoveItem iNext iEnd Sub (A)1 5 6 (B)1 3 5 (C)4 5 6 (D)2 4 630、打开顺序文件语句中,关键字Append表示把新数据添加到( )。(A) 文件首 (B) 文件尾 (C) 文件中间 (D) 随机位置二、填空(50分,每空2分)1、设有如下程序段: a$=ShanghaiB
25、eijing:b$=Mid(a$,InStr(a$,i)+1)执行上面的程序段后,变量b$的值为_ Beijing_。2、设a=4,执行x = IIf(a6,-2,0)后,x的值为0_。3、窗体上有一个名为List1的列表框,一个名称为Text1的文本框,一个名称为Label1、Caption属性为“Sum”的标签,一个名称为Command1、标题为“计算”的命令按钮。程序运行后,将把1100之间能够被7整除的数添加到列表框中。如果单击“计算”按钮,则对List1中的数进行累加求和,并在文本框中显示计算结果,如图所示。以下是实现上述功能的程序,请填空。Private Sub Form_Load
26、()For i=1 To 100If i Mod 7 =0 ThenList1.additem iEnd If Next iEnd SubPrivate Sub Command1_Click()Sum = 0For i = 1 To list1.listcountSum = Sum + list1.list(i-1)Next iText1.text=sumEnd Sub4、用Array函数建立一个含有8个元素的数组,然后查找并输出该数组中元素的最大值。请填空:Option Base 1Private Sub Command1_Click()Dim arr1%, Max%arr1 = Array
27、(12, 435, 76, 24, 78, 54, 866, 43)Max = arr1(1)For i = 1 To 8If arr1(i) Max Then Max=arr1(i) Next i Print 最大值是: ; MaxEnd Sub5、设在窗体上有一个文本框Text1,一个标签数组Label1,共有10个标签,以下程序代码实现在单击任一个标签时将标签的内容添加到文本框现有内容之后。 Private Sub Labell_Click(Index As Integer) Text1.Text= label1(index).caption End Sub 6、下列程序的功能是:当x1
28、00时,没有意义。请填空。Private Sub Command1_Click() Dim x As Singlex=InputBox(请输入x的值!) select case x Case Is a(j1) Then t=a(j) a(j)=a(j+1) a(j1)=tEnd If Next j Next i For i= 1 to ubound(a)Print a(i); Next i End Sub 11、下列程序运行时,当单击窗体后,从键盘分别在文本框Text1、Text2输入整数m、n,求解m、n的最大公约数,并将结果显示在窗体上。请将程序补充完整Private Sub Form_c
29、lick() m = val(text1.text) n = Val(Text2.text) Print m ; 和; n; 的最大公约数是:;gys(m,n)End SubPrivate Function gys(n, m) p = n Mod m If p=0 Then gys= m Else Gys=Gys(m,p)End If End Function12、在窗体模块中编写以下Sub过程和窗体Click事件过程:Private Sub suba(x As Integer,y As Integer)Dim t As Integert =x: x=y : y=tEnd SubPrivate Sub Form_Click()Dim a As Integer,b As Integera =10: b =20Call suba(a,b)Print a ;b;Call suba(b,a)Print a ;bEnd Sub当程序运行时,在窗体中单击鼠标左键,则程序的输出结果是 20 10 10 20 。13、以下程序的功能是:把当前目录下的顺序文件smtext1.txt的内容读入内存,并在文本框Text1中显示出来。请填空。Private Sub Command1_Click()