VB学测操作题.doc_第1页
VB学测操作题.doc_第2页
VB学测操作题.doc_第3页
VB学测操作题.doc_第4页
VB学测操作题.doc_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

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

文档简介

(1)填空完成程序,使得当单击窗体后,Label1上显示100以内(含100)偶数之和。Private Sub Form_Click() Dim i As Integer 定义变量i Dim s As Integer 定义变量s,用于存放100以内(含100)偶数的和 s = 0 For i = 2 To 100 Step 2 s = s+i Next i Label1.Caption = Str(s)End Sub(2)完成程序,使得在Text1中输入圆的半径后,单击计算按钮,计算圆的周长,在Text2中显示出来。Private Sub Command1_Click() Const pi = 3.14 定义符号常量 Dim c As Single 定义周长c为单精度型 Dim r As Single 定义半径r为单精度型 r = Val( text1.text ) c = pi * 2*r text2.text = cEnd Sub(3)填空完成程序,计算s=1!+2!+3!+8!的值并在窗体上打印出结果。Private Sub Form_Click() Dim s As Single s变量用于存放计算结果 Dim p As Single Dim i As Integer 定义一个循环变量 给s赋初值 s = 0 给p赋初值 p = 1 For i = 1 To 8 p = p * i s = s+p Next i Print s=; sEnd Sub(4)完成程序,使得当单击窗体后,计算1+2+3+N500的N的最小值,并在文本框Text1中显示出来。Private Sub Form_Click() Dim s As Integer 变量s存放和 Dim n As Integer 为s赋初值 s = 0 为n赋初值 n = 0 Do n = n + 1 s = s + n Loop While s 60 Then Label1.Caption = 超重!不能参赛! Else Label1.Caption = 合格,可以参赛! Endif End Sub(6)填空完成程序,使得单击窗体后,计算出1+2+3+N500的N的最大值,并在文本框Text1中显示出来。Private Sub Form_Click() Dim s As Integer 变量s存放和 Dim n As Integer 为n赋初值 n = 0 为s赋初值 s = 0 Do While s 500 n = n + 1 s = s+n Loop Text1.Text = Str(n - 1)End Sub(7)这是一个显示评语程序,在文本框Text1中输入一个数后,单击评语按钮,在标签Label1显示评语。当输入一个小于60的数时,显示不及格;当输入一个大于等于60且小于85的数时,显示良好;当输入一个大于等于85的数时,显示优秀。Private Sub Command1_Click() Dim Cj As Single 定义变量Cj,值由文本框Text1读入 Cj = Val( text1.text ) If Cj = 60 And Cj = 85 Then Label1.Caption = 优秀 End IfEnd Sub(8)某公司2005年的总产值为2000万元,若总产值以每年5%的速度增长,多少年后总产值翻一倍?填空完成程序,使得当单击窗体后,在窗体上输出问题答案。Private Sub Form_Click() Dim p As Single 变量p保存年产值 Dim n As Integer 整型变量n为所求年数 P=2000 n = 0 Do While p 4000 p = p * ( 1+0.05 ) n = n+1 Loop Print n=; nEnd Sub(9)填空完成程序,使得当单击计算7!按钮后,Text1显示7!的值。Private Sub Command1_Click() Dim a As Integer Dim i As Integer a = 1 For i = 1 To 7 Step 1 a = a*i Next i Text1.Text = Str( a ) End Sub(10)填空完成程序,编程计算1-1/2+1/3-1/4+.+1/99-1/100,单击窗体后,在窗体上显示结果。Private Sub Form_Click() Dim s As Single Dim i As Integer s = 0 For i = 1 To 100 Step 1 If i Mod 2 0 Then s = s + 1 / i Else s = s - 1 / i End If Next i Print s=; sEnd Sub(11)填空完成程序,编程计算1+1/2+1/3+1/4.+1/99+1/100,单击窗体后,在窗体上显示结果。Private Sub Form_Click() Dim s As Single 定义变量s为单精度型 Dim i As Integer 定义循环变量 s = 0 For i = 1 To 100 Step 1 s = s + 1/i Next i Print s=; sEnd Sub(12)填空完成程序,使得单击显示按钮后,随机产生10个属于区间0,100)的自然数,并保存于数组a中。然后在窗体上显示这10个数的平均值。Private Sub Command1_Click() Dim a(9) As Integer Dim s As Single Dim i As Integer Me.Cls s = 0 Randomize For i = 0 To 9 Step 1 a(i) = Int(Rnd * 100) Print a(i) Next i For i = 0 To 9 s = s+a(i) Next i Print 这10个自然数的平均值=; s / 10End Sub(13)填空完成程序,使得当单击计算1+2+3+100按钮后,文本框Text1显示1+2+3+100的值。Private Sub Command1_Click() Dim a As Integer Dim i As Integer a = 0 For i = 1 To 100 Step 1 a = a+i Next i Text1.Text = Str( a )End Sub(14)填空完成程序,左键单击窗体时打印下面所示的图案。 * * * * Private Sub Form_Click() Dim i As Integer Dim j As Integer For i = 4 To 1 Step -1 For j = 1 To i Step 1 Print *; Next j print Next iEnd Sub(15)填空完成程序,问:鸡兔同笼,共有100条腿,40个头,问鸡有几只,兔有几只?单击窗体后,在窗体上显示结果。Private Sub Form_Click() Dim Ji As Integer Ji变量表示鸡的个数 Dim Tu As Integer Tu变量表示兔的个数 Dim Leg As Integer Leg变量表示腿数 For Ji = 1 To 40 Tu = 40-ji 计算腿数 Leg = Ji*2 + Tu * 4 如果腿正好100只,则打印。 If Leg = 100 Then Print 鸡=; Ji; 只, 兔=; Tu; 只 End If Next JiEnd Sub(16)完成程序,单击显示按钮,显示下面的图形:Private Sub Command1_Click() Dim i As Integer 定义i为整型变量 Dim j As Integer 定义j为整型变量 For i = 1 To 6 Step 1 For j = 1 To i Step 1 Print ; Next j Print Next iEnd Sub(17)填空完成程序,使得单击显示按钮时,Text1、Text2分别显示变量x、y的值。Private Sub Command1_Click() Dim x, y As Integer x = 10 y = 100 If x y Then 以下三条语句交换x,y的值 t = x x = y y = t End If Text1.Text = Str(x) Text2.Text = Str(y)End Sub(18)在横线处添加代码实现单击该按钮,窗体的背景色由原来的默认色变为红色(红:&HFF&)Private Sub Command1_Click() Form1.backcolor=&HFF&End Sub(19)填空完成程序,使得在Text1中输入一个数,单击判断按钮后,判断这个数是奇数还是偶数,并在Label1中显示奇数或偶数出来。Private Sub Command1_Click() Dim a As Single Dim b As Single 从Text1中读入这个数,并保存在变量a中 a = Val( text1.text ) b = a Mod 2 If b = 0 Then Label1.Caption = 偶数 Else Label1.Caption = 奇数 Endif End Sub(20)填空完成程序,使得单击显示按钮后,随机产生10个属于区间0,100)的自然数,并保存于数组a中,然后在窗体上显示这10个数中的最大值。Private Sub Command1_Click() Dim a(9) As Integer Dim max As Integer Dim i As Integer Me.Cls Print Randomize For i = 0 To 9 Step 1 a(i) = Int(Rnd * 100) Print a(i) Next i max = a(0) For i = 1 To 9 If max a(i) Then max = a(i) End If Next i Print 这10个自然数中的最大值=; Str( max )End Sub(21)完成程序:单击计算5!按钮后,Text1显示5!的值。Private Sub Command1_Click() Dim a As Integer Dim i As Integer a = 1 For i = 2 To 5 a = a*i Next _i_ Text1.Text = Str(a)End Sub(22)某公司每年的销售收入均比前一年增长10个百分点,按此速度,需要多少年可以实现销售收入翻两番(即4倍)的目标。填空完成程序,使得当单击窗体后,在窗体上输出问题答案。Private Sub Form_Click() Dim i As Single Dim s As Integer 设s为所求年数,定义为整型,结果由窗体输出 i = 1 s = 0 Do While i4 i = i*1.1 s=s+1 Loop Print s=; sEnd Sub(23)已知一元二次方程的二次项系数、一次项系数、常数项分别为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) If a 0 Then 判断a是否等于0 d = b*b-4*a*c If d = 0 Then 判断是否有实数根 x1 = (-b + Sqr(d) / (2 * a) x2 = (-b - Sqr(d) / (2 * a) Label1.Caption = Str(x1) Label2.Caption = Str(x2) Else Label3.Caption = 无实数根 End If End IfEnd Sub(24)完善下列程序,使得该程序能够实现在文本框1中输入一个三位正整数,在文本框2中输出这个3位数的各位数的和。a =Val(Text1.Text)s = 0For i = 1 To 3 s = s + a mod 10 a = a10Next iText2.Text = Str(s)(25)填空完成程序,打印如图所示的图案。*Private Sub Form_Click()Dim i As Integer 定义i为整型变量Dim j As Integer 定义j为整型变量For i = -2 To 2 For j = 1 To 3 - abs(i) Print *; Next j Print 换行Next i End Sub(26)请完善下面的程序段,使程序运行后能够显示如下图所示的数字金字塔。Dim i As Integer, j As IntegerFor j = 1 To 5 Print Tab(10 - j); For i = 1 To j Print Str(i); Next i PrintNext j(27)在窗体上画出如图两条相互垂直的线段,其中,线段a一端的坐标是(600,1300),长度为1600,b是a 的中垂线,长度为1000 (提供的样图与程序画出的图形可能不完全相同)。Private Sub Command1_Click() Line ( 600 , 1300 )-(2200, 1300) Line (1400, 300)-( 1400 , 1300)End Sub(28)填空完成程序,求 |X*X+1(X0)的值。(x的值在程序中调用InputBox函数,在弹出的标准输入对话框中输入)Private Sub Form_Click() Dim x As Single 定义x为为单精度型变量,由标准输入对话框输入 Dim y As Single 定义y为单精度型变量,值由窗体显示 x = val (InputBox(请输入变量x) If x Int(Sqr(k) Then Print k Exit For End IfNext kEnd Sub(31)当运行程序后,在标签中显示当前时间的数字时钟。Private Sub Form_Load() Timer1.Interval = 1000 Timer1.Enabled = TrueEnd SubPrivate Sub Timer1_timer() Label1.Caption = TimeEnd Sub(32)输入10个数,存放在数组中,并按输入的逆序输出在窗体上。Private Sub Command1_Click() Dim s(9) As Single For i = 0 To 9 s(i) = Val(InputBox(请输入一个数) Next i For i = 9 To 0 Step -1 Print s(i) Next iEnd Sub(33)编写递归函数求5!的值Public Function s(n As Integer) As LongIf n = 0 Thens = 1Elses = n * s(n - 1)End IfEnd FunctionPrivate Sub form_Click()Print s(5)=; s(5)End Sub(34)用递归法求斐波那契数列1,1,2,3,5,8,第10项的值。Public Function Fib(n As Integer) As Integer If (n = 1) Or (n = 2) Then Fib = 1 Else Fib = Fib(n - 1) + Fib(n - 2) End IfEnd FunctionPrivate Sub Command1_Click() Dim S As Integer S = Fib(10) Print S= & CStr(S)End Sub(35)在Text1中输入一个代表秒数的整数后,单击“计算”按钮后,在Llabel1、Label2、Llabel3、中显示对应的小时、分钟和秒数。如在Text1中输入3672,Label1、Label2、Label3中分别显示1、1、12,即1小时1分12秒。Private Sub Command1_Click() Dim h, m, s, ss As Integer ss = Val(Text1.Text) h = ss 3600 m = (ss - h * 3600) 60 s = (ss - h * 3600) Mod 60 Label1.Caption = CStr(h) Label2.Caption = CStr(m) Label3.Caption = CStr(s)End Sub(36)用穷举法找出所有的水仙花数。水仙花数是指一类三位数,其各个数位上数字的立方之和为该数。Private Sub Command1_Click() Dim i As Integer, a As Integer, b As Integer, c As Integer For i = 100 To 999 a = i 100 b = (i - a * 100) 10 c = i Mod 10 If a 3 + b 3 + c 3 = i Then Print i Next iEnd Sub(37)将数字进行加密,对应关系如下:明文:0123456789 密文:9876543210 完善程序实现在文本框text1中输入明文,在文本框text2中输出密文。Private Sub Command1_Click() Dim x As String, y As String Dim i As Integer Dim temp1 As String, temp2 As String x = Text1.Text y = For i = 1 To Len(Text1.Text) temp1 = Mid(x, i, 1) temp2 = 9 - temp1 y = y + temp2 Next i Text2.Text = yEnd Sub(38)从键盘上输入一个三位数,然后将它反向输出。Private Sub Command1_Click() Dim a As Integer, b As Integer Dim bai As Integer, shi As Integer Dim g As Integer a = Val(Text1.Text) bai = a 100 shi = (a - bai * 100) 10 g = a Mod 10 b = g * 100 + shi * 10 + bai Text2.Text = CStr(b)End Sub(39)单击显示按钮后,在窗体上显示如图99乘法表。Private Sub Command1_Click() Dim i As Integer Dim j As Integer For i = 1 To 9 Step 1 Print ; For j = 1 To 9 Print i * j; Print vbTab; Next j Print Next iEnd Sub(40)猴子吃桃,每天吃当天桃子的一半多一个,第十天只有一个,计算共有多少个Private Sub Form_Click() Dim i As Integer 定义天数变量Dim s As Integer s = 1 For i = 1 To 9 s = (s + 1) * 2 Next i Print s=; sEnd Sub(41)给出三角形的三边边长a,b,c,输出三角形面积。三角形面积公式:s=,其中q=(a+b+c)/2。Private Sub Command1_Click() Dim s As Single Dim q As Single Dim a As Single Dim b As Single Dim c As Single a = Val(InputBox(请输入边长a的值:) b = Val(InputBox(请输入边长b的值:) c = Val(InputBox(请输入边长c的值:) q = (a + b + c) / 2 s = Sqr(q * (q - a) * (q - b) * (q - c) Print sEnd Sub(42)输入S1,V1,V2,输出李明家与学校之间距离S2。Private Sub Command1_Click() Dim S1 As Single, S2 As Single Dim V1 As Single, V2 As Single Dim T As Single S1 = Val(InputBox(请输入王晓珊家离学校的距离:) V1 = Val(InputBox(请输入王晓珊步行速度:) V2 = Val(InputBox(请输入李明步行速度:) T = S1 / V1 S2 = V2 * T Print S2End Sub(43)一条长度为L的铁丝,制作成一个面积最大的矩形框。输入铁丝的长度L,输出矩形面积的最大值。Private Sub Command1_Click() Dim L As Integer Dim chang As Integer Dim kuai As Integer Dim s As Integer Dim smax As Integer smax = 0 L = InputBox(请输入一条铁丝的长度:) For chang = 1 To L 2 For kuai = 1 To L 2 - chang s = chang * kuai If s smax Then smax = s End If Next kuai Next chang Print smaxEnd Sub(44)小球从高处自由下落,每次弹起的高度是下落高度的70%,当小球弹起的高度不足原高度的千分之一时,小球停止跳动。输入小球起始高度HOME后,计算输出小球在整个弹跳中所经历的总路程S。Private Sub Command1_Click() Dim H As Single, L As Single Dim S As Single, Home As Single Home = Val(InputBox(请输入一个起始高度:) H = Home S = 0 Do L = 0.7 * H S = S + H + L H = L Loop While L = Home / 1000 Print SEnd Sub(45)用递归法求3!+5!+7!的值。Public Function Fac(a As Integer) As IntegerIf a = 1 Then Fac = 1Else Fac = a * Fac(a - 1)End IfEnd FunctionPrivate Sub Command1_Click() Dim S As Integer S = Fac(3) + Fac(5) + Fac(7) Print S= & CStr(S)End Sub(46)用选择排序法将数组a中的10个整数按升序排列。Private Sub Command1_Click() Dim a(10) As Integer For i = 1 To 10 a(i) = Int(Rnd * 1000) Next i For i = 1 To 10 For j = i+1 to 10 If a(i) a(j) Then a(0) = a(i) a(i) = a(j) a(j)=a(0) End If Next j Next i For i = 1 To 10 Print CStr(a(i) Next iEnd Sub(47)用递归法求1+2+3+100的值。Public Function S(n As Integer) As Integer If n = 1 Then S = 1 Else S = n + S(n - 1) End IfEnd FunctionPrivate Sub Command1_Click() Dim Sum As Integer Sum = S(100) Print Sum= & CStr(Sum)End Sub(48)计算22+42+62+N 1500 Print N= & CStr(N - 40)End Sub(49)判断文本框TEXT1中输入的数据,如果该数据满足条件;除以3余2,除以5余3,除以7余4,则输出在窗体上。Private Sub Command1_Click() x = Val(Text1.Text) If x Mod 3 = 2 Then If x Mod 5 = 3 Then If x Mod 7 = 4 Then Print x End If End If End IfEnd Sub(50)假设有一个5位数密码,只记得密码为678,其中百位和十位的数字记不清了,但知道该数据能被78整除,也能被67整除。Private Sub Command1_Click() Dim x As Long For x = 67008 To 67998 Step 10 If (x Mod 67 = 0) And (x Mod 78 = 0) Then Print x End If Next xEnd Sub(51)随机生成100个整数,统计偶数的个数。Dim a(100) As IntegerPrivate Sub Command1_Click() Dim total As Integer total = 0 For i = 1 To 100 If a(i) Mod 2 = 0 Then total = total + 1 End If Next i Print CStr(total)End SubPrivate Sub Form_Load() Randomize For i = 1 To 100 a(i) = Int(Rnd * 1000) Next iEnd Sub(52)从键盘上输入一个三位数,然后将它反向输出。例如输入123,输出结果为321。Private Sub Command1_Click() Dim a As Integer, b As Integer Dim bai As Integer, shi As Integer Dim g As Integer a = Val(Text1.Text) bai = a 100 shi = (a - bai * 100) 10 g = a Mod 10 b = g * 100 + shi * 10 + bai Text2.Text = CStr(b)End Sub(53)将一张100元面值的人民币换成5元、1元、5角面值的人民币,要求换成的零钱共100张,问各多少张,输出每种可能的组合。Private Sub Command1_Click() Dim Wuyuan As Integer Dim Yiyuan As Integer Dim Wujiao As Integer For Wuyuan = 1 To 20 For Yiyuan = 1 To 94 Wujiao = 100 - Wuyuan - Yiyuan If Wuyuan * 5 + Yiyuan * 1 + Wujiao * 0.5 = 100 Then Print Wuyuan= & Wuyuan & ,Yiyuan= & Yiyuan & ,Wujiao= & Wujiao End If Next Yiyuan Next WuyuanEnd Sub(54)在三个文本框中输入一元二次方程的三个系数后,单击命令按钮,求出该方程的解。Private Sub Command1_Click() Dim a, b, c, p As Single a = Val(Text1.Text) b = Val(Text2.Text) c = Val(Text3.Text) p = b * b - 4 * a * c If p = 0 Then X1 = (-b + Sqr(p) / (2 * a) X2 = (-b - Sqr(p) / (2 * a) Print X1=; X1 Print X2=; X2 Else Print 该方程无实数根 End IfEnd Sub(55)输入一个正整数到文本框text1中,如果是质数,就输出”yes”,否则输出”no”.Private Sub Command1_Click() Dim n, i As Long Dim yes As Boolean Let n = Val(Text1.Text) Let yes = True For i = 2 To n 2 If n Mod i = 0 Then Let yes = False End If Next i If yes Then Let Text2.Text = yes Else Let Text2.Text = no End IfEnd Sub(56)在Text1文本框中输入一个年号,判断它是否是闰年,并输出判断结果是闰年或不是闰年。判断闰年的算法是:如果此年号能被400除尽,则它是闰年,否则如果它能被4整除而不能被100整除,则它是闰年,否则它不是闰年。Private Sub Command1_Click() Dim year As Integer year = Val(InputBox(请输入年号:) If (year Mod 4 = 0) And (year Mod 100 0) Or (year Mod 400 = 0) Then Print 是闰年 Else Print 不是闰年 End IfEnd Sub(57)在文本框text1、text2、text3中输入3根小木棒的长度(假设都是整数),判断能否用它们搭成一个三角形,并把结果输出到文本框text4中。Private Sub Command1_Click() Dim a, b, c As Integer Let a = Val(Text1.Text) Let b = Val(Text2.Text) Let c = Val

温馨提示

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

评论

0/150

提交评论