VB填空题.doc
第一套1.有如下程序段:x=5y=6p=Not(x+y=11)该程序段运行后,P的值是 (1)。2. 有如下程序段:x=5y=10z=12if x+y<=z Or y+z<=x Or x+z<=y then a=" False" else a=" True"该程序段运行后,a 的值为(1) 。3. 有如下程序段:s=0for i=1 to 5 s=s+i*inext i 该程序段运行后,s的值为(1)。4. 程序填空随机产生10个1100之间的正整数,按从小到大的次序排序并输出。为了实现这一目标,完善下面的VB程序,在划线处填入合适的语句或表达式,完成程序设计(流程图参见图12-3)。 图12-3sub command1_click() const n=10 dim i,j,t as integer dim a(1 to 10) as integer for i=1 to 10 _(1)_next iFor i = 1 To n - 1 For j = i+1 To n If _(2)_ Then k = a(i): a(i) = a(j): a(j) = k End If Next jNext iFor i = 1 To n List1.AddItem Str(a(i)Next iEnd sub答案:1.False2.”True”3.554.a(i)=int(rnd()*100)+1 a(i)>a(j)第二套1有如下程序段: x=5y=6t=xx=yy=t该程序段运行后,y的值为 (1) 。2有如下程序段:x=5y=-20if not x>0 then x=y-3 else y=x+3该程序段运行后,x 的值为 (1)。3有如下程序段:e=0:f=1for i=1 to 3 e=e+f f=f+enext i 该程序段运行后,f的值为 (1)。4程序填空有30个人,其中有男人、女人和小孩。他们在一家饭馆里花去500元。已知,每个男人花30元,每个女人花20元,每个小孩花10元。问男人、女人、小孩各为多少人?为了实现这一目标,完善下面的VB程序,在划线处填入合适的语句或表达式,完成程序设计。sub command1_click() dim man,woman,child,s as integer for man =1 to 15 for woman =1 to 23 child = _(1)_ s=30* man+20* woman+ 10*childif _ (2) thenlist1.additem str(man)+" "+ str(woman)+" "+ str(child) end if next woman next man end sub 图12-7答案:1 52 53 134 30-woman-man s=500 and child>0第三套1. 有如下程序段:x=5y=6x=yy=x该程序段运行后,y的值为(1) 。2. 有如下程序段:x=5y=-20if not x>0 then x=y-3 else y=x+3该程序段运行后,y 的值为(1)。3. 有如下程序段:k=1for i=1 to 5 k=k*inext i 该程序段运行后,k的值为(1) 。4. 程序填空从键盘键入一个整数x,将x插入到一列有序数据:-5,3,4,12,20,45,70中,并使数据序列仍保持有序,试求出x应插入的位置。为了实现这一目标,完善下面的VB程序,在划线处填入合适的语句或表达式,完成程序设计。Dim a(1 To 8) As IntegerDim n, I, j, x As IntegerPrivate Sub Command1_Click()x = Val(Text2.Text)If x > a(n) Then _(1)_Else i = 1 Do While x > a(i) _(2)_ LoopEnd IfText3.Text = Str(i)End SubPrivate Sub Text1_KeyPress(KeyAscii As Integer)If KeyAscii = 13 Then n = n + 1 a(n) = Val(Text1.Text) List1.AddItem Str(a(n) Text1.Text = "": Text1.SetFocusEnd IfEnd Sub答案:1 62 83 1204 i=8 或i=n+1 i=i+15第四套1有如下程序段: x=5y=6p=Not(x+y<>11)该程序段运行后,P的值是(1)。2有如下程序段:x = 5y = 10z = 12If x + y > z And y + z > x And x + z > y Then a = "True " Else a = "False "该程序段运行后,a 的值为(1) 。3有如下程序段:x=6k=1do while k<=5 k=k+3 x=x+kloop该程序段运行后,x的值为(1) 。4程序填空用物理天平测量物体的质量时,测得物体的质量为a克(a为整数,并小于千克),问这时在天平的砝码盘中应有哪几个砝码,请选用最少数量的砝码(称质量为千克的物体,天平的砝码由下列质量的砝码组成:克个,克个,克个,克个,克1个,克个,克个,克个,克个)。为了实现这一目标,完善下面的VB程序,在划线处填入合适的语句或表达式,完成程序设计(流程图见图12-15)。Dim a(1 To 12) As IntegerDim i, x As IntegerPrivate Sub Command1_Click() a(1)=500:a(2)=200: a(3)=100a(4)=100:a(5)=50: a(6)=20a(7)=10: a(8)=10:a(9)=5 a(10)=2:a(11)=2:a(12)=1x = Val(Text1.Text)i=1do while _(1)_ if x>=a(i) thenList1.AddItem Str(a(i) _(2)_ End if i=i+1loopEnd Sub1. True2. “True”3. 174. x<>0 x=x-a(i)第五套1有如下Visual Basic程序段: a = 3 : b = 2 : c = 3b = a+b*c 该程序段运行后,变量b的值为 (1) 2有如下Visual Basic程序段:a=39b=93If a+b>100 Then py="太大"If a+b=100 Then py="相等"If a+b<100 Then py="太小"Label1.Caption=py该程序段运行时,在Label1标签上显示的是 (1) 。3以下Visual Basic程序的功能是: 计算表达式1+2+4+8+16+32+1024的值,并在文本框Text1中输出结果。为了实现这一功能,程序中划线处的表达式应更正为_(1)_。Private Sub Command1_Click()Dim i As Integer,s As Longs = 0i = 1Do While i <= 1024 s = s + 2*i i = i * 2LoopText1.Text=Str(s)End Sub4有一道趣味题,张老师问李老师:"你今年几岁?你爱人今年几岁?"李老师笑笑说:"我年龄的平方与我爱人年龄之和恰好等于1053。而我爱人年龄的平方与我的年龄之和却等于873。你计算一下吧!" 设李老师年龄为x岁,他爱人年龄为y岁,由题意可得x,y满足的数学式为:x2 + y = 1053 x + y2 = 873 解决此问题的流程图如VB-1所示。根据流程图VB-1编写的Visual Basic程序如下,在(1)和(1)划线处,填入合适的语句或表达式,把程序补充完整。Private Sub Command1_Click()Dim x As Integer, y As Longx = 1 y = 1053 - x * xDo While (1) (2) y = 1053 - x * xLoopText1.Text = Str(x)Text2.Text = Str(y)End Sub程序中划线处(1)应填入 程序中划线处(2)应填入 答案:1 92 太大3 i4 y *y+x<>873 x=x+1第六套1有如下Visual Basic程序段: a = "Happy" b = "ness" c = a + b 该程序段运行后,变量c的值是_(1)_。2有如下Visual Basic程序段:Dim x As Single, c As Stringx=Val(Text1.Text)If x>12 Then c= "PM"Else c= "AM"End IfLabel1.Caption=c该程序段运行时,在文本框Text1中输入15.6,Label1标签上将显示的是 (1) 。3下列Visual Basic程序的功能是:计算表达式12+42+72+972的值,并在文本框T