VB程序填空题_第1页
VB程序填空题_第2页
VB程序填空题_第3页
VB程序填空题_第4页
VB程序填空题_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、1、下列程序的功能是从键盘上任意输入一个数,判断这个数是正数、负数、还是零,并输出判断结果。程序中有三处错误,请更正。程序如下:Private Sub Command1_Click() Dim a As Single Dim py As String a=Val(Text1) If a>0 Then py="正数" If a=0 Then py="零" If a<=0 Then py="负数" Label3.Caption=aEnd Sub_2、完善程序,使其能输出:1-2+3-4+5-6+.+99-100的值。程序如下:

2、Private Sub Command1_Click() s=_ For i=1 To _ s=s+(-1)(_)*i Next i Print sEnd Sub3、已知一元二次方程的二次项系数、一次项系数、常数项分别为a、b、c,其中a不等于0。编写程序,求方程的根,要求:如果方程无实数根,则输出“无实数根”,否则输出两个实数根。程序如下:Private Sub Command1_Click() Dim a,b,c,d As Single Dim x1,x2 As Single a=Val(Text1.Text) b=Val(Text2.Text) c=Val(Text3.Text) d=b

3、2-4*a*c If d_ Then x1=(-b+Sqr(d)/(2*a) x2=(-b-Sqr(d)/(2*a) Label1.Caption=x1 Label2.Caption=x2 _ Label3.Caption=_ End IfEnd Sub4、如果下面程序执行后输出的结果是132,请将程序补充完整:Private Sub Command1_Click()i = 12: s = 1Do While _s = s * ii = i - 1LoopMsgBox (s)END Sub5、下面的程序是求7!(7!=1*2*3.*6*7)的值,并在默认窗口输出这个值。程序中有两处错误,请更正

4、。Private Sub Command1_Click() Dim a As Single a=0 For i=1 to n a=a*i Next i Msgbox(a)End Sub_ _6、下面的程序是求100以内奇数和s的值(S=1+3+5+7.+99)。请将程序补充完整:Private Sub Command1_Click() Dim s As Single Dim i As Single S=_ For i=1 to 100 Step _ _ Next i Msgbox(s )End Sub7、下列Visual Basic 程序:Private Sub Command1_Click(

5、) Dim sum As Long , i As Integer sum = 0 For i = 1 To 100 Step 2 sum = sum + i * i Next i Text1.Text = Str(sum)End Sub 该程序能完成计算的数学表达式是_8、小明数了圈在一起的鸡和兔共有30个头,90只脚,在这个圈子中鸡和兔各有多少只?为了实现这一目标,完善下面的VB程序,在划线处填入合适的语句或表达式。 设鸡为x只,兔为y只,Visual Basic 程序如下: Private Sub Command1_Click() Const head = 30, foot = 90 Di

6、m x, y As Integer y =_ x =_ Text1.Text = Str(x) Text2.Text = Str(y)End Sub9、利用文本框输入一个正整数N,求出 2+3/2+4/3+5/4+(N+1)/N 程序是: Private Sub command1_click() Dim N, s, i As Integer s = 0 N = Val(Text1.Text) For i = _ To _ s = _ Next i Msgbox( _ )End Sub 10、编写一个计算矩形面积的Sub过程,然后调用该过程计算矩形面积。Private Sub Form_Clic

7、k()Dim A As Single, B As Single A = Val(InputBox("What is the length? ") B = Val(InputBox("What is the width? ")Call Recarea(A, B)End SubSub Recarea(Rlen As Single, Rwid As Single) Dim Area As Single Area = _ MsgBox "Total Area is " & _ '输出矩形面积End Sub11、用物理天平测量物

8、体的质量时,测得物体的质量为a克(a为整数,并小于1千克),问:这时在天平的砝码盘中应有哪几个砝码?请选用最少数量的砝码(称质量为1千克的物体,天平的砝码由下列质量的砝码组成:500克1个,200克1个,100克2个,50克1个,20克1个,10克2个,5克1个,2克2个,1克1个)。为了实现这一目标,请参照右边的流程图完善下面的VB程序,在划线处填入合适的语句或表达式,完成程序设计。Dim a(1 To 12) As IntegerDim i As Integer, x As IntegerPrivate Sub Command1_Click()a(1) = 500: a(2) = 200:

9、 a(3) = 100: a(4) = 100a(5) = 50: a(6) = 20: a(7) = 10: a(8) = 10a(9) = 5: a(10) = 2: a(11) = 2: a(12) = 1x = Val(Text1.Text)i = 1Do While _ If x >= a(i) Then List1.AddItem Str(a(i) _ End If i = i + 1LoopEnd Sub12、有一个单击按纽过程,其作用是产生50个60100的随机数,统计其中被6整除余2的个数,并将这些数输出。请补充下面的程序:Private Sub command1_cl

10、ick() Dim X, N As Integer Dim counter As Integer 'counter 用来保存能被6整除余2的数据的个数 Randomize Timer '随机数初始化,以时钟为随机数种子 For N = 1 To 50 X = _+ int(Rnd * 40) '随机产生50个60100的随机数 If X Mod 6 = 2 Then List1.AddItem Str(X) _ End If Next NPrint counterEnd Sub13、下面是一个检测密码的程序(界面如图74,其功能是:当用户输入的密码正确时,在窗体上显示“

11、欢迎您使用本系统”;否则显示“密码错误!请重新输入密码:”。正确的密码是0123456789。 仔细阅读程序,请问程序中划线处的语句应为_。Private Sub Form_Load() Text1.Text = "": Text1.MaxLength = 10 Text1.PasswordChar = "*" '表示密码用*显示 Label2.Caption = "": Label2.Alignment = 2End SubPrivate Sub Text1_KeyPress(KeyAscii As Integer) Lab

12、el2.Caption = "" If KeyAscii = 13 Then 'KeyAscii=13表示是回车键 If _ Then Label2.Caption = "欢迎您使用本系统!" Else Label2.Caption = _ '以下两语句的作用是使程序能自动选中错误的密码,使用户可直接重新输入 Text1.SelStart = 0 Text1.SelLength = Len(Text1.Text) End If End If End Sub14、猴子吃桃问题。猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个。

13、第二天早晨又将剩下的桃子吃了一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。到第十天早上再想吃时,见只剩一个桃子了。问:第一天猴子共摘了多少个桃子。为了实现这一目标,完善下面的VB程序,在划线处填入合适的语句或表达式,完成程序设计。Visual Basic 程序如下: Sub Command1_Click( ) Dim i, s As Integer _ For i=1 to 9 _ Next i Text1.Text = Str(s)End Sub15、下面程序(界面如图7-3)的功能是:将0到255之间的十进制整数转换为二进制整数的表示形式。在如图中上面的文本框(Text1)

14、中输入一个0到255之间的十进制整数,单击“转换”按钮,该十进制整数的二进制形式会显示在下面的文本框(Text2)中。为了实现这一目标,程序中划线处的语句应为_.Private Sub Command1_Click()Dim a As IntegerDim s As StringDim i As IntegerDim c(1 To 8) As Integera =val( Text1.Text)If a < 0 Or a > 255 Then Text2.Text = "输入数据错误,请重新输入!"Else For i = 1 To 8 c(i) = a Mod

15、 2 a = _ s = Str(c(i) + s Next i Text2.Text = sEnd IfEnd Sub16、个位数字是6,且能被3整除的3位数共有多少个?下面程序用于解决这一问题,在划线处填入合适的语句或表达式,设共有n个这样的数,Visual Basic程序如下:Sub Command1_Click()Dim i As Integer, n As Integerm = 106n = _Do While m <= 996 If _ Then n = n + 1 m = _LoopText1.Text = Str(n)End Sub17、求两个整数的最大公约数分析:求最大

16、公约数的算法思想:(1) 对于已知两数m,n,使得m>n;(2) m除以n得余数r;(3) 若r=0,则n为求得的最大公约数,算法结束;否则执行(4);(4) mn,nr,再重复执行(2)。例如: 求 m=14 ,n=6 的最大公约数. m n r14 6 26 2 0请根据以上思路补充下面的程序代码:Private Sub Command1_Click()m = InputBox("m=")n = InputBox("n=")If m < n Then t = m: m = n: n = tr = _Do While (r <>

17、 0)m = nn = rr = m Mod nLoopPrint "最大公约数=", nEnd Sub18、以下程序的功能是:从键盘上输入若干个学生的考试分数,统计并输出 最高分数和最低分数,当输入负数时结束输入,输出结果,请将程序补充完 整。 Private Sub Form_Click() Dim x, amax, amin As Single x = InputBox("Enter a score") amax = x amin = x Do While _ If x > amax Then amax = x End If If _ The

18、n amin = x End If x = InputBox("Enter a score") Loop Labe1.Text= amax Label2.Text=_ End Sub 19、从键盘键入一个整数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

19、 = Val(Text2.Text)If x > a(n) Then_Elsei = 1Do While x > a(i)_LoopEnd IfText3.Text = Str(i)End SubPrivate Sub Text1_KeyPress(KeyAscii As Integer)If KeyAscii = 13 Thenn = n + 1a(n) = Val(Text1.Text)List1.AddItem Str(a(n)Text1.Text = "": Text1.SetFocusEnd IfEnd Sub20、输入100个数,统计其中负数、零及正

20、数的个数。 Private Sub Form_Click() Dim i , fs, zs, ns As Integer fs, ns, zs分别代表负数、零及正数的个数 Dim k As Double For i = 1 To 100 k = Val(InputBox("输入一个数据") If k > 0 Then _ ElseIf k < 0 Then fs = fs + 1 Else _ End If Next i Print "负数、零及正数的个数分别是:" fs, ns, zsEnd Sub21、有一个数组DATA存放了N个数据,现

21、从中删除了一个元素,其余的元素依次向前递补(假设删除的是第3个元素,则要将第4个元素移到第3个元素处,第5个元素移到第4个元素处,以此类推),然后输出数组内容。填写程序中的空缺Private Sub Command1_Click()Dim data(10) As IntegerDim I, N, T As IntegerN = 10For I = 1 To N data(I) = I * 2Next IT = InputBox("删除第几个元素")For I = _data(I - 1) = data(I)Next I_For I = 1 To N Print data(I

22、);Next IEnd Sub22、寻找100以内的勾股数。“勾三股四弦五”大家都知道32+42=52,3,4,5就是勾股数,寻找100以内的勾股数。请完成下面的程序填空:Private Sub Command1_Click() Dim sum As Integer Dim i, j, k As Integer List1.Clear '假定k>j>i,可以避免重复寻找 sum = 0 For i = 1 To 100 For j = 1 To 100 For k = j To 100 If _ Then List1.AddItem (Str(i) + Str(j) + S

23、tr(k) sum = sum + 1 '统计个数 End If Next k Next j Next i Label1.Caption = "组数:" + Str(sum)End Sub 23、随机产生10个1100之间的正整数,按从小到大的次序排序并输出。为了实现这一目标,完善下面的VB程序,在划线处填入合适的语句或表达式,完成程序设计:Sub Command1_Click()Const n = 10Dim i As Integer, j As Integer, t As IntegerDim a(1 To 100) As IntegerFor i = 1 To

24、 10a(i) = 100 * Rnd(1) + iNext iFor i = 1 To n - 1 For j = i + 1 To n If _ Then k = a(i): a(i) = a(j): a(j) = k End IfNext jNext iFor i = 1 To 10 List1.AddItem Str(a(i)Next iEnd Sub24、有30个人,其中有男人、女人和小孩。他们在一家饭馆里花去500元。已知,每个男人花30元,每个女人花20元,每个小孩花10元。问:男人、女人、小孩各为多少人。为了实现这一目标,完善下面的VB程序,在划线处填入合适的语句或表达式,完成

25、程序设计。Private Sub Command1_Click()Dim man As Integer, woman As Integer, child As IntegerFor man = 1 To 15 For woman = 1 To 23 child = _ s = 30 * man + 20 * woman + 10 * child If _ Then List1.AddItem Str(man) + "" + Str(woman) + "" + Str(child) End If Next woman Next manEnd Sub25、在

26、我国古代孙子算经中曾经提出这样一个问题。原文是这样的:“今有物,不知其数,三三数之,剩二;五五数之,剩三;七七数之,剩二;问物几何?”试用枚举法来解决这一问题。现分析如下,所寻找之数为满足如下条件的自然数:以3除余2,以5除余3,以7除余2,程序将从自然数1开始依次寻找,逐一判断某一自然数是否满足全部条件,直至在指定范围内找到满足条件的所有自然数。程序代码如下,请补充完整: Private Sub Command1_Click() Dim sum As Integer 'sum用来统计符合条件的自然数个数 Dim n, max As Integer List1.Clear sum = 0 max = _ '指定查找范围的最大自然数,在text1框中输入 n = 0 Do While n <= max n = n + 1 '从自然数1开始不断往上寻找 If _ Then List1.AddItem Str(n) '找到后在list1中显示结果 _ End If Loop List1.AddItem ("

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论