VB程序设计 习题及答案第5章 循环结构程序设计.doc

上传人:wux****ua 文档编号:7835548 上传时间:2020-03-24 格式:DOC 页数:14 大小:187KB
返回 下载 相关 举报
VB程序设计 习题及答案第5章 循环结构程序设计.doc_第1页
第1页 / 共14页
VB程序设计 习题及答案第5章 循环结构程序设计.doc_第2页
第2页 / 共14页
VB程序设计 习题及答案第5章 循环结构程序设计.doc_第3页
第3页 / 共14页
点击查看更多>>
资源描述
第5章 循环结构程序设计51 试编程序,打印出自然数1到20的立方数。【参考答案】程序代码设计Private Sub Form_Click() Form1.Print x, x2 For x = 1 To 20 Form1.Print x, x 2 Next xEnd SubPrivate Sub Form_Load() Form1.AutoRedraw = True Form1.Print 打印自然数1到20的立方数 Form1.Print 单击窗体开始End Sub图5-1 程序运行结果程序运行结果如图5-1所示:52 试编程序,打印出1到500之间所有偶数的和。【参考答案】程序代码设计Private Sub Command1_Click() Sum = 0 For k = 1 To 500 If k Mod 2 = 0 Then Sum = Sum + k Next k Form1.Print 1到500的偶数和为:; SumEnd SubPrivate Sub Form_Load() Form1.AutoRedraw = True Form1.Print Form1.Print 打印1到500之间所有偶数的和 Form1.Print图5-2 程序运行结果End Sub程序运行结果如图5-2所示:53 试编写打印下面图案的源程序。 * * * * * * * * * * * * * * *【参考答案】程序代码设计Private Sub Command1_Click() For i = 1 To 5 Form1.Print Tab(5 + i); For j = i To 5 Form1.Print *; Next j Form1.Print Next iEnd Sub程序运行结果如图5-3所示:图5-3 程序运行结果54 试编写打印下面图案的源程序。 * * * * * * * * * * * * * * * * * * * * * * * * *【参考答案】程序代码设计Private Sub Command1_Click() For i = 1 To 4 Form1.Print Tab(10 - i); For j = 1 To 2 * i - 1 Form1.Print *; Next j Form1.Print Next i For k = 3 To 1 Step -1 Form1.Print Tab(10 - k); For j = 1 To 2 * k - 1 Form1.Print *; Next j Form1.Print图5-4 程序运行结果 Next kEnd Sub程序运行结果如图5-4所示:55 编写程序,计算下面表达式的值(1)1!+3!+5!+(2N+1)!【参考答案】程序代码设计Private Sub Command1_Click() n = Val(InputBox(请输入N值) Sum = 1 term = 1 For k = 3 To 2 * n + 1 Step 2 term = term * (k - 1) * k Sum = Sum + term Next k Form1.Print 1!+3!+5!+(2N+1)!=; Sum图5-5(1)程序运行结果End SubPrivate Sub Form_Load() Form1.AutoRedraw = True Form1.Print 计算1!+3!+5!+(2N+1)!End Sub运行结果:若n输入的值为5,则程序运行结果如图5-5(1)所示。(2)1+X/2!+X2/4!+X3/6!+XN/(2N)!【参考答案】程序代码设计Private Sub Command1_Click() x = Val(InputBox(请输入x值) n = Val(InputBox(请输入N值) Sum = 1 t1 = 1 t2 = 1 For k = 2 To 2 * n Step 2 t1 = t1 * x t2 = t2 * (k - 1) * k Sum = Sum + t1 / t2 Next k Form1.Print 1+X/2!+X2/4!+XN/(2N)!=; SumEnd SubPrivate Sub Form_Load() Form1.AutoRedraw = True Form1.Print 计算1+X/2!+X2/4!+XN/(2N)!End Sub运行结果:图5-5(2)程序运行结果若x输入值为:1.5,n输入值为:5,则程序运行结果如图5-5(2)所示。(3)1+13+135+13(2N+1)【参考答案】程序代码设计Private Sub Command1_Click() n = Val(InputBox(请输入N值) Sum = 1 term = 1 For k = 3 To 2 * n + 1 Step 2 term = term * k Sum = Sum + term Next k Form1.Print 1+13+135+13(2N+1)=; SumEnd SubPrivate Sub Form_Load() Form1.AutoRedraw = True Form1.Print 计算1+13+135+13(2N+1)End Sub运行结果:若n输入值为5,则程序运行结果如图5-5(3)所示:图5-5(3)程序运行结果(4)x-x3/3!+x5/5!-x7/7!+【参考答案】程序代码设计Private Sub Command1_Click() x = Val(InputBox(请输入x值) Sum = x t1 = x t2 = 1 f = 1 k = 1 While (t1 / t2 0.0001) k = k + 2 t1 = t1 * x * x t2 = t2 * (k - 1) * k图5-5(4)程序运行结果 f = f * (-1) Sum = Sum + f * t1 / t2 Wend Form1.Print x-x3/3!+x5/5!-x7/7!+=; SumEnd SubPrivate Sub Form_Load() Form1.AutoRedraw = True Form1.Print 计算x-x3/3!+x5/5!-x7/7!+End Sub运行结果:若x输入值为:1.5, 则程序运行结果如图5-5(4)所示:(5)1+1/2+1/3+1/N (1/N 0.0001) Sum = Sum + 1 / k k = k + 1 Wend Form1.Print 1+1/2+1/3+1/N=; SumEnd SubPrivate Sub Form_Load() Form1.AutoRedraw = True Form1.Print 计算1+1/2+1/3+1/N Form1.Print 单击窗体开始End Sub程序运行结果如图5-5(5)所示:图5-5(5)程序运行结果5.6 由随机函数产生10道一位整数与两位整数相加的加法题,产生的加法题依次显示在屏幕上,每产生一道题后,由用户输入答案,如果答案正确,记10分;如果答案错误,允许第二次输入答案,第二次输入答案正确,记5分,错误记0分。最后给出总得分。【参考答案】程序代码设计Private Sub Form_Click() s = 0 For i = 1 To 10 a = Int(10 * Rnd) b = Int(10 + 90 * Rnd) str1$ = 第 & i & 题 & a & + & b c = Val(InputBox(str1$ & 第一次回答) If a + b = c Then s = s + 10 str2$ = str1$ & 10分 Else c = Val(InputBox(str1$ & 第二次回答) If a + b = c Then s = s + 5 str2$ = str1$ & 5分 Else str2$ = str1$ & 0分 End If End If Form1.Print str2$ Next i Form1.Print 总分; sEnd SubPrivate Sub Form_Load() Form1.AutoRedraw = True Form1.Print 加法题,第一次回答正确10分, Form1.Print 第二次回答正确5分 Form1.Print 单击窗体开始End Sub图5-6 程序运行结果程序运行结果如图5-6所示:5.7 编写计算还贷款年限的程序,从贷款的第三年开始还贷,贷款年利按复利计算。贷款额10万元,年利率7%,每年还款数3万元,要求输出经过多少年才能还清贷款,以及最后一年的还款数。【参考答案】程序代码设计Private Sub Form_Click() Dim p As Single p = 10 r = 0.07 n = 0 While (p 0) p = p * (1 + r) n = n + 1 If n = 3 Then p = p - 3 Wend Form1.Print 还清贷款时间 & n; 年 Form1.Print 最后一年的还款数 & (3 + p) & 万End SubPrivate Sub Form_Load() Form1.AutoRedraw = True Form1.Print 贷款额10万元,年利率7% Form1.Print 计算还贷数据 Form1.Print 单击窗体开始End Sub图5-7 程序运行结果程序运行结果如图5-7所示:5.8 输入三角形的三条边A、B、C,根据A、B、C的数值判断三角形的性质,并给出如下信息:(1)等边三角形;(2)等腰三角形;(3)任意三角形;(4)不能构成三角形。【参考答案】(1)用户界面设计(2)控件属性设置(略)(3)程序代码设计Private Sub Command1_Click() a = Val(Text1.Text) b = Val(Text2.Text) c = Val(Text3.Text) If (a = b And b = c) Then str1 = 等边三角形 ElseIf (a = b Or b = c Or c = a) Then str1 = 等腰三角形 ElseIf (a + b = c Or b + c = a Or c + a n Then u = m: v = n Else v = m: u = n End If Do r = u Mod v u = v: v = r Loop Until r = 0 m = m / u: n = n / u Label2.Caption = 化简后分子 & m & , 分母 & nEnd Sub程序运行结果如图5-10所示:图5-10 程序运行结果511 幼儿园的小朋友分吃一堆糖果。第一天吃了一半,又吃了一颗;第二天,同样吃了剩下的一半,又多吃了一颗。到第十天一看,只剩一颗糖果。问原来共有多少颗糖果。【参考答案】程序代码设计Private Sub Form_Click() num = 1 For k = 9 To 1 Step -1 num = (num + 1) * 2 Next k Form1.Print 糖果数为; numEnd SubPrivate Sub Form_Load() Form1.AutoRedraw = True Form1.Print 计算糖果数 Form1.Print 单击窗体开始End Sub程序运行结果如图5-11所示:图5-11 程序运行结果512 求解方程X3+Y3-Z3=3,其中X、Y、Z均为正整数,且X、Y、Z均1,同时X、Y、Z均6。【参考答案】程序代码设计Private Sub Form_Click() For x = 1 To 6 For y = 1 To 6 For z = 1 To 6 If x 3 + y 3 - z 3 = 3 Then Form1.Print x; y; z End If Next z Next y Next xEnd Sub图5-12程序运行结果Private Sub Form_Load() Form1.AutoRedraw = True Form1.Print 解方程X3+Y3-Z3=3 Form1.Print 单击窗体开始End Sub程序运行结果如图5-12所示:513 36块砖,36人搬,男搬4、女搬3、两个小儿抬一砖,要求一次全搬完,问男、女、小儿需若干?方程:x+y+z=36 4*x+3+y+z/2=36【参考答案】程序代码设计Private Sub Form_Click() For x = 1 To 36 For y = 1 To 36 For z = 1 To 36 If x + y + z = 36 And 4 * x + 3 * y + z / 2 = 36 Then Form1.Print x; y; z End If Next z Next y Next xEnd SubPrivate Sub Form_Load() Form1.AutoRedraw = True Form1.Print 男、女、小儿需若干 Form1.Print 单击窗体开始图5-13程序运行结果End Sub程序运行结果如图5-13所示:514 打印出3100之间的所有素数(质数)。【参考答案】程序代码设计Private Sub Form_Click() k = 0 For n = 3 To 100 For i = 2 To n - 1 If n Mod i = 0 Then Exit For Next i If i n - 1 Then k = k + 1: Print Format(n, ); If k = 5 Then k = 0: Print Next nEnd Sub图5-14程序运行结果Private Sub Form_Load() Form1.AutoRedraw = True Form1.Print 打印出3-100之间的所有素数 Form1.Print 单击窗体开始End Sub程序运行结果如图5-14所示:515 验证哥德巴赫猜想:“任何一个大于6的偶数,均可以表示为两个素数之和”,从键盘输入一个大于6的偶数后,打印出所有的分解结果。【参考答案】程序代码设计Private Sub Form_Click() n = Val(InputBox(输入一个大于6的偶数) If n = 6 Or n Mod 2 0 Then Form1.Print 数据错误 Else For m1 = 2 To n / 2 m2 = n - m1 f = 0 For i = 2 To m1 - 1 If m1 Mod i = 0 Then f = 1: Exit For Next i For i = 2 To m2 - 1 If m2 Mod i = 0 Or f = 1 Then f = 1: Exit For Next i If f = 0 Then Print m1; m2 Next m1 End IfEnd SubPrivate Sub Form_Load() Form1.AutoRedraw = True Form1.Print 打印两个素数之和 Form1.Print 单击窗体开始End Sub运行结果:若输入值为:100,则程序运行结果如图5-15所示:图5-15程序运行结果
展开阅读全文
相关资源
相关搜索

当前位置:首页 > 图纸专区 > 考试试卷


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!