vb编程题答案_第1页
vb编程题答案_第2页
vb编程题答案_第3页
vb编程题答案_第4页
vb编程题答案_第5页
已阅读5页,还剩15页未读, 继续免费阅读

下载本文档

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

文档简介

(1)选择结构 (2)循环结构(3)数组 (4)过程 1. 输入 3 个数,输出最大的数 2. 有一元二次方程:aX 2+bX+c=0,依次输入 a,b,c,判断此方程是否有实根 详细代码如下: Private Sub Command1_Click() Dim a As Integer Dim b As Integer Dim c As Integer a = InputBox(“a“) b = InputBox(“b“) c = InputBox(“c“) If (b * b - 4 * a * c) = 0 Then Print “Yes“; Else Print “No“ End If End Sub 3. 输入一个百分制的成绩,若大于等于 60,则用消息框弹出,显示“恭喜!成绩通过! ”,若小于 60,则弹出消息框,显示“抱歉!成绩没有通过!” 4. 输入一年份,判断它是否为闰年,并显示有关信息。 (判断闰年的条件是:年份能被 4 整除但不能被 100 整除,或者能被 400 整除) 代码如下: Private Sub Command1_Click() Dim y% y = InputBox(“请输入年数“) If y Mod 4 = 0 And y Mod 100 = 260000000 n = n + 1 k = 130000000 * (1 + 0.008) n Loop Print n End If Next i End Sub Public Function IsSuShu(ByVal n As Integer) As Boolean Dim result As Boolean result = True For i = 2 To n - 1 If n Mod i = 0 Then result = False End If Next i IsSuShu = result End Function 16. 百元买百鸡问题。假定小鸡每只 5 角,公鸡每只 2 元,母鸡每只 3 元,编程求解购鸡 方案。 代码如下: Private Sub Command1_Click() For x = 1 To 100 For y = 1 To 100 For z = 1 To 100 If (x + y + z) = 100 And (0.5 * x + 2 * y + 3 * z) = 100 Then Print x, y, z End If Next z Next y Next x End Sub 17. 编程求斐波那契数列前 11 项。 (斐波那契数列:F(0)=f(1)=1, F(n)=F(n-1)+F(n-2) n=2 ) 18. 将输入的字符串以反序显示,例如:输“ASDFGT” ,显示“TGFDSA” Private Sub Form_Click() Dim a As String Dim b As Integer Dim c As String Dim n As Integer a = InputBox(“) n = Len(a) For b = 1 To Int(n 2) c = Mid(a, b, 1) Mid(a, b, 1) = Mid(a, n - b + 1, 1) Mid(a, n - b + 1, 1) = c Next b Print a End Sub 19. 随机产生 10 个30,100内的整数,求最大值及所对应的下标 Private Sub Form_Click() Dim a(1 To 10) As Integer, i%, maxa%, m% For i = 1 To 10 a(i) = Int(Rnd * 70) + 30 Next i maxa = a(1) For i = 2 To 10 If a(i) a(1) Then maxa = a(i): m = i End If Next i For i = 1 To 10 Print a(i); Next i Print “最大值=“ “它的下标为“ Next i Print Print “max=“; amax, “min=“; amin, “avera=“; avera / 10 End Sub 21. 随机产生 10 个30,100内的整数,求最小值及所对应的下标。 Private Sub Form_Click() Dim a(1 To 10) As Integer, i%, mina%, m% For i = 1 To 10 a(i) = Int(Rnd * 70) + 30 Next i mina = a(1) For i = 2 To 10 If a(i) a(1) Then mina = a(i): m = i ElseIf a(i) = a(1) Then mina = a(i): m = i End If Next i For i = 1 To 10 Print a(i); Next i Print “最小值为“ “它的下标为“ a(I, j); Next j Next I s = a(0, 0) + a(1, 1) + a(2, 2) + a(3, 3) + a(3, 0) + a(2, 1) + a(1, 2) + a(0, 3) Print ; “和为“; s; End Sub 24. 25. 已知有序数组 a(),编程插入 x(x 的值为 14) 。数组 a 中的元素分别为 12,6,4,89,75,63,100 ,20,31 。 26. 编写一函数,计算 Double 类型一维数组所有元素的平均值。 代码如下: Private Function fsum (x() As Double ,n As Interger) As Double Dim I As Integer For i=1 to n fsum = fsum + x (i) Next i fsum = fsum / n End Function 27. 用函数过程求表达式 1+1/2+1/3+1/4+1/n 的和. 代码如下: Public Function sum(ByVal n As Integer) As Double result = 0 For I = 1 To n result = result + 1 / I Next I sum = result End Function 28. 编一子过程 ProcMin,求一维数组 a 中的最小值,子过程的形参自己确定。 代码如下: Sub ProcMin(b(), min) Dim i% min = b(LBound(b) For i = LBound(b) + 1 To UBound(b) If b(i) min Then min = b(i) Next i End Sub 29. 编一个函数,求一维数组 a 中的最大值,函数的形参自己确定。 30. 编写一个过程计算并输出区间100,1000 内所有素数的和 (要求判断素数使用过程(函 数或子过程)来实现。调用该过程。(提示:只能被 1 和自身整除的自然数称为素数。) 代码如下: Private Sub Command1_Click() Dim sum As Long sum = 0 For i = 100 To 1000 If IsSuShu(i) = True Then sum = sum + i End If Next i Print “sum=“; sum End Sub Public Function IsSuSh

温馨提示

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

评论

0/150

提交评论