ImageVerifierCode 换一换
格式:DOCX , 页数:49 ,大小:183.25KB ,
资源ID:27915725      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/27915725.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(第三讲习题答案.docx)为本站会员(b****8)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

第三讲习题答案.docx

1、第三讲习题答案第三讲习题答案1. 从键盘输入三个数,判断它们能否构成三角形的三个边。如果能构成一个三角形,则计算三角形的面积,否则给出相应信息。Private Sub Command1_Click() Dim a As Integer Dim b As Integer Dim c As Integer Dim s As Single Dim area As Single a = InputBox(请输入第一条边的长度:) b = InputBox(请输入第二条边的长度:) c = InputBox(请输入第三条边的长度:) If (a + b c) And (a + c b) And (b +

2、 c a) Then s = (a + b + c) / 2 area = Sqr(s - a) * (s - b) * (s - c) MsgBox 能构成三角形 & Chr(13) & Chr(10) & 三角形面积是: & area Else MsgBox 不能构成三角形 End IfEnd Sub2. 编写程序,任意输入一个整数,判定该整数奇偶性。 Private Sub Command1_Click() Dim n As Integer n = InputBox(输入一个整数) If n Mod 2 = 0 Then Print 是偶数 Else Print 是奇数 End IfEn

3、d Sub3. 求一元二次方程的a*x2+b*x+c=0根. Private Sub Command1_Click() Dim a As Single Dim b As Single Dim c As Single Dim delta As Single Dim x1 As Single Dim x2 As Single a = InputBox(输入方程系数a:) b = InputBox(输入方程系数b:) c = InputBox(输入方程系数c:) delta = b * b - 4 * a * c If delta = 0 Then x1 = (-b + Sqr(delta) / (

4、2 * a) x2 = (-b - Sqr(delta) / (2 * a) MsgBox 方程的根为: & x1 & 和 & x2 Else MsgBox 方程没有根 End IfEnd Sub4. 编程求出S=1+(1+2)+(1+2+3)+(1+2+3+4+N)的值 (N的值由键盘输入)。Private Sub Command1_Click() Dim n As Integer Dim s As Long Dim i As Integer Dim p As Long n = InputBox(请输入N的值:) s = 0 p = 0 For i = 1 To n p = p + i s

5、= s + p Next MsgBox 和: & sEnd Sub5. 编写程序,输出100300间的所有素数。 Private Sub Command1_Click() Dim i As Integer Dim j As Integer Dim flag As Integer Dim line As Integer line = 1 For i = 100 To 300 flag = 1 For j = 2 To Sqr(i) If i Mod j = 0 Then flag = 0 Exit For End If Next j If flag = 1 Then Print i; ; If

6、line = 5 Then line = 0 Print End If line = line + 1 End If Next iEnd Sub6. 编写程序,求解鸡兔同笼问题。一个笼子中有鸡X只,兔Y只,每只鸡有2只脚,每只兔有4只脚。今知鸡和兔的总头数为H,总脚数为F。问笼中鸡和兔各若干? (H,F的值由键盘输入)Private Sub Command1_Click() Dim h As Integer Dim f As Integer Dim x As Integer Dim y As Integer h = Val(Text1.Text) f = Val(Text2.Text) For

7、 x = 1 To h y = h - x If 2 * x + 4 * y = f Then Text3.Text = x Text4.Text = y Exit For End If Next xEnd SubPrivate Sub Form_Load() Text1.Text = Text2.Text = Text3.Text = Text4.Text = End Sub7. 勾股定理中3个数的关系是:a2+b2=c2。编写程序,输出30以内满足上述关系的整数组合,例如3、4、5就是一个整数组合。 Private Sub Command1_Click() Dim a As Integer

8、 Dim b As Integer Dim c As Integer For a = 1 To 30 For b = 1 To 30 For c = 1 To 30 If (a * a + b * b = c * c) And (b a) Then Print a, b, c End If Next c Next b Next aEnd Sub8. 从键盘上输入10个整数,并放入一个一维数组中,然后将其前5个元素与后5个元素对换,即第1个元素与第10个元素互换,第2个元素与第9个元素互换第5个元素与第6个元素互换,。分别输出数组原来的各元素的值和对换后各元素的值。 Private Sub Co

9、mmand1_Click() Dim i As Integer Dim a(10) As Integer Dim temp As Integer For i = 1 To 10 a(i) = InputBox(请输入第 & i & 数) Next i For i = 1 To 10 Print a(i); ; Next i Print For i = 1 To 5 temp = a(i) a(i) = a(11 - i) a(11 - i) = temp Next i For i = 1 To 10 Print a(i); ; Next iEnd Sub9. 编程计算某学生奖学金的等级,以三门

10、课成绩(用户输入)为依据,评定标准如下:(1)一等奖,符合下列条件之一:(a)平均分大于95(b)有两门课100分,第三门课不低于80分(2)二等奖,符合下列条件之一:(a)平均分大于90分(b)有一门课100分,其他课程不低于75分(3)三等奖,各门课成绩均不低于70分Private Sub Command1_Click() Dim cj1 As Integer Dim cj2 As Integer Dim cj3 As Integer Dim avecj As Single cj1 = Val(Text1.Text) cj2 = Val(Text2.Text) cj3 = Val(Text

11、3.Text) avecj = (cj1 + cj2 + cj3) / 3 If (avecj 95) Or (cj1 = 100 And cj2 = 100 And cj3 = 80) Or (cj1 = 100 And cj3 = 100 And cj2 = 80) Or (cj3 = 100 And cj2 = 100 And cj1 = 80) Then Text4.Text = 一等奖 ElseIf (avecj 90) Or (cj1 = 100 And cj2 = 75 And cj3 = 75) Or (cj1 = 100 And cj3 = 75 And cj2 = 75)

12、Or (cj3 = 100 And cj2 = 75 And cj1 = 75) Then Text4.Text = 二等奖 ElseIf (cj1 = 70 And cj2 = 70 And cj3 = 70) Then Text4.Text = 三等奖 End IfEnd SubPrivate Sub Form_Load() Text1.Text = Text2.Text = Text3.Text = Text4.Text = End Sub10. 从键盘上输入10个无序数,去掉一个最大数和最小数,然后求其平均值。Private Sub Command1_Click() Dim i As

13、Integer Dim max As Integer Dim min As Integer Dim ave As Single Dim sum As Integer Dim a(10) As Integer For i = 1 To 10 a(i) = InputBox( 请输入第 & i & 个数) Next sum = a(1) max = a(1) min = a(1) For i = 2 To 10 If max a(i) Then min = a(i) sum = sum + a(i) Next i sum = sum - max - min ave = sum / 8 MsgBox

14、 平均值为: & aveEnd Sub11. 求下面第n个Fibonacel数,Fibonacel数定义如下:a) f(0)=0b) f(1)=1c) f(n)=f(n-1)+f(n-2) n=2Private Sub Command1_Click() Dim f() As Integer Dim i As Integer Dim n As Integer n = InputBox(请输入要输出多少项) ReDim f(n) f(0) = 0 f(1) = 1 For i = 2 To n - 1 f(i) = f(i - 1) + f(i - 2) Next i For i = 0 To n

15、 - 1 Print f(i); ; If (i + 1) Mod 5 = 0 Then Print Next iEnd Sub12. 100匹马驮100担货,大马一匹驮3担,中马一匹驮2担,小 马2匹驮一担,编程计算大、中、小马的数量。Private Sub Command1_Click() Dim bigh As Integer Dim midh As Integer Dim smallh As Integer For bigh = 1 To 33 For midh = 1 To 50 smallh = 100 - bigh - midh If bigh * 3 + midh * 2 +

16、smallh * 0.5 = 100 Then Print bigh, midh, smallh End If Next midh Next bighEnd Sub13. 有36块砖,共36人搬,男人一次搬4砖,女人一次搬3砖,小孩一次两人搬一块,求一次搬完且不可以空手,问男人,女人和小孩各需多少人?Private Sub Command1_Click() Dim man As Integer Dim woman As Integer Dim child As Integer For man = 1 To 9 For woman = 1 To 12 child = 36 - man - wom

17、an If man * 4 + woman * 3 + child * 0.5 = 36 Then Print man, woman, child End If Next woman Next manEnd Sub14. 编写猜数游戏程序,由计算机自动产生一个1,100的随机整数,用户输入猜数后由计算机自动比较,并通过消息框提示太大了或太小了等信息,共有5次猜数机会,如果在规定的次数内猜中,则消息框中显示猜中了等信息,如果5次都不对,则显示猜数失败等信息。Private Sub Command1_Click() Dim computer As Integer Dim user As Integ

18、er Dim i As Integer Randomize computer = Int(Rnd * 100) + 1 For i = 1 To 5 user = InputBox(请输入你猜的数) If user = computer Then MsgBox 你猜对了 Exit For Else If user computer Then MsgBox 猜错了,太大了,还有 & (5 - i) & 次机会 Else MsgBox 猜错了,太小了,还有 & (5 - i) & 次机会 End If End If Next i If i 5 Then MsgBox 猜数失败 End IfEnd

19、Sub15. 编程完成,从一堆一分,二分,五分的硬币中取出20枚,使其总值为60分,要求输出有多少种取法,及每一种取法的一分,二分,五分的个数.Private Sub Command1_Click() Dim yf As Integer 表示一分 Dim ef As Integer 表示二分 Dim wf As Integer 表示五分 Dim coun As Integer coun = 0 计数器 Print 一分, 二分, 五分 For yf = 1 To 20 For ef = 1 To 20 wf = 20 - yf - ef If yf + ef * 2 + wf * 5 = 60

20、 Then Print yf, ef, wf coun = coun + 1 End If Next ef Next yf Print 一共有 & coun & 种取法End Sub16. 随机生成20个100以内的正整数,将其中的奇数和偶数分两行显示在窗体上。Private Sub Command1_Click() Dim a(20) As Integer Dim i As Integer Randomize For i = 1 To 20 a(i) = Int(Rnd * 100) Next i 处理奇数 For i = 1 To 20 If a(i) Mod 2 = 1 Then Pri

21、nt a(i); ; Next i Print 处理偶数 For i = 1 To 20 If a(i) Mod 2 = 0 Then Print a(i); ; Next iEnd Sub17. 产生10个100以内的随机整数,将它们从大到小排序输出Private Sub Command1_Click() Dim i As Integer, j As Integer Dim a(10) As Integer Dim pos As Integer Dim temp As Integer Randomize For i = 1 To 10 a(i) = Int(Rnd * 100) 生成10个随

22、机数,并输出 Print a(i); ; Next i Print For i = 1 To 9 pos = i For j = i + 1 To 10 If a(pos) a(j) Then pos = j 找到最大数的位置,记录在pos中 Next j If pos i Then 交换最大数和当前第一个数的位置 temp = a(i) a(i) = a(pos) a(pos) = temp End If Next i For i = 1 To 10 Print a(i); ; 将结果输出显示 Next iEnd Sub18. 产生10个100以内的随机整数,求它们的和及平均值Private

23、 Sub Command1_Click() Dim i As Integer Dim a(10) As Integer Dim sum As Integer Dim ave As Single Randomize For i = 1 To 10 a(i) = Int(Rnd * 100) 生成10个随机数,并输出 Print a(i); ; Next i For i = 1 To 10 sum = sum + a(i) Next i ave = sum / 10 Print Print 和为: & sum Print 平均值: & aveEnd Sub19. 产生10个100以内的随机整数,求

24、它们的最大值和最小值Private Sub Command1_Click() Dim i As Integer Dim a(10) As Integer Dim max As Integer Dim min As Integer Randomize For i = 1 To 10 a(i) = Int(Rnd * 100) 生成10个随机数,并输出 Print a(i); ; Next i max = a(1) min = a(1) For i = 1 To 10 If max a(i) Then min = a(i) Next i Print Print 最大值: & max Print 最

25、小值: & minEnd Sub20. 产生10个100以内的随机整数,去掉一个最大值,去掉一个最小值,求平均值Private Sub Command1_Click() Dim i As Integer Dim max As Integer Dim min As Integer Dim ave As Single Dim sum As Integer Dim a(10) As Integer Randomize For i = 1 To 10 a(i) = Int(Rnd * 100) Print a(i); ; Next sum = a(1) max = a(1) min = a(1) Fo

26、r i = 2 To 10 If max a(i) Then min = a(i) sum = sum + a(i) Next i sum = sum - max - min ave = sum / 8 Print Print 平均值为: & aveEnd Sub21. 产生10个100以内的随机整数,统计其中偶数有多少个Private Sub Command1_Click() Dim a(10) As Integer Dim i As Integer Dim coun As Integer Randomize For i = 1 To 10 a(i) = Int(Rnd * 100) Pri

27、nt a(i); ; Next coun = 0 For i = 1 To 10 If a(i) Mod 2 = 0 Then coun = coun + 1 Next i Print Print 有 & coun & 个偶数End Sub22. 打印出所有的“水仙花数”,所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个“水仙花数”,因为153=1的三次方5的三次方3的三次方。Private Sub Command1_Click()方法一Dim i As IntegerDim s As StringDim a As IntegerDim b As Integer

28、Dim c As IntegerFor i = 100 To 999 s = LTrim(Str(i) a = Val(Left(s, 1) b = Val(Mid(s, 2, 1) c = Val(Right(s, 1) If a 3 + b 3 + c 3 = i Then Print i End IfNext iEnd SubPrivate Sub Command2_Click()方法二Dim i As IntegerDim s As StringDim a As IntegerDim b As IntegerDim c As IntegerFor i = 100 To 999 a =

29、i Mod 10 b = i 100 c = (i 10) Mod 10 If a 3 + b 3 + c 3 = i Then Print i End IfNext iEnd Sub23. 输入二个整数,计算它们的最大公约数和最小公倍数Private Sub Command1_Click() Dim m As Integer Dim n As Integer Dim d As Integer Dim m1 As Integer Dim n1 As Integer m = InputBox(请输入第一个数) n = InputBox(请输入第二个数) m1 = m n1 = n If m n Then d = m m = n

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1