1、VB例程序复习试题参考程序:1. 编写程序,求下面级数前n项的和S,以此作为数*/12的近似值,要求末项的绝对值小于0.00001,计算并输出和数S。(其中表示幂运算) 0.82247 */12 = 1-1/(2*2)+1/(3*3)-1/(4*4)+(-1)(n-1)/(n*n)+ Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim n As Integer, q, s As Double n = 1 q = 1 s =
2、1 Do While q = 0.00001 n = n + 1 q = 1 / (n * n) s = s + (-1) (n - 1) * q Loop MsgBox(s)End Sub3. 有一个数列,其前三项分别为1,2,3,从第四项开始,每项均为其相邻的前三项之和的1/2,问:该数列从第几项开始,其数值超过1000。 32 Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click Dim a1, a2, a3, a4 As Do
3、uble, n As Integer a1 = 1 a2 = 2 a3 = 3 n = 3 Do a4 = (a1 + a2 + a3) / 2 n = n + 1 a1 = a2 a2 = a3 a3 = a4 Loop Until a4 1000 MsgBox(n) End Sub1.编写程序,计算并输出所有6位正整数中同时能被13和20整除的数的个数n及它们的立方根的和。 3462 275112.3125 Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handle
4、s Button3.Click Dim i, n As Integer, s As Double n = 0 s = 0 For i = 100000 To 999999 If i Mod 13 = 0 And i Mod 20 = 0 Then n = n + 1 s = s + i (1 / 3) End If Next MsgBox(个数为: + Str(n) + vbCrLf + 立方根之和为: + Str(s) End Sub一、 编写程序,求级数(1!,2!,3!,4!.5!.)中偶数项的部分和为ES,在求和时,以第一个大于9999偶数项为末项,计算并输出部分和ES与求和所用到的偶
5、数项的总项数。 ES = 2!+4!+6!+Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim n As Integer, q, s As Double n = 2 q = 2 s = q Do While q = i Then b = b * a(i, j) (1/ 3) Next s = s + vbCrLf Next s = s + 主对角线以上各元素值的立方根之积为: + Format(b, 0,000.00) Ms
6、gBox(s) End Sub 4.编写程序,建立一个 4 6 的二维数组(数据自定或由程序随机产生),求各行最大元素之和。 Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click 编写程序,建立一个 4 6 的二维数组(数据自定或由程序随机产生),求各行最大元素之和。 Dim a(3, 5) As Integer Dim i, j, ms, m As Integer Dim s As String s = 源数组为: + vbCrLf
7、 For i = 0 To 3 For j = 0 To 5 a(i, j) = Int(Rnd() * 100) s = s + Str(a(i, j) + Space(6 - Len(Str(a(i, j) Next s = s + vbCrLf Next ms = 0 For i = 0 To 3 m = -1 For j = 0 To 5 If a(i, j) m Then m = a(i, j) Next ms = ms + m Next s = s + 各行最大元素之和为: + Str(ms) MsgBox(s) End Sub 1.编写程序,自己产生一个二维数组A(5 ,5),计
8、算数组中每一行数据的平均值,对该数组增加1列,将求出的行平均值存于该行最后1列。 Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click编写程序,自己产生一个二维数组A(5 ,5),计算数组中每一行数据的平均值,对该数组增加1列,将求出的行平均值存于该行最后1列。 Dim a(5, 5) As Integer Dim i, j, k As Integer Dim s As String s = 源数组为: + vbCrLf For i
9、= 0 To 5 For j = 0 To 5 a(i, j) = Int(Rnd() * 100) s = s + Str(a(i, j) + Space(6 - Len(Str(a(i, j) Next s = s + vbCrLf Next ReDim Preserve a(5, 6) For i = 0 To 5 a(i, 6) = 0 For j = 0 To 5 a(i, 6) = a(i, 6) + a(i, j) Next a(i, 6) = a(i, 6)/6 Next s = s + 计算后数组: + vbCrLf For i = 0 To 5 For j = 0 To 6
10、 s = s + Str(a(i, j) + Space(6 - Len(Str(a(i, j) Next s = s + vbCrLf Next MsgBox(s) End Sub2.编写程序,建立一个 6 6 的二维数组(数据自定或由程序随机产生),输出数组中的最大元素,并统计最大元素所在行的所有元素之乘积。 Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click 编写程序,建立一个 6 6 的二维数组(数据自定或由程序随机产生),
11、 输出数组中的最大元素,并统计最大元素所在行的所有元素之乘积。 Dim a(5, 5) As Integer Dim i, j, m, mi As Integer Dim mm As Double Dim s As String s = 源数组为: + vbCrLf For i = 0 To 5 For j = 0 To 5 a(i, j) = Int(Rnd() * 100) s = s + Str(a(i, j) + Space(6 - Len(Str(a(i, j) Next s = s + vbCrLf Next m = -1 For i = 0 To 5 For j = 0 To 5
12、 If a(i, j) m Then m = a(i, j) mi = i End If Next Next s = s + 最大元素为: + Str(m) + vbCrLf mm = 1 For j = 0 To 5 mm = mm * a(mi, j) Next s = s + 所在行的所有元素之乘积为: + Format(mm, 0.00) MsgBox(s)End Sub3.为99的二维数组a(9,9)部分元素进行赋值,所在位置的值为所在行号与列号的乘积,生成九九乘法表。Dim i, j As Integer Dim str1 As String = Dim a(9, 9) As In
13、teger For i = 1 To 9 For j = 1 To 9 a(i, j) = i * j str1 = str1 + Str(a(i, j)+ Space(5 - Len(Str(a(i, j) Next str1 = str1 + vbCrLf Next TextBox1.Text = str1 For i = 1 To 9 For j = 1 To i a(i, j) = i * j str1 = str1 + Str(i) + * + Str(j) + = + Str(a(i, j) + Space(5 - Len(Str(a(i, j) Next str1 = str1
14、+ vbCrLf Next4.为二维数组a(6,6)元素进行赋值,生成“杨辉三角形”图形。Dim i, j As Integer Dim str1 As String = Dim a(6, 6) As Integer For i = 0 To 6 For j = 0 To i If j = 0 Or i = j Then a(i, j) = 1 Else a(i, j) = a(i - 1, j) + a(i - 1, j - 1) End If str1 = str1 + Str(a(i, j)+ Space(5 - Len(Str(a(i, j) Next str1 = str1 + vb
15、CrLf Next TextBox1.Text = str11 编写求的函数和通用过程,分别调用求以下表达式的值。y= Function add2(ByVal n As Integer) As Integer Dim i, s As Integer s = 0 For i = 1 To n s = s + i Next Return s End Function Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click Dim y As
16、Double y = (add2(3) + add2(4) + add2(5) / (add2(6) + add2(7) MsgBox(y) End Sub Sub add1(ByVal n As Integer, ByRef s As Integer) Dim i As Integer s = 0 For i = 1 To n s = s + i Next End Sub Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim
17、 i, a(7) As Integer, y As Double For i = 3 To 7 add1(i, a(i) Next y = (a(3) + a(4) + a(5) / (a(6) + a(7) MsgBox(y) End Sub 2 编写求y=2*x*x-x 的函数过程,调用该函数,计算 当x=0.0,0.1,0.2,0.3,0.9,1.0时的相应y值, 只要求输出这11个y值的最大值与最小值。 Function y2(ByVal x As Double) As Double y2 = 2 * x * x - x End Function Private Sub Button3
18、_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click Dim i As Integer, y(10), mx, mn As Double For i = 0 To 10 y(i) = y2(i * 0.1) Next mx = y(0) mn = y(0) For i = 1 To 10 If y(i) mx Then mx = y(i) If y(i) mn Then mn = y(i) Next MsgBox(最大值是: + CStr(mx) + vbCrLf + 最小值是: + CStr(mn) End Sub 3 编写函数过程,求任意正整数各位数字之和。 Function shuzi(ByVal n As Integer) As Integer Dim m, s, i As Integer m = Len(Str(n) s = 0 For i = 1 To m s = s + Val(Mid(Str(n), i, 1) Next Ret
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1