《2022年Vb专题习题 .pdf》由会员分享,可在线阅读,更多相关《2022年Vb专题习题 .pdf(30页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、VB 专题习题1 / 30Vb专题习题一、选择题1. 将数学表达式写成 Visual Basic表达式,正确的是()(A)Sqr(abs(b*b-4ac) (B)Sqr(absb*2-4*a*c) (C)Sqr(abs(b*b-4*a*c)(D)Sqrabs(b*b-4*a*c) 2. 在 Visual Basic中,若要将窗体中某个命令按钮设置成无效状态,应对该按钮的()属性值进行修改。(A)Value (B)Visible (C)Enabled (D)Caption 3. 执行如下 Visual Basic程序段时,出现了如下图所示的错误:Private Sub Command1_Clic
2、k() Dim a As Integer, b As Integer a = 5: b = 8 b = a + b label1.Caption = Str(b) End Sub 引发此错误的语句可能为()(A)Dim a As Integer, b As Integer (B)a = 5: b = 8 (C)b = a + b (D)label1.Caption = Str(b) 4. 已知 a=5,b=9,c=11,则下列Visual Basic表达式的值为False 的是()(A)a b And a c(B)a c (C)a c b 5. 有下列 Visual Basic程序段:某同学正
3、编写一个判断两数大小的程序,其窗体和代码窗口如下图所示:名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 30 页 - - - - - - - - - VB 专题习题2 / 30根据代码窗口中的程序,要在程序运行时判断两数的大小,窗体上必须增加的对象是()(A)标签 Text1 (B)文本框Text2 (C)命令按钮Command1 (D)文本框Print 若程序要实现“求 100内能被 3整数的自然数个数” 的功能,则方框中正确的语句是 ()(A)i / 3 = 0 (B
4、)i mod 3 = 0 (C)i 3 = 0 (D)int(i/3) = 0 6. 有如下 Visual Basic程序段:Private Sub Command1_Click() Dim a As Integer a = Int(5 * Rnd + 1) * Int(5 * Rnd - 1) Print a End Sub 执行程序后,a的值范围是()(A)0 ,15 (B) 1,15 (C) 4,15 (D) 5,15 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共
5、 30 页 - - - - - - - - - VB 专题习题3 / 307.在 Visual Basic中,表达式3 2 Mod 14 2 3的值是()(A)1 (B)0 (C)2 (D)3 8. 某同学正编写一个判断两数大小的程序,其窗体和代码窗口如下图所示:根据代码窗口中的程序,要在程序运行时判断两数的大小,窗体上必须增加的对象是()(A)标签 Text1 (B)文本框Text2 (C)命令按钮Command1 (D)文本框 Print 9. 下列 Visual Basic 程序段中,能实现输出变量a、b、c 三个数中最大数的是()10、有如下 Visual Basic程序段:名师资料总
6、结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 30 页 - - - - - - - - - VB 专题习题4 / 30 x = 3 y =5 Text1.Text = x+y 该程序运行后,要文本框Text1 中显示的是()(A)3+5 (B)x+y (C)8 (D)3+5=8 11.在 Visual Basic中,下列表达式的值为5 的是()(A)Int(Sqr(9) + 1.28) (B)(19 2) Mod 5 (C)Abs(-7) + Sqr(4) (D)Len(x+y+
7、2) 12.在 Visual Basic中,下列语句定义的数组元素为10 个的是()(A)Dim a(0 To 10) As Integer (B)Dim b(1 To 9) As String (C)Dim c(2 To 10) As Boolean (D)Dim d(0 To 9) As Date 13.某 Visual Basic工程的代码窗口如图所示:从图中可以看出,当前正在编辑的是()A. Command1的 Click事件过程代码B. Timer1的 Timer 事件过程代码C. Label1的 Click事件过程代码 D. Image1的 Click事件过程代码14. 在 Vis
8、ual Basic中,下列能作为变量名的是()A. My B. If C. a+y D. 2nd名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 30 页 - - - - - - - - - VB 专题习题5 / 3015. 已知字符 AZ的 ASCII 码值分别对应6590。小明编写了一个在标签Label1 上显示 26 个英文大写字母“ABCDE XYZ ”的 VB程序。部分程序如下:a = For i = 65 To 90 Next i Label1.Caption
9、= a 方框中正确的语句是()A. a = a + Str(i) B. a = a + Chr(i) C. a = a + Int(i) D. a = a + ASC(i) 16. a = a + b b = a - b a = a - b 功能相同的程序段是()A. a = b b = a B. a = a + b a = a - b b = a - b C. t = a a = b b = t D. IF a b THEN a = b ELSE b = a END IF 17. 在 Visual Basic中,表达式 Abs( 3.6) * Sqr(100)的值是()A. 36 B. 36
10、0 C. 36 D. 360 18. 某同学正编写一个判断酒驾行为的Visual Basic程序,其窗体和代码窗口如下图所示。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 30 页 - - - - - - - - - VB 专题习题6 / 30根据代码窗口中的程序,要在程序运行时获取输入的x 值,窗体上必须增加的对象是()A. 标签 Text1 B. 标签 Label2 C. 文本框 Text1 D. 文本框 Label2 19. 某 Visual Basic程序如下:
11、Private Sub Command1_Click() Dim i As Integer, sum As Integer sum = 0 For i = 10 To 2 Step -2 sum = sum + i Next i text1.Text = Str(sum) End Sub 运行程序,单击命令按钮Command1 后弹出如图所示的出错信息提示,此时程序正执行的语句是()名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 30 页 - - - - - - - -
12、- VB 专题习题7 / 30(A)sum=0 (B)For i=10 to 2 step -2 (C)Sum=sum+i (D)Text1.text=str(sum) 20.有如下 Visual Basic程序段: s=0 For i=1 To 5 s=s+i Next i 该程序运行后,i 的值为()(A)1 (B)5 (C)6 (D)15 21.在 Visual Basic中,某对象的属性窗口如图所示:该对象名是()(A) CommandButton (B) Command1 (C) Command_1 (D) Appearance 名师资料总结 - - -精品资料欢迎下载 - - -
13、- - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 7 页,共 30 页 - - - - - - - - - VB 专题习题8 / 3022. 有如下 Visual Basic程序段:j = 10 For i = 1 To 9 If a(i) a(j) Then j = i Next i 该程序运行后,变量a(j )中存储的是(A)a(1) 至 a(10) 中的最大值(B)a(1) 至 a(10) 中的最小值(C)a(1) 至 a(10) 的累加值(D)从 1 计数至 9 23. 某 Visual Basic程序的一个事件过程如下:Priv
14、ate Sub Command1_Click() Dim r As Single Dim pi As Double r = 100 pi = 3.14 Label1.Caption = 圆面积为 : + Val(pi * r * r) End Sub 运行程序,单击命令按钮Command1 后弹出如图所示的出错信息提示,引起该错误的语句因是()A.Dim r As Integer B.Dim pi As Double C.Pi=3.14 D.Label1.Caption = 圆面积为 : + Val(pi * r * r) 24.有如下 Visual Basic程序段:s = 0 For i
15、= 1 To 10 Step 4 s = s + i Next i 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 8 页,共 30 页 - - - - - - - - - VB 专题习题9 / 30该程序运行后,变量s 的值是 () (A)0 (B)1 (C)5 (D)15 25. 下列 Visual Basic表达式的值等于56 的是() (A)Mid(123456,5,3) (B)Len(55+1) (C)Sqr(56) (D)Abs(-55)+1 26.27.名师资料总结 -
16、 - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 9 页,共 30 页 - - - - - - - - - VB 专题习题10 / 3028.小金编写了一个统计随机数分布的VB程序,部分程序如下所示,在调试程序的时候出现如右图所示的错误信息:n = 0 m = 0 For i = 1 To 100 If Rnd 05 Then n = n + 1 Else m = m + 1 Next i 小金仔细分析该程序段后,发现其中缺少了( ) A. For B. Next C. End If D. If 29
17、.有如下 VB程序:Private Sub Command1_Click() Dim a As Integer, b As Integer, c As Integer a = Val(text1.Text) b = Val(text2.Text) c = (a + b + Abs(a - b) 3 Text3.Text = Str(c) End Sub 运行该程序,分别在文本框Text1 、Text2 中输入5、9,单击命令按钮Command1 后,文本框 Text3 中显示的内容是()A.6 B.5 C.4 D.7 30. 如右图所示的VB程序中,输入以下程序代码,运行后单击命令按钮Comm
18、and1 ,出现错误的提示图是:()Private Sub Command1_Click() Dim a(1 To 4) As Integer Dim i As Integer a(1) = 1 For i = 2 To 4 a(i) = 2 * a(i - 1) + 1 Next i List1.AddItem Str(a(i) End Sub 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 10 页,共 30 页 - - - - - - - - - VB 专题习题11 / 30A
19、BCD31.若 x 表示能被 3 整除的正整数,则下面逻辑表达式的值一定为真的是:()A. Int(x / 3) = 0 B. 3 Mod x = 0 C. x Mod 3 = 0 D. x3 = 0 32. 、为使下面左右框内的VB程序段实现相同的功能,则左框内划线处填写的代码应该是() 。33. VB 表达式 S=Int (Rnd()*1000+9000 ) ,则 S的取值范围是() A.,100009000|RSSS B. ,100009000|ZSSS C.,100009000|RSSS D. ,100009000|ZSSS34. 下表记录了6 个数据的排序过程。分析表中数据可知,该排
20、序采用的算法与排序方式分别为()原 始 数65 57 59 44 45 69 第 1 遍44 65 57 59 45 69 第 2 遍44 45 65 57 59 69 第 3 遍44 45 57 65 59 69 A A.t=2 BB.t=6 C.t=t+1 DD.t=t+2 s=0 For t=1 To 6 Step 2 s=s+t Next t s=0:t= 0 Do While t=6 s=s+t Loop 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 11 页,共 30
21、页 - - - - - - - - - VB 专题习题12 / 30 A 冒泡排序,升序 B选择排序,升序 C 冒泡排序,降序 D选择排序,降序35. 阶乘是基斯顿卡曼于1808 年发明的运算符号。正整数n 的阶乘为n!=123n。小王编写了如下VB程序用来求S=1!+2!+3!+10! 。 Function fac(n As Integer) As Long fac = 1 For i = 1 To n fac = fac * i Next i End Function Private Sub Command1_Click() Dim s As Long, j As Integer For
22、j = 1 To 10 Next j Text1.Text = Str(s) End Sub 方框中的正确语句是:As = s + fac(j) Bs = fac(j) Cs = s + i * fac(i) Ds = s + fac(i) 36. 下列逻辑表达式中,值为False 的是()AAsc(A) Asc(a) BInt( Rnd * 49 ) 49 C3+4 9 Dthirty two 37. 有 100 个大小形状一样的透明玻璃球,其中有1 个玻璃球的重量轻于其他99 个玻璃球,小明想利用一台无砝码的天平,运用合理的算法保证一定能找出这颗轻玻璃球的最少的次数为:A100 B10 C
23、8 D6 38. 下列 VB程序中, f 是一个递归函数:Private Sub Command1_Click() Dim y As Integer y = Val(Text1.Text) Label1.Caption = Str(f(y) End Sub Function f(n As Integer) As Integer 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 12 页,共 30 页 - - - - - - - - - VB 专题习题13 / 30 If (n = 1)
24、 Or (n = 2) Then f = 1 Else f = f(n - 1) + f(n - 2) End If End Function 程序运行时, 在文本框中输入8,单击命令按钮Command1 后,Label1 中显示的内容是:A5 B 8 C13 D21 39. 用选择排序将七个数“2022,2017,2018,2014,2021,2012,2015”从小到大进行排序,则第二轮交换数据后的顺序是()A2022,2021,2018,2017,2014,2012,2015 B2012,2014,2018,2017,2021,2022,2015 C2012,2017,2018,2014
25、,2021,2022,2015 D2022,2021,2018,2014,2017,2012,2015 40. 某高校学籍管理系统软件有2 万个学生的电子档案(已按学籍号排序),假设从中取出一条记录并与待查项进行比较所花时间为8 毫秒,则用对分法在该系统中查找任意一位学生档案最多花费的时间约为()A16 万毫秒 B8 万毫秒 C10 毫秒 D120 毫秒41. 已知 temp1=“12” , temp2=3,则 Visual Basic 表达式 temp1+temp2 的值为( B )A.“15” B.15 C.“123” D.123 B 二、程序填空题(学考部分)1. 编写一个具有下列功能的
26、VB程序:单击“分类” 按钮 Command1 ,随机产生10 个10 ,99 区间中的整数,并将其中3 的倍数显示在List1中,余下的数显示在List2中。运行界面如图所示。(1)要使命令按钮Command1 上显示的文本为“分类” ,可在其属性窗口中将属性的属性值改为“分类”。(2)为实现上述功能,请在划线处填写合适的代码。Private Sub Command1_Click() List1.Clear List2.Clear Dim a(1 To 10) As Integer For i = 1 To 10 a(i) = If Then 名师资料总结 - - -精品资料欢迎下载 - -
27、 - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 13 页,共 30 页 - - - - - - - - - VB 专题习题14 / 30 List1.AddItem Str(a(i) Else End If Next i End Sub 2. 小丁想买几张6+1 彩票,选号时, 他希望前 4 位用自己的生日:11 月 8 日,即 1108,特别号码他选了买彩票日子的个位数5,并且他希望前六个数字组成的数能被他的幸运数字9 整除。他的好朋友小杰帮他设计了一个VB 程序,可以提供一份符合这些要求的号码清单供他挑选。相应的界面如第12
28、题图 -1 所示。阅读程序并完成后面的问题。(1)设计应用程序界面时,为添加a 所指向的对象,应使用图所示的“控件工具箱”中的(填写相应编号) ; 在第 14 题-3 图所示的“属性窗口” 中,将属名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 14 页,共 30 页 - - - - - - - - - VB 专题习题15 / 30性值设置为“开始” ,可使 2 中 b 所指向的对象显示“开始”。(2)请根据题意将下列程序补充完整。Private Sub Command1_Click
29、() Dim i as integer, j as integer, c As Integer Dim n As Long c = 0 For i = 0 To 99 n = 110800 + i If Then List1.AddItem Str(n) + + 5 End If Next i Label2.Caption = 满足条件的数有: + Str(c) + 组 End Sub 3. 小李想用 vb 制作一个分钟倒计时器,界面如图所示。 先在文本框text1中输入分钟数,然后在文本框text2中输入秒钟数,再点击“开始倒计时”按钮开始倒计时。Vb 程序如下: Private Sub C
30、ommand1_Click() Timer1.Enabled = End Sub Private Sub Timer1_Timer() sec = Val(Text2.Text) min = Val(Text1.Text) If sec 0 Then 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 15 页,共 30 页 - - - - - - - - - VB 专题习题16 / 30 sec = sec - 1 Else sec = 59 If min 0 Then min = m
31、in - 1 Else Text1 = 0 Text2 = 0 MsgBox 倒计时时间到 End If End If Text1 = min Text2 = sec End Sub (1)程序中处应该填。 (选填: True/False) (2)计时器 timer1的 inteval属性应该设置为。4. 小沈很久没登录自己的电子邮箱了,这次他想给远方的朋友发封电子邮件,但是密码忘记了,请你帮她尽可能找回密码。她零星记得自己的密码信息如下:共八位字符,前两位为字母“zj ” ,后六位是数字,并以66 开头(即密码格式为zj66*) ;最后两位数字相同;后六位数能被16 和 46 同时整除。单击
32、“找回密码”按钮(Command1 )后,可能的密码显示在列表框List1中。Private Sub Command1_Click() Dim s As Long , a As Integer, b As Integer, c As Integer, i As Integer For i = 0 To 9999 第 14 题图名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 16 页,共 30 页 - - - - - - - - - VB 专题习题17 / 30 s = 660000
33、+ i If And s Mod 46 = 0 Then (选填字母,从下列A、B 、C、D四个选项中选取一项) a = s Mod 10 b = (s Mod 100) 10 If Then (选填字母,从下列A、B 、C、D四个选项中选取一项) List1.AddItem (zj + Str(s) c = (填程序代码) End If End If Next i Label1.Caption = 共有 + Str(c) + 个 End Sub (1)解决此问题的算法是_。 (选填:枚举算法/ 解析算法 / 查找算法)(2)程序中划线处应填入_;程序中划线处应填入_。划线、处的选项:() A
34、 s Mod 16 = 0 Bs 16 = 0 Ca b Da = b (3)程序中划线处应填入的代码_ 。5. 小兰设计了一个 “猜价格” 小游戏, 用户在 Text1 中输入所猜的价格,单击“猜一猜”按钮,如果偏高了, Label4 标签中将提示 “对不起, 偏高了!” ;若所猜的价格偏低, 则 Label4标签中将提示“对不起,偏低了!” ;若猜中,则Label4 标签中将显示“恭喜你,猜对啦!” 。界面如图所示。(1)应用程序界面设计时,为添加“请输入您猜的价格:”对象,应使用图所示的“控件工具箱”中的(填写相应字母) ,并在图所示的“属性窗口”中,将属性图Form1 Label1 L
35、abel2 Label4 Text1 Command1 Label3 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 17 页,共 30 页 - - - - - - - - - VB 专题习题18 / 30值设置为“请输入您猜的价格:” 。(2)解决此问题的相应程序如下,请根据题意将程序补充完整。Private Sub Command1_Click() Dim g As Integer Dim p As Integer p = 99 预设价格的值存储到p 变量中g = If g p
36、Then = 对不起,偏高了! ElseIf g p Then Label4.Caption = 对不起,偏低了! Else Label4.Caption = 恭喜你,猜对啦! End Sub 6.十进制数转二进制数程序界面如第14 题-1 图所示,相关VB程序运行时,单击命令按钮 Command1 后,执行十进制数转二进制数并输出显示的程序。(1)应用程序界面设计。转换得到的二进制数将显示在Label3 中,请根据第14 题-3图提供信息,确定使用第14 题-2 图控件工具箱中的(填写相应编号) ,修改属性的值为 1010。图图名师资料总结 - - -精品资料欢迎下载 - - - - - -
37、 - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 18 页,共 30 页 - - - - - - - - - VB 专题习题19 / 30第 14 题-1 图第 14 题-2 图第 14 题-3 图(2)解决此问题的相应程序如下,请根据相应注释及题意将程序补充完整。Private Sub Command1_Click() 不停除 2 到商为 0 为止,所得余数倒推 Dim sjzs As Integer sjzs :十进制数 Dim rjzs As String rjzs :二进制数 sjzs = Val(Text1.Text) rjzs = Do
38、 While rjzs = Str(sjzs Mod 2) + rjzs Label3.Caption = rjzs End Sub 7.以下 VB程序段的功能是用DO语句求 11000 之间满足 “用 3 除余 2, 用 5 除余 3,用7 除余 2”的数。并将结果在list1中列出,并在label1处显示符合条件的数的个数。(1)程序中处应填入的代码是_ (2)程序运行结束后,变量i 的值为 _ Private Sub Command1_Click() Dim i As Integer Dim j As Integer i = 1: j = 0 list1.clear Do While i
39、 100 then Y=12 _(1)_ x60 then Y=8 Else y=5 _(2)_ 该程序段中, (1) 处填写的内容为_(2) 处填写的内容为_。9. 用 VB软件编写判断闰年的年份。界面如第 11 题- 图 1 所示,文本框 Text1 输入年份,单击“判断” 按钮 Command1 ,在文本框 Text2 中输出判断结果 (闰年的判断条件是:能被 4 整除但是不能被100 整除;或者能被四百整除)。第 11 题 - 图 1 (1)应用程序界面设计时,Text1文本框内没有内容显示,这是由于将其属性名为_ 的值设置为空,窗口显示“闰年判断”是将窗体属性名为_ 的值设置成了“闰
40、年判断”。 (1 分,1 分)(2)请根据题意将下列程序补充完整。(2 分)Private Sub Command1_Click() Dim Year As Integer _ If (Year Mod 4 = 0) And (Year Mod 100 0) Or (Year Mod 400 = 0) Then Text2.Text = 是闰年 Label1 Label2 Text1 Text2 Command1 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 20 页,共 30 页
41、 - - - - - - - - - VB 专题习题21 / 30 Else Text2.Text = 不是闰年 End If End Sub 为实现上述功能,程序加框处应填写为_ 10. 编写 VB程序,实现如下功能:在文本框Text1 中输入骑士奔跑的速度值(为1 到10 之间的整数),单击“奔跑”按钮Command1 ,骑士以相应的速度从左往右循环奔跑,单击“停止”按钮Command2 ,骑士停止奔跑。界面如第14 题-1 图所示。(1)在设计应用程序界面时,应使用第 14 题-2 图所示 “控件工具箱” 中的(填写相应编号)添加用于输入文字“加减速(1 到 10) ”的控件。(2)为实
42、现上述功能,请在划线处填入合适代码。 Private Sub Command1_Click() Dim x As Integer x = If (x 0) And (x = 10) Then Timer1.Enabled = Timer1.Interval = 1000 x Else Text1.Text = 错误 End Sub 三、程序填空题(选考部分)1.【加试题】编写VB程序,在如第16 题-1 图所示 11 的正方形区域内产生一定数量、位置随机的点坐标,统计位于0.5 0.5 的黑色区域内(包括边界)点的数量。程序运行时界面如第16 题-2 图所示。第 14 题-1 图第 14 题-
43、2 图名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 21 页,共 30 页 - - - - - - - - - VB 专题习题22 / 30自上而下两个文本框的名称分别是Text1 和 Text2 , “开始”按钮的名称是Command1 。在 Text1 中输入数据,单击“开始”按钮,在Text2中显示统计结果。“开始”按钮单击事件处理过程的流程图如右图所示。请根据流程图将下列程序补充完整。 Private Sub Command1_Click( ) Dim n As Integ
44、er, m As Integer, i As Integer Dim x As Single, y As Single n = m=0 Randomize 初始化 Rnd函数 For i = 1 To n x = Rnd 随机产生x 坐标, 0 x1 y = Rnd 随机产生y 坐标, 0y1 Next i Text2.Text = Str(m) End Sub 2.【加试题】求孪生素数。孪生素数是指两个相邻奇数且都是素数,由于它们是最近的素数,就像孪生兄弟一样。下列Visual Basic程序用于查找100 以内的所有孪生素数,其中函数f 用于判断一个数是否是素数,程序运行界面如图( 第 1
45、7 题-1 图) 所示, Command1鼠标单击事件过程的流程图如图( 第 17 题-2 图) 所示。第 16 题-1 图第 16 题-2 图第 16 题-3 图名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 22 页,共 30 页 - - - - - - - - - VB 专题习题23 / 30程序代码如下:Private Sub Command1_Click() Dim i As Integer List1.Clear 清除列表框内容 For i = 3 To 97 _ If
46、f(i) And Then List1.AddItem Str(i) + 和 + Str(i + 2) End If Next i End Sub Private Function f(x As Integer) As Boolean 自定义函数f, 返回值为逻辑型 Dim j As Integer f = True For j = 2 To Int(Sqr(x) If x Mod j = 0 Then f = 函数返回值 Exit For 跳出 For 循环 End If Next j End Function (1) 程序中加框部分的算法是(选填:解析算法/ 枚举算法) (2 分) (2)
47、 在程序、划线处,填入适当的语句或表达式,把程序补充完整:第 17 题-1 图第 17 题-2 图名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 23 页,共 30 页 - - - - - - - - - VB 专题习题24 / 30程序中划线处应填入 (1分) 程序中划线处应填入 (1分) 程序中划线处应填入 (1分) 3. 小王设计了一个程序来列举仁川亚运会奖牌前三的国家。下列VB 程序实现如下功能:单击命令按钮Command1 后,在列表框 List1中按奖牌数由多到少显示国家
48、名称,如图。请根据算法将下列程序补充完整。Dim a(1 To 45) As String Dim b(1 To 45) As Integer Private Sub Form_Load() a(1) = 中国 b(1) = 308 45 个代表团名称及奖牌数分别放在a(1) 到 a(45) 及 b(1) 到 b(45) 中End Sub Private Sub Command1_Click() Dim i As Integer,j As Integer Dim t As Integer,f As Integer List1.Clear For i = 1 To 3 For j = To i+
49、1 Step -1 If Then f = a(j): a(j) = a(j - 1): a(j - 1) = f t = b(j): b(j) = b(j - 1): b(j - 1) = t End If Next j Next i For i = 1 To 3 List1.AddItem 第 + Str(i) + 名 + a(i) + 奖牌数 + Str(b(i) Next i End Sub 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 24 页,共 30 页 - - -
50、- - - - - - VB 专题习题25 / 304. 加试题 王五为学生们设计了学校食堂学生校园卡查询系统,在终端机上输入学生的校园卡卡号,可以查出该卡对应的学生姓名及相应的余额。校园卡信息存储在一个综合的数据库“school.mdb ”, 其中的“ Yue”数据表用来存储学生的校园卡基本信息,包括学号(num ) 、姓名( name ) 、余额( money ), 括号内的为对应字段名。下列VB程序用来实现根据学号查询并显示学生姓名及余额,运行界面如下图所示:数据库文件与应用程序在同一文件夹中, 在文本框Text1中输入学生的学号,单击“查询”按钮,在标签Label4 、Label5 中