计算机二级考试VB一般程序设计习题

更新时间:2024-01-16 11:26:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

一般程序设计习题

'〖第1题〗:(事件)单击窗体。

' (响应)求100以内偶数的和,并将结果输出在窗体上。 ' 将结果存入变量SUM中 '答案:Dim i As Integer For i = 1 To 100

If i Mod 2 = 0 Then sum = sum + i End If Next Print sum '〖第2题〗:(事件)双击窗体。

' (响应)求s=1+1×2+1×2×3+…+1×2×3×…×10, ' 并将结果存到变量S中 答案:Dim i, j As Integer Dim k As Long k = 1 s = 0

For i = 1 To 10 For j = 1 To i k = k * j Next s = s + k k = 1 Next

Print (CStr(s)) '〖第3题〗:(事件)单击窗体。

' (响应)求1+2+3+……+100的值,并把结果输出在窗体上。 ' 结果存入变量SUM中。 '答案:Dim i As Integer For i = 1 To 100 sum = sum + i Next Print sum '〖第4题〗:判断一个数是否是素数。 '答案:Dim i As Integer Prime = True

For i = 2 To Int(Sqr(m))

If m Mod i = 0 Then Prime = False: Exit For Next i '〖第5题〗:(事件)单击窗体。

' (响应)求1 - 1/2 + 1/3 - 1/4 + …… + 1/99 - 1/100的值。 ' 将结果存入变量J中。 Dim i As Integer For i = 1 To 100

If i Mod 2 = 1 Then j = j + 1 / i

ElseIf i Mod 2 = 0 Then j = j - 1 / i End If Next Print j ''〖第6题〗:(事件)单击窗体。

' (响应)求200~300之间既能被3整除又能被7整除的数。 ' 并求出所有数之和存入变量SUM中 '答案:Dim i As Integer For i = 201 To 300

If ((i Mod 3) = 0) And ((i Mod 7) = 0) Then Print (CStr(i)) sum = sum + i End If Next Print sum '〖第7题〗:(事件)单击窗体。

' (响应)求数列1+3+3+9+27+……前6项的和,并将 ' 结果输出到窗体上。将结果存入变量SUM中。 '答案: Dim i As Integer Dim j(1 To 6) As Integer For i = 1 To 6 If i < 3 Then

j(i) = 3 ^ (i - 1) Else

j(i) = j(i - 1) * j(i - 2) End If

sum = sum + j(i) Next Print sum '〖第8题〗:(事件)单击窗体。

' (响应)求10!的值,并将结果输出到窗体上。 ' 将结果存入变量SUM中。 '答案: Dim i As Integer sum = 1

For i = 1 To 10 sum = sum * i Next Print sum '〖第9题〗:(事件)双击窗体。

' (响应)求出100~200之间,能被5整除,但不能被3 ' 整除的数。并求所有数之和,存入变量中 ' SUM中。 '答案:Dim i As Integer For i = 100 To 200

If ((i Mod 5) = 0) And ((i Mod 3) <> 0) Then Print (CStr(i)) sum = sum + i End If Next

'〖第10题〗:(事件)双击窗体。

' (响应)把一元钞票换成一分、二分和五分的硬币 ' (每种至少有一枚),求出其所有的换法, ' 把结果输出在窗体上。

' 将所有的换法的数目存入变量N中 答案:Dim i, j, k As Integer For i = 1 To 100 For j = 1 To 50

For k = 1 To 20

If ((i + 2 * j + k * 5) = 100) Then Print (CStr(i)) Print (CStr(j)) Print (CStr(k)) n = n + 1 End If Next Next Next

'〖第11题〗:求两个数m,n的最大公约数p和最小公倍数q '答案:nm = n * m

If m < n Then t = m: m = n: n = t r = m Mod n

Do While (r <> 0) m = n n = r

r = m Mod n Loop p = n

q = nm / n '〖第12题〗:(事件)双击窗体。

' (响应)s=20+21+22+…+263,求s的值,并将结果

' 存储到变量S中。 答案:Dim i As Integer i = 20

While i <= 263 s = s + i i = i + 1 Wend

Print (CStr(s)) '〖第13题〗:(事件)双击窗体。

' (响应)求3+6+9+12+15+18+……+300的和,并将结 ' 果输出到窗体上。将结果存入变量 SUM中。 '答案: Dim i As Integer For i = 3 To 300

If i Mod 3 = 0 Then sum = sum + i End If Next Print sum '〖第14题〗:(事件)双击窗体。

' (响应)编写代码功能如(图1)。 ' 将结果存入变量S中' '答案:Dim i As Integer s = 1

For i = 1 To 10 s = s * i * i Next

Print (CStr(s)) '〖第15题〗:(事件)双击窗体。

' (响应)求1+5+10+15+……+500的和,并将结果输 ' 出到窗体上。将结果存入变量SUM中。 答案: Dim i As Integer For i = 1 To 500

If i Mod 5 = 0 Then sum = sum + i End If Next Print sum '〖第16题〗:(事件)单击窗体。

' (响应)编写程序求10×11×12+11×12×13+…+15×16×17的结果, ' 并将结果输出到窗体上。 ' 将结果存入变量M中 '答案:Dim i, j As Integer Dim s As Long For i = 10 To 15 s = 1

For j = i To i + 2 s = s * j Next

m = m + s Next

Print (CStr(m)) '〖第17题〗:(事件)双击窗体。

' (响应)求出50以内所有奇数的和。 ' 将结果存入变量SUM中 答案: Dim i As Integer For i = 1 To 50

If i Mod 2 = 1 Then sum = sum + i End If Next Print sum '〖第18题〗:用迭代法求某个数的平方根。 已知求平方根的迭代公式如图: '算法思想:对于一个问题的求解x,可由给定的一个初值x0,根据某一

' 迭代公式得到一个新的值x1,这个新值x1比初值x0更接近要求的值x;

' 再以新值作为初值,即:x1→x0,重新按原来的方法求x1,重复这一过和 ' 直到|x1-x0|<_(某一给定的精度)。此时可将x1作为问题的解。 '答案:Dim x0 As Single, x1 As Single x0 = a / 2 '迭代初值 x1 = 0.5 * (x0 + a / x0) Do

x0 = x1 '为下一次迭代作准备 x1 = 0.5 * (x0 + a / x0) Loop While Abs(x1 - x0) > 0.00001 Fsqrt = x1 '〖第19题〗:(事件)单击窗体。

' (响应)求10~20之间所有素数的乘积并输出在窗体上。 ' 将结果存入变量L中。 答案:Dim i As Integer Dim j As Integer Dim b As Boolean l = 1 b = False

For i = 10 To 20

For j = 2 To i - 2

If i Mod j = 0 Then b = True End If Next

If b = False Then l = l * i End If b = False Next

Print Str(l) 〖第20题〗:编写函数fun其功能是:能计算从1开始到n的 ' 自然数中偶数的平方的和,n由键盘输入, ' (n是偶数)

'答案: Dim sum As Integer, i As Integer sum = 0

For i = 2 To n Step 2 sum = sum + i * i Next

fun = sum '〖第21题〗:(事件)单击窗体。

' (响应)求出1000-9999之间具有如下特点的四位数字, ' 它的平方根

' 恰好就是它中间的两位数字,例如,2500开 ' 平方为50,恰为2500的中间两位,找出所有 ' 这样的四位数。

' 并求出所有这样的数的和存入SUM中 '答案: Dim i As Integer Dim j As Integer For i = 1000 To 9999

j = Val(Mid(Trim(Str(i)), 2, 2)) If j ^ 2 = i Then Print i,

sum = sum + i End If Next '〖第22题〗:(事件)双击窗体。

' (响应)求100以内奇数的和,并将结果输出在窗体上。 ' 将结果存入变量SUM中 答案: Dim i As Integer For i = 1 To 100

If i Mod 2 = 1 Then sum = sum + i End If Next

Print sum 〖第23题〗:(事件)单击窗体。

' (响应)在窗体上打印数列2/1,3/2,5/3,8/5,13/8… ' 的前10项,并求其和。 '答案:Dim i, j, k, m As Integer s = 0 i = 2 j = 1

For k = 1 To 10 m = j

Print (CStr(i)) & \ j = i i = i + m s = s + i / j Next

'〖第24题〗:(事件)双击窗体。

' (响应)写程序解决百钱买百鸡问题:公鸡3元1只, ' 母鸡5元1只,小鸡一元3只,怎样用100元买 ' 100只鸡。把结果输出到窗体上。 ' 将答案数存放在变量N中 '答案:

Dim i, j, k As Integer For i = 1 To 20 '母鸡

For j = 1 To 33 '公鸡

For k = 3 To 100 '小鸡

If ((k Mod 3) = 0) And ((i * 5 + j * 3 + k / 3) = 100) And ((i + j + k) = 100) Then Print (CStr(i)) Print (CStr(j)) Print (CStr(k)) n = n + 1 End If Next Next Next

'〖第25题〗:(事件)单击窗体。

' (响应)一球从100米高度自由落下,每次落地返回 ' 原高度的一半,求第10次落地时,共经过多 ' 少米?并将结果在窗体上输出。 '答案:Dim j, i As Integer s = 0 j = 100

For i = 2 To 10 j = j / 2 s = s + 2 * j Next

s = 100 + s Print (CStr(s)) '〖第26题〗:(事件)单击窗体。

' (响应)在窗体上输出100~200之间的所有合数。 ' 求出所有数之和存入SUM中 ''答案:Dim i, j, s As Integer For i = 100 To 200 For j = 2 To Sqr(i)

If (i Mod j) = 0 Then Print (CStr(i)) sum = sum + i Exit For End If Next Next Print sum '〖第27题〗:(事件)单击窗体。

' (响应)求50以内所有偶数的和,并在窗体上输出出来。 ' 将结果存入变量S中。

本文来源:https://www.bwwdw.com/article/p5do.html

Top