VB循环程序例题100道附问题详解

VB循环程序例题100道附问题详解
VB循环程序例题100道附问题详解

VB循环程序例题附答案

1.素数

1. [100,999]范围内同时满足以下两个条件的十进制数. ⑴其个位数字与十位数字之和除以10所得的余数是百位数字;⑵该数是素数; 求有多少个这样的数?15

n = 0

For i = 100 To 999

a = i \ 100

b = i \ 10 Mod 10

c = i Mo

d 10

If (c + b) Mod 10 = a Then

x = 0

For j = 2 To i - 1

If i Mod j = 0 Then x = 1: Exit For

Next j

If x = 0 Then n = n + 1

End If

Next i

Print n

2. [300,800]范围内同时满足以下两个条件的十进制数. ⑴其个位数字与十位数字之和除以10所得的余数是百位数字;⑵该数是素数;求满足上述条件的最大的三位十进制数。 761 For i = 300 To 800

a = i \ 100

b = i \ 10 Mod 10

c = i Mo

d 10

If (c + b) Mod 10 = a Then

x = 0

For j = 2 To i - 1

If i Mod j = 0 Then x = 1: Exit For

Next j

If x = 0 Then s = i

End If

Next i

Print s

3. 除1和它本身外,不能被其它整数整除的正整数称为素数(注:1不是素数,2是素数)。若两素数之差为2 ,则称两素数为双胞胎数,问[31,601]之间有多少对双胞胎数。22

n = 0

For i = 31 To 601 - 2

x = 0

If i Mod j = 0 Then x = 1: Exit For

Next j

If x = 0 Then

y = 0

For j = 2 To Sqr(i + 2)

If (i + 2) Mod j = 0 Then y = 1: Exit For

Next j

If y = 0 Then n = n + 1

End If

Next i

Print n

4. 数学家哥德巴赫曾猜测:任何大于6的偶数都可以分解成两个素数(素数对)的和。但有些偶数可以分解成多种素数对的和,如: 10=3+7,10=5+5,即10可以分解成两种不同的素数对。试求6744可以分解成多少种不同的素数对(注: A+B与B+A认为是相同素数对)144

n = 0

For i = 2 To 6744 / 2

x = 0

For j = 2 To Sqr(i)

If i Mod j = 0 Then x = 1: Exit For

Next j

If x = 0 Then

y = 0

For j = 2 To Sqr(6744 - i)

If (6744 - i) Mod j = 0 Then y = 1: Exit For

Next j

If y = 0 Then n = n + 1

End If

Next i

Print n

5. 两个素数之差为2,则称这两个素数为双胞胎数。求出[200,1000]之间的最大一对双胞胎数的和。1764

For i = 200 To 1000 - 2

x = 0

For j = 2 To Sqr(i)

If i Mod j = 0 Then x = 1: Exit For

Next j

If x = 0 Then

y = 0

For j = 2 To Sqr(i + 2)

If (i + 2) Mod j = 0 Then y = 1: Exit For

Next j

If y = 0 Then s = i + i + 2

End If

Print s

6. 一个素数(设为p)依次从最高位去掉一位,二位,三位,……,若得到的各数仍都是素数(注:除1和它本身外,不能被其它整数整除的正整数称为素数,1不是素数,2是素数),且数p的各位数字均不为零,则称该数p为逆向超级素数。例如,617,17,7都是素数,因此617是逆向超级素数,尽管503,03,3都是素数,但它不是逆向超级素数,因为它包含有零。试求[100,999]之内的所有逆向超级素数的个数。39

n = 0

For i = 100 To 999

a = i \ 10 Mod 10

b = i Mod 10

If a <> 0 And b <> 0 And b <> 1 Then

x = 0

For j = 2 To Sqr(i)

If i Mod j = 0 Then x = 1: Exit For

Next j

If x = 0 Then

y = 0

c = i Mo

d 100

For j = 2 To Sqr(c)

If c Mod j = 0 Then y = 1: Exit For

Next j

If y = 0 Then

z = 0

For j = 2 To Sqr(b)

If b Mod j = 0 Then z = 1: Exit For

Next j

If z = 0 Then n = n + 1

End If

End If

End If

Next i

Print n

7. 德国数学家哥德巴赫曾猜测:任何大于6的偶数都可以分解成两个素数(素数对)的和。但有些偶数可以分解成多种素数对的和,如: 10=3+7,10=5+5,即10可以分解成两种不同的素数对。试求1234可以分解成多少种不同的素数对(注: A+B与B+A认为是相同素数对)25 n = 0

For i = 2 To 1234 / 2

x = 0

For j = 2 To Sqr(i)

If i Mod j = 0 Then x = 1: Exit For

Next j

If x = 0 Then

y = 0

If (1234 - i) Mod j = 0 Then y = 1: Exit For

Next j

If y = 0 Then n = n + 1

End If

Next i

Print n

8.求[100,900]之间相差为12的素数对(注:要求素数对的两个素数均在该范围内)的个数。

50

n = 0

For i = 100 To 900 - 12

x = 0

For j = 2 To Sqr(i)

If i Mod j = 0 Then x = 1: Exit For

Next j

If x = 0 Then

y = 0

For j = 2 To Sqr(i + 12)

If (i + 12) Mod j = 0 Then y = 1: Exit For

Next j

If y = 0 Then n = n + 1

End If

Next i

Print n

9. 一个素数(设为p)依次从最高位去掉一位,二位,三位,……,若得到的各数仍都是素数(注:1不是素数),且数p的各位数字均不为零,则称该数p为逆向超级素数。例如,617,17,7都是素数,因此617是逆向超级素数,但尽管503,03,3都是素数,但它不是逆向超级素数,因为它包含有零。试求[100,999]之内的所有逆向超级素数的和。21645

s = 0

For i = 100 To 999

a = i \ 10 Mod 10

b = i Mod 10

If a <> 0 And b <> 0 And b <> 1 Then

x = 0

For j = 2 To Sqr(i)

If i Mod j = 0 Then x = 1: Exit For

Next j

If x = 0 Then

y = 0

c = i Mo

d 100

For j = 2 To Sqr(c)

If c Mod j = 0 Then y = 1: Exit For

Next j

z = 0

For j = 2 To Sqr(b)

If b Mod j = 0 Then z = 1: Exit For

Next j

If z = 0 Then s = s + i

End If

End If

End If

Next i

Print s

10. 一个素数(设为p)依次从最高位去掉一位,二位,三位,……,若得到的各数仍都是素数(注:1不是素数,2是素数),且数p的各位数字均不为零,则称该数p为逆向超级素数。例如,617,17,7都是素数,因此617是逆向超级素数,但尽管503,03,3都是素数,但它不是逆向超级素数,因为它包含有零。试求[100,999]之内的所有逆向超级素数从大到小数的第10个素数是多少?797

n = 0

For i = 999 To 100 Step -1

a = i \ 10 Mod 10

b = i Mod 10

If a <> 0 And b <> 0 And b <> 1 Then

x = 0

For j = 2 To Sqr(i)

If i Mod j = 0 Then x = 1: Exit For

Next j

If x = 0 Then

y = 0

c = i Mo

d 100

For j = 2 To Sqr(c)

If c Mod j = 0 Then y = 1: Exit For

Next j

If y = 0 Then

z = 0

For j = 2 To Sqr(b)

If b Mod j = 0 Then z = 1: Exit For

Next j

If z = 0 Then n = n + 1: If n = 10 Then s = i

End If

End If

End If

Next i

Print s

11. 一个自然数是素数,且它的数字位置经过任意对换后仍为素数,则称为绝对素数。如13,试求所有两位绝对素数的和。429

For i = 10 To 99

a = i \ 10

b = i Mod 10

x = 0

For j = 2 To Sqr(i)

If i Mod j = 0 Then x = 1: Exit For

Next j

If x = 0 Then

y = 0

c = b * 10 + a

For j = 2 To Sqr(c)

If c Mod j = 0 Then y = 1: Exit For

Next j

If y = 0 Then s = s + i

End If

Next i

Print s

12. 在[200,900]范围内同时满足以下两个条件的十进制数:⑴其个位数字与十位数字之和除以10所得的余数是百位数字; ⑵该数是素数;问有多少个这样的数?14

n = 0

For i = 200 To 900

a = i \ 100

b = i \ 10 Mod 10

c = i Mo

d 10

If (c + b) Mod 10 = a Then

x = 0

For j = 2 To i - 1

If i Mod j = 0 Then x = 1: Exit For

Next j

If x = 0 Then n = n + 1

End If

Next i

Print n

13. 一个素数,依次从个位开始去掉一位,二位.....,所得的各数仍然是素数,称为超级素数。求[100,999]之内超级素数的个数。14

n = 0

For i = 100 To 999

x = 0

For j = 2 To Sqr(i)

If i Mod j = 0 Then x = 1: Exit For

Next j

If x = 0 Then

y = 0

For j = 2 To Sqr(a)

If a Mod j = 0 Then y = 1: Exit For

Next j

If y = 0 Then

b = i \ 100

If b <> 1 Then

z = 0

For j = 2 To Sqr(b)

If b Mod j = 0 Then z = 1: Exit For

Next j

If z = 0 Then n = n + 1

End If

End If

End If

Next i

Print n

14. 若两个连续的自然数的乘积减1后是素数,则称此两个连续自然数为友数对,该素数称为友素数。例如,由于 8*9-1=71,因此,8与9是友素数对,71是友素数。求[100,200]之间的第10个友素数对所对应的友素数的值(按由小到大排列)。17291 For i = 100 To 199

a = i * (i + 1) - 1

x = 0

For j = 2 To Sqr(a)

If a Mod j = 0 Then x = 1: Exit For

Next j

If x = 0 Then

n = n + 1

If n = 10 Then s = a

End If

Next i

Print s

15. 求[2,400]中相差为10的相邻素数对(两数中间没有其它素数)的对数。 5

n = 0

For I = 2 To 400 - 10

x = 0

For j = 2 To Sqr(I)

If I Mod j = 0 Then x = 1: Exit For

Next j

If x = 0 Then

y = 0

For j = 2 To Sqr(I + 10)

If (I + 10) Mod j = 0 Then y = 1: Exit For

If y = 0 Then

For k = I + 1 To I + 9

z = 0

For k1 = 2 To Sqr(k)

If k Mod k1 = 0 Then z = 1: Exit For

Next k1

If z = 0 Then Exit For

Next k

If k = I + 10 Then n = n + 1

End If

End If

Next I

Print n

16. 若两个连续的自然数的乘积减1后是素数,则称此两个连续自然数为友数对,该素数称为友素数。例如,由于 8*9-1=71,因此,8与9是友数对,71是友素数。求[50,150]之间的友数对的数目。38

n = 0

For i = 50 To 150

a = i * (i + 1) - 1

x = 0

For j = 2 To Sqr(a)

If a Mod j = 0 Then x = 1: Exit For

Next j

If x = 0 Then

n = n + 1

End If

Next i

Print n

17. 若两个连续自然数乘积减1后是素数,则称此两个自然连续数为友数对,该素数称为友素数,例:2*3-1=5,因此2与3是友数对,5是友素数,求[40,119]之间友素数对的数目。 30

n = 0

For i = 40 To 119

a = i * (i + 1) - 1

x = 0

For j = 2 To Sqr(a)

If a Mod j = 0 Then x = 1: Exit For

Next j

If x = 0 Then

n = n + 1

End If

Next i

Print n

n = 0

For i = 2 To 21

x = 2 ^ i - 1

k = 0

For j = 2 To Sqr(x)

If x Mod j = 0 Then k = 1

Next j

If k = 0 Then n = n + 1

Next i

Print n

19. [300,800]范围内同时满足以下两个条件的十进制数. ⑴其个位数字与十位数字之和除以10所得的余数是百位数字;⑵该数是素数;求满足上述条件的最大的三位十进制数。761 For i = 300 To 800

a = i \ 100

b = i \ 10 Mod 10

c = i Mo

d 10

If (c + b) Mod 10 = a Then

k = 0

For j = 2 To Sqr(i)

If i Mod j = 0 Then k = 1

Next j

If k = 0 Then s = i

End If

Next i

Print s

2. 取数字

20. 求符合下列条件的四位完全平方数(某个正整数A是另一个正整数B的平方,则称A为完全平方数),它的千位数字与十位数字之和等于百位数字与个位数字之积,例如,3136=562, 且3+3=1*6 故3136是所求的四位完全平方数. 求其中最大的一个数。7921

For i = 1000 To 9999

x = Sqr(i)

If x = Int(x) Then

a = i \ 1000

b = i \ 100 Mod 10

c = i \ 10 Mo

d 10

d = i Mod 10

If (a + c) = b * d Then s = i

End If

Next i

21.设某四位数的千位数字平方与十位数字的平方之和等于百位数字的立方与个位数字的立方之和,例如,对于四位数:3201, 3^2+0^2=2^3+1^3,试问所有这样的四位数之和是多少?97993 s = 0

For i = 1000 To 9999

a = i \ 1000

b = i \ 100 Mod 10

c = i \ 10 Mo

d 10

d = i Mod 10

If (a ^ 2 + c ^ 2) = b ^ 3 + d ^ 3 Then s = s + i

Next i

Print s

22. 设某四位数的千位数字与十位数字的和等于百位数字与个位数字的积,例如,对于四位数:9512,9+1=5*2,试问所有这样的四位数之和是多少?1078289 s = 0

For i = 1000 To 9999

a = i \ 1000

b = i \ 100 Mod 10

c = i \ 10 Mo

d 10

d = i Mod 10

If (a + c) = b * d Then s = s + i

Next i

Print s

23. 有一个三位数满足下列条件: (1)此三位数的三位数字各不相同; (2)此三位数等于它的各位数字的立方和。试求所有这样的三位数之和。1301

s = 0

For i = 100 To 999

a = i \ 100

b = i \ 10 Mod 10

c = i Mo

d 10

If (a ^ 3 + b ^ 3 + c ^ 3) = i And a <> b And b <> c And c <> a Then s = s + i Next i

Print s

24. 求[1,999]之间能被3整除,且至少有一位数字是5的所有正整数的个数。91

n = 0

For i = 1 To 999

a = i \ 100

b = i \ 10 Mod 10

c = i Mo

d 10

If i Mod 3 = 0 And (a = 5 Or b = 5 Or c = 5) Then n = n + 1

Next i

25. 有一个三位数满足下列条件: (1)此三位数的三位数字各不相同; (2)此三位数等于它的各位数字的立方和。试求所有这样的三位数中最大的一个是多少?407

s = 0

For i = 100 To 999

a = i \ 100

b = i \ 10 Mod 10

c = i Mo

d 10

If (a ^ 3 + b ^ 3 + c ^ 3) = i And a <> b And b <> c And c <> a Then s = i Next i

Print s

26. 有一个三位数满足下列条件: (1)此三位数的三位数字各不相同; (2)此三位数等于它的各位数字的立方和。试求这种三位数共有多少个? 4

n = 0

For i = 100 To 999

a = i \ 100

b = i \ 10 Mod 10

c = i Mo

d 10

If (a ^ 3 + b ^ 3 + c ^ 3) = i And a <> b And b <> c And c <> a Then n = n + 1 Next i

Print n

27. 求五位数各位数字的平方和为100的最大的五位数。94111 For i = 10000 To 99999

a = i \ 10000

b = i \ 1000 Mod 10

c = i \ 100 Mo

d 10

d = i \ 10 Mod 10

e = i Mod 10

If a ^ 2 + b ^ 2 + c ^ 2 + d ^ 2 + e ^ 2 = 100 Then s = i

Next i

Print s

28. 所谓“水仙花数”是指一个三位数,其各位数字的三次方之和等于该数本身,例如:153=1^3+3^3+5^3,故153是水仙花数,求[100,999]之间所有水仙花数之和。1301

s = 0

For i = 100 To 999

a = i \ 100

b = i \ 10 Mod 10

c = i Mo

d 10

If (a ^ 3 + b ^ 3 + c ^ 3) = i Then s = s + i

Next i

Print s

n = 0

For i = 1000 To 9999

a = i \ 1000

b = i \ 100 Mod 10

c = i \ 10 Mo

d 10

d = i Mod 10

If a ^ 2 + b ^ 2 + c ^ 2 + d ^ 2 = 100 Then n = n + 1

Next i

Print n

30. 回文数是指正读和反读都一样的正整数。例如3773是回文数。求出[1000,9999]以内的所有回文数的个数。90

n = 0

For i = 1000 To 9999

a = i \ 1000

b = i \ 100 Mod 10

c = i \ 10 Mo

d 10

d = i Mod 10

If a + b * 10 + c * 100 + d * 1000 = i Then n = n + 1

Next i

Print n

3. 分硬币

31. 把一张一元钞票,换成一分、二分和五分硬币,每种至少8枚,问有多少种方案? 80 n = 0

For i = 8 To 100

For j = 8 To 50

For k = 8 To 20

If (i + 2 * j + 5 * k = 100) Then n = n + 1

Next k, j, i

Print n

32. 50元的整币兑换成5元、2元和1元币值(三种币值均有、缺少一种或两种都计算在内)的方法有多少种。146

n = 0

For i = 0 To 50

For j = 0 To 25

For k = 0 To 10

If (i + 2 * j + 5 * k = 50) Then n = n + 1

Next k, j, i

Print n

33. 50元的整币兑换成5元、2元和1元币值(要求三种币值均有)的方法有多少种。 106

For i = 1 To 50

For j = 1 To 25

For k = 1 To 10

If (i + 2 * j + 5 * k = 50) Then n = n + 1

Next k, j, i

Print n

34. 马克思曾经做过这样一道趣味数学题:有30个人在一家小饭店里用餐,其中有男人、女人和小孩,每个男人花了3先令,每个女人花了2先令,每个小孩花了1先令,共花去50先令。如果要求男人、女人和小孩都有人参与,试求有多少种方案分配男人、女人和小孩的人数。9

n = 0

For i = 1 To 50

For j = 1 To 25

k = 30 - i - j

If (i + 2 * j + 3 * k = 50) And k > 0 Then n = n + 1

Next j, i

Print n

4. 勾股、弦数

35. A,B,C是三个小于或等于100正整数,当满足1/A^2+1/B^2=1/C^2关系时,称为倒勾股数。求130B>C的倒勾股数有多少组。 1

For c = 1 To 100

For b = c + 1 To 100

For a = b + 1 To 100

i = a + b + c

If (i > 100 And i < 150 And (1 / (a * a) + 1 / (b * b) = 1 / (c * c))) Then

n = n + 1

Print a, b, c

End If

Next a, b, c

Print n

36. 倒勾股数是满足公式: 1/A^2+1/B^2=1/C^2 的一组正整数(A,B,C),例如,(156,65,60)是倒勾股数,因为:1/156^2+1/65^2=1/60^2。假定A>B>C,求A,B,C之和小于100的倒勾股数有多少组? 2

For c = 1 To 100

For b = c + 1 To 100

For a = b + 1 To 100

i = a + b + c

If (i < 100 And (1 / (a * a) + 1 / (b * b) = 1 / (c * c))) Then

n = n + 1

Print a, b, c

End If

Next a, b, c

37. 勾股弦数是满足公式: A^2+B^2=C^2 (假定A

11

n = 0

For c = 1 To 100

For a = 1 To 24

For b = a + 1 To 24

s = a + b + c

If a ^ 2 + b ^ 2 = c ^ 2 And s <= 100 Then n = n + 1

Next b, a, c

Print n

38. 倒勾股数是满足公式: 1/A^2+1/B^2=1/C^2 的一组正整数(A,B,C),例如,(156,65,60)是倒勾股数,因为:1/156^2+1/65^2=1/60^2。假定A>B>C,求A,B,C均小于或等于100

的倒勾股数有多少组? 5

For c = 1 To 100

For b = c + 1 To 100

For a = b + 1 To 100

i = a + b + c

If 1 / (a * a) + 1 / (b * b) = 1 / (c * c) Then

n = n + 1

Print a, b, c

End If

Next a, b, c

Print n

39. 勾股弦数是满足公式: A^2+B^2=C^2 (假定A

Max = 0

For a = 1 To 100

For b = a + 1 To 100

For c = b + 1 To 100

s = a + b + c

If a ^ 2 + b ^ 2 = c ^ 2 And s > Max Then Max = s

Next c, b, a

Print Max

40 若某整数平方等于某两个正整数平方之和的正整数称为弦数。例如:由于3^2+4^2=5^2,则5为弦数,求[100,200]之间弦数的个数。77

n = 0

For i = 1 To k

For j = i + 1 To k

If i ^ 2 + j ^ 2 = k ^ 2 Then n = n + 1

Next j, i, k

Print n

41 若某正整数平方等于某两个正整数平方之和,称该正整数为弦数。例如:由于3^2+4^2=5^2,则5为弦数,求[131,200]之间最小的弦数。135

For k = 131 To 200

For i = 1 To k

For j = i + 1 To k

If i ^ 2 + j ^ 2 = k ^ 2 Then GoTo 10

Next j, i, k

10

Print k

5.完数因子

42 求在[10,1000]之间的所有完数之和。各真因子之和(不包括自身)等于其本身的正整数称为完数。例如:6=1+2+3,6是完数。524

Sum = 0

For m = 10 To 1000

s = 0

For i = 1 To m - 1

If m Mod i = 0 Then s = s + i

Next i

If s = m Then Sum = Sum + m

Next m

Print Sum

43 一个数如果恰好等于它的所有真因子之和,这个数就称为“完数”。例如, 6的真因子为1,2,3,而6=1+2+3,因此,6是“完数”。求[1,1000]之间的最大完数。496

Sum = 0

For m = 1 To 1000

s = 0

For i = 1 To m - 1

If m Mod i = 0 Then s = s + i

Next i

If s = m Then Sum = m

Next m

Print Sum

44 一个数如果恰好等于它的所有真因子之和,这个数就称为“完数”。例如,6的真因子为1,2,3,而6=1+2+3,因此,6是“完数”。求[1,1000]之间的第二大完数。28

For m = 1 To 1000

s = 0

For i = 1 To m - 1

If m Mod i = 0 Then s = s + i

Next i

If s = m Then n = n + 1

If n = 2 Then Sum = m: Exit For

Next m

Print Sum

45 一个数如果恰好等于它的所有真因子之和,这个数就称为“完数”。例如,6的真因子为1,2,3,而6=1+2+3,因此,6是“完数”。求1000以内的所有完数之和。530

Sum = 0

For m = 1 To 1000

s = 0

For i = 1 To m - 1

If m Mod i = 0 Then s = s + i

Next i

If s = m Then Sum = Sum + m

Next m

Print Sum

46 求[200,300]之间有奇数个不同因子的最大的整数(在计算因子个数时,包括该数本身)。

289

For m = 200 To 300

k = 0

For i = 1 To m

If m Mod i = 0 Then k = k + 1

Next i

If k Mod 2 <> 0 Then A = m

Next m

Print A

47 求[200,300]之间第二大有奇数个不同因子的整数(在计算因子个数时,包括该数本身)。

256

n = 0

For m = 200 To 300

k = 0

For i = 1 To m

If m Mod i = 0 Then k = k + 1

Next i

If k Mod 2 <> 0 Then n = n + 1

If n = 2 Then A = m: Exit For

Next m

Print A

整除,求正整数[10,100]之间有多少个正整数能被其因子的个数整除。12

n = 0

For m = 10 To 100

k = 0

For i = 1 To m

If m Mod i = 0 Then k = k + 1

Next i

If m Mod k = 0 Then n = n + 1

Next m

Print n

6.(数列)四舍五入

49 当m的值为50时,计算下列公式的值: T=1-1/2-1/3-1/4-…-1/m

要求:按四舍五入的方式精确到小数点后第四位。-2.4992 t = 1

For i = 2 To 50

t = t - 1 / i

Next i

Print Round(t, 4)

50 当m的值为50时,计算下列公式之值: t=1+1/2^2+1/3^2+…+1/m^2

(按四舍五入的方式精确到小数点后第四位)。 1.6251 t = 0

For i = 1 To 50

t = t + 1 / i ^ 2

Next i

Print Round(t, 4)

51 当n=100时,计算S=(1-1/2)+(1/3-1/4)+……+(1/(2n-1)-1/(2n))的值。.

要求:按四舍五入的方式精确到小数点后第三位。0.691 s = 0

For i = 1 To 100

s = s + (1 / (2 * i - 1) - 1 / (2 * i))

Next i

Print Round(s, 3)

52 当n的值为25时,计算下列公式的值: s=1+1/1!+1/2!+1/3!+…+1/n!

要求:按四舍五入的方式精确到小数点后第四位。 2.7183 s = 1

t = 1

For i = 1 To 50

t = t * i

s = s + 1 / t

Print Round(s, 4)

53 利用格里高利公式:α/4=1-1/3+1/5-1/7+1/9-1/11+…-1/99,求α的值。要求:按四舍五入的方式精确到小数点后第二位。 3.12

s = 0

a = 1

For i = 1 To 99 Step 2

s = s + 1 / i * a

a = -a

Next i

Print Round(s * 4, 2)

54 求1/(1*2)+1/(2*3)+1/(3*4)+....+1/(N*(N+1))的值,N=20, 要求:按四舍五入的方式精确到小数点后第二位。0.95

s = 0

For i = 1 To 20

s = s + 1 / (i * (i + 1))

Next i

Print Round(s, 2)

55 求500以内(含500)能被5或9整除的所有自然数的倒数之和。按四舍五入的方式精确到小数点后第二位。 1.48

s = 0

For i = 1 To 500

If i Mod 5 = 0 Or i Mod 9 = 0 Then

s = s + 1 / i

End If

Next i

Print Round(s, 2)

56 求S=1/2+2/3+3/5+5/8+……的前30项的和(注:该级数从第二项开始,其分子是前一项的分母,其分母是前一项的分子与分母的和)。要求:按四舍五入的方式精确到小数点后第二位。

18.46

s = 0

a = 1

b = 2

For i = 1 To 30

s = s + a / b

t = a

a = b

b = t + b

Next i

Print Round(s, 2)

确到小数点后4位。0.7829

s = 0

a = 1

For i = 1 To 100

s = s + 1 / (2 * i - 1) * a

a = -a

Next i

Print Round(s, 4)

58 当n=50时,求下列级数和:S=1/(1*2)+1/(2*3)+…+1/(n*(n+1))

要求:按四舍五入的方式精确到小数点后第四位。0.9804

s = 0

For i = 1 To 50

s = s + 1 / (i * (i + 1))

Next i

Print Round(s, 4)

59 计算y=1+2/3+3/5+4/7+…+n/(2*n-1)的值, n=50, 要求:按四舍五入的方式精确到小数点后第二位。26.47

s = 0

For i = 1 To 50

s = s + i / (2 * i - 1)

Next i

Print Round(s, 2)

60 计算Y=X/1!-X^3/3!+X^5/5!-X^7/7!+……前20项的值(已知:X=2)。要求:按四舍五入的方式精确到小数点后第二位。0.91

s = 0

x = 2

a = 1

t = 1

For i = 1 To 20 * 2 + 1

t = t * i

If i Mod 2 <> 0 Then

s = s + x ^ i / t * a

a = -a

End If

Next i

Print Round(s, 2)

61 求数列:2/1,3/2,5/3,8/5,13/8,21/13,……前50项之和(注:此数列从第二项开始,其分子是前一项的分子与分母之和,其分母是前一项的分子)。(按四舍五入的方式精确到小数点后第二位)81.2

s = 0

a = 2

For i = 1 To 50

s = s + a / b

t = a

a = a + b

b = t

Next i

Print Round(s, 2)

62 已知:A1=1, A2=1/(1+A1), A3=1/(1+A2), A4=1/(1+A3), ……, 求A50.(按四舍五入的方式精确到小数点后第三位)。0.618

a = 1

For i = 2 To 50

a = 1 / (1 + a)

Next i

Print Round(a, 3)

63 已知:Sn=2/1+3/2+4/3+…+(n+1)/n, 求Sn不超过50的最大值(按四舍五入的方式精确到小数点后第三位)。49.395 s = 0

i = 1

Do While s < 50

t = (i + 1) / i

s = s + t

i = i + 1

Loop

Print Round(s - t, 3)

7.平方数

64 若一个四位正整数是另一个正整数的平方,且各位数字的和是一个平方数,则称该四位正整数是“四位双平方数”。例如:由于7396=86^2,且7+3+9+6=25=5^2,则称7396是“四位双平方数”。求所有“四位双平方数”之和。81977

s = 0

For i = 1000 To 9999

a = i \ 1000

b = i \ 100 Mod 10

c = i \ 10 Mo

d 10

d = i Mod 10

x = Sqr(i)

y = Sqr(a + b + c + d)

If x = Int(x) And y = Int(y) Then s = s + i

Next i

Print s

VB循环结构测试题及答案

循环结构测试题(四) 一:选择题 1:以下()是正确的for….next结构。 (A)for x=1 to step 10 (B) for x=3 to –3 step -3….. ….. next x next x (C ) for x=1 to 10 (D) for x=3 to step 3 re: …. …… Next x next y If I=10 then goto re 2:下列循环语句能正常结束循环的是() (A)I=5 (B) I=1 do do I=I+1 I=I+2 Loop until I<0 loop until I=10 (C) I=10 (D) I=6 do do

I=I-1 I=I-2 Loop until I<0 loop until I=1 3:下面程序段的运行结果为( ) for I=3 to 1 step –1 print spc(5-I); for j=1 to 2*I-1 print “*”; next j print next I 4下列程序在文本框输入“ABCD ”四个字符时,窗体上显示的是( ) private sub text1_change( ) print ; end sub (A) ABCD (B) ( C ) AABABCABCD * * * * (B) * * * * * * * * (C) * * * * * * * * (D) * * * * * * * * A B C (D) A AB ABC

5哪个程序段不能分别正确显示1!,2!,3!,4!的( ) 二:填空题 1:要使下列For 语句循环执行20次,循环变量的初值应当是: for k=( ① ) to –5 step –2 2:下面程序段显示( ② )个“*” 。 For I=1 to 5 For j=2 to I Print “*”; Next j Next I 3: 下列第40句共执行了( ③ )次,第41句共执行(④ )次。 30 for j=1 to 12 step 3 40 for k=6 to 2 step –2 41 print j,k 42 next k (A ) for I=1 to 4 n=1 for j=1 to I (B ) for I=1 to 4 for j=1 to I n=1 (C) N=1 for j=1 to 4 (D) N=1 J=1 Do while j<=4

VB基本学习知识及其选择,循环结构习题集

一、VB 基本知识及选择、循环结构习题 一、基本概念题 (1) 说明下列哪些是Visual Basic 合法的直接常量,并分别指出它们的类型。 100.0 %100 1E1 123D3 123,456 0100 “ASDF” “1234.5” #2004/10/7# 100# π &O78 &H123 True T -1123! 345.54# (2)下列数据哪些是变量,哪些是常量?是什么类型的常量? Name “name” False ff “11/16/99” cj “120” n #11/12/2004# 12.345 (3) 下列符号中,哪些可以是Visual Basic 的合法变量名? A123 a12_3 123_a a,123 a 123 Integer XYZ False Sin(x) 变量名 sinx π (4)把下列数学表达式写成Visual Basic 表达式: (1)5||z y x ++ (2)6 )1(xy + (3)xy y x 310+ (4)a ac b b 242-+- (5)3211111 r r r + + (6) 110ln 45sin 10 ++++y x e ο (5)写出下列表达式的值: (1)123 + 23 Mod 10 \ 7 + Asc("A") (2)Int(68.555 * 100 + 0.4) / 100 (3)#11/22/2004# - 10 (4)"ZXY" & 123 & "abc" (6)设a=7,b=3,c=4,求下列表达式的值: (1)a + 3 * c (2)a ^ 2 / 4 (3)a / 2 + 3 \ 2 (4)a Mod 3 + b ^ 3 / c \ 5 (7)写出下列函数的值: (1)Int(-3.14159) (2)Fix(-3.14159) (3)Sqr(Sqr(81)) (4)Len("Visual Basic 程序设计") (5)Int(Abs(99 - 100) / 2) (6)Sgn(7 * 3 + 2) (7)LCase("Hellow VB!") (8)Mid("Hellow VB!", 4, 3) (9)Left("Hellow VB!", 3) (10)Val("16个加23个") (11)Str(-459.55) (12)UCase("Visual Basic") 二、 选择题 (1)可以同时删除字符串前导和尾部空格的函数是 。 A. Ltrim B. Rtrim C. Trim D. Mid (2)函数Int(Rnd(1) * 10)是在哪个范围产生随机整数 。 A. (0,1) B. (0,9) C. (1,10) D. (1,9) (3)数学式子sin25o写成Visual Basic 表达式是 。 A.Sin25 B. Sin(25) C. Sin(25o) D. Sin(25*3.14/180) (4)表达式16/4 – 2^3 * 8/4 Mod 5\2的值是 。 A. 14 B. 4 C. 20 D. 2 (5)数学关系式103<≤x 表示成正确的VB 表达式为 。 A. 3<= x <10 B. x >= 3 And x<10 C. x>=3 Or x<10 D. 3<= x And <10 (6)已知A=”12345678”,则表达式Val(Left(a, 4) + Mid(a, 4, 2))的值是 。

VB程序设计 试题与答案-1

《VB程序设计基础》试题 一、选择题:(每空 2 分,共 20 分) 1. 与传统的程序设计语言相比,Visual Basic最突出的特点是___________。 A. 结构化程序设计 B. 程序开发环境 C. 事件驱动编程机制 D. 程序调试技术 2. Visual Basic 是一种面向对象的程序设计语言,构成对象的三要素是________。 A. 属性、事件、方法 B. 控件、属性、事件 C. 窗体、控件、过程 D. 窗体、控件、模块 3. 窗体模块保存在一个扩展名为__________的文件中。 A. bas B. vbp C. vbg D. frm 4. 下面正确的赋值语句是_________。 A. x+y=30 B. y=π*r*r C. y=x+30 D. 3y=x 5. 设S=“492”,表达式Right(S,1)+Left(S,1)+Mid(S,2,1)的值为__________。 A.“492” B.“249” C.“294” D.“429” 6. 将数学表达式a≤b≤c写成Visual Basic表达式,正确的是__________。 A. a<=b<=c B. a<=b Or b<=c C. a<=b And b<=c D. a<=b Not b<=c 7.为了把焦点移到文本框,所使用的方法是___________。 A. SetFocus B.Visible C.Refresh D.GetFocus 8. INT(100*RND)产生的随机整数的闭区间是_____________。 A.[0,100] B.[1,100] C.[1,99] D.[0,99] 9. 一个数组说明为Dim a(0 to 5,1 to 5) As Integer,则该数组共有_________个 元素。 A. 5 B. 36 C. 30 D. 不确定 10. 下面过程定义语句合法的是____________。

程序设计语言VB_习题集(含答案)

《程序设计语言VB》课程习题集 一、单选题 1. Visual Basic是一种面向()的程序设计语言。 A. 用户 B. 事件 C. 程序 D. 对象 2.在Visual Basic6.0中规定工程文件的扩展名是()。 A. vbp B. for C. frm D. bas 3. Visual Basic6.0中规定窗体文件的扩展名是()。 A. for B. frm C. vbp D. bas 4.如何使一个标签或按钮控件在运行时不可用()。 A. 把它的Visible属性设置成False B. 把它的Visible属性设置成True C. 把它的Enabled属性设置成False D. 把它的Enabled属性设置成True 5.控件的字体可在属性窗口的()属性中调整? A. Font B. Color C. Text D. Caption 6.若要将某命令按钮设置为默认命令按钮。则应设置为True的属性是()。 A. Value B. Cancel C. Default D. Enabled 7.在VB中,记录对象数据的是()。 A. 方法 B. 事件 C. 属性

8.在文本框上显示文本的属性是()。 A. Value B. Text C. Print D. Enabled 9. InputBox函数返回值的类型为()。 A. 字符串 B. 数值 C. 变体 D. 数值或字符串(视输入的数据而定) 10.设有语句:a = InputBox("请输入数值:","输入示例", "100") 程序执行后,若从键盘上输入数值20并按回车键,则变量a的值是()。 A. 字符串"20" B. 字符串"120" C. 默认值100 D. 数值120 11.下列控件中可用于接受用户输入文本,又可用于显示文本的是()。 A. Label控件 B. TextBox控件 C. Timer控件 D. CommandButton控件 12.语句PRINT "25*4"的输出结果是()。 A. 25*4 B. "100" C. 100 D. 出现错误信息 13.只能用来显示字符信息的控件是()。 A. 文本框 B. 标签框 C. 图片框 D. 图像框 14.下列可作为Visual Basic变量名的是()。 A. A%A B. 4A C. ?xy D. Stemp 15.下列哪个符号不能作为VB中的变量名()。 A. timefly

VB循环结构测试题及答案

循环结构测试题(四) :选择题 1 :以下()是正确的for….nex结构。 (A) for x=1 to step 10 (B) for x=3 to -3 step -3 next x (C ) for x=1 to 10 re: … Next x If I=10 then goto re 2 :下列循环语句能正常结束循环的是( (A)I=5 do I=I+1 Loop until I<0 (C) I=10 do I=I-1 Loop until I<0 3 :下面程序段的运行结果为( ) for I=3 to 1 step -1 print spc(5-I); next x (D) for x=3 to step 3 next y ) (B) I=1 do I=I+2 loop until I=10 (D) I=6 do I=I-2 loop until I=1

for j=1 to 2*1-1 print “ * n ext j print next I 4下列程序在文本框输入B )“* * ABCD ”四个字符时*窗体上显示D 是* (* * ) * * * ***** private sub text1_cha nge() print textl.text; end sub 2:下面程序段显示=i(② for j=1 to 4 For I=1 to n=n*j print n For j=2 j to I Print Next j Next I (A) ABCD (B) (D) A (C ) AABABCABCD AB 5哪个程序段不能分别正确显示 1!,2!,3!,4!的( ABC (A) 二:填空题 1:要使下列 for I=1 to 4 n=1 for j=1 to I n=n*j F(5

完整word版,VB程序设计例题12例

索引 一、在窗体上画一个文本框,其名称为Text1,Text属性为空白。再画一个命令按钮,其名称为C1,Visible属性为False。编写适当的事件过程。程序运行后,如果在文本框中输入字符,则命令按钮出现。 二、计算圆的周长和面积:在窗体中添加一个文本框(Text1)和一个对应的标签(Label1),再添加两个命令按钮(Command1和Command2)和一个图片框(Picture1)。程序运行时,当单击Command1按钮后,计算圆的周长;当单击Command2按钮后,计算圆的面积;计算结果输出在图片框中。(要求在未输入半径前两个按钮呈灰色不可用。) 三、在窗体上添加三个文本框和对应的三个标签,标签的标题分别是“个位”、“十位”、“百位”。程序运行时,当单击窗体后,随机产生一个【100,999】区间内的整数,将它的个位、十位、百位数字分别显示在对应的文本框中。 四、设计一个计算程序:在窗体上添加四个文本框和四个对应的标签,标签的标题分别是“语文”、“数学”、“外语”、“平均成绩”,三个命令按钮,标题分别为“清除”、“计算”、“退出”。程序运行后,用户按“清除”按钮,则清除文本框中显示的内容,按“计算”按钮,则计算三科平均成绩,将计算结果显示在第四个文本框中(计算结果保留小数点后一位)。单击退出按钮则程序退出。 五、某税务部门征收所得税,规定如下:(1)收入200元以内,免征。(2)收入在200~400元,超过200元的部分纳税3%。(3)收入超过400元的部分,纳税4%。(4)当收入达5000元或超过时,将4%税金改为5%。编程序实现上述操作。 六、给定三角形的三条边的边长,计算三角形的面积。编写程序,首选判断给出的三条边能否构成三角形,如可以构成,则计算并输出该三角形的面积,否则要求重新输入。当输入-1时结束程序。 七、编程求100以内的全部素数。 八、编程打印钻石图案。 九、输出杨辉三角形。 十、有一个数组,包含了10个不同的随机整数(20~90),要求计算出它们的平均值,并输出这个数组中最接近于平均值的数。 十一、在一个窗体上建有包含三个命令按钮的控件数组和一个文体框。编程实现当按下标题不同的命令按钮时,使文体框中文字的字体发生相应的变化。 十二、编程求1000以内的完全数。所谓完全数是指这样的自然数:它的各个约数(不包括该数本身)。如28=1+2+4+7+14就是一个完全数。

微机vb选择题

1. 下列VB程序段的基本结构是( ) If x<=12 Then y=3x Else y=4x End If A.分支结构 B.顺序结构 C.循环结构 D.树形结构 答案: A 2. 关于算法,说法不正确的是() A.算法是程序设计的灵魂 B.解决问题的过程就是实现算法的过程 C.算法独立于任何具体的语言,VB 算法只能用VB语言来实现 D.算法的作用在于记录和交流人类解决问题的思想 答案: C 3. if x>=10 then y=5*x else y=4*x 以上程序段属于() A.顺序结构 B.分支结构 C.循环结构 D.流程结构 答案: B 4. 在VB中,利用()显示和编辑程序代码。 A.工程资源管理器窗口 B.窗体设计器窗口 C.代码编辑窗口 D.属性窗口 答案: C 5. 下面保存VB程序的说法正确的是() A.只保存窗体文件 B.只保存工程文件 C.分别保存工程文件和标准模块文

件 D.分别保存窗体文件和工程文件 答案: D 6. VB中,数据类型整型用()表示。 答案: A 7. 数学式(2a-b)/(2a+b)在VB中的正确写法是() A.(2*a-b)/(2a+b B.(2*a-b)/2*a+b C.(2a-b)/(2a+b) D.(2*a-b)/(2*a+b) 答案: D 8. 在VB中,当a=2,b=3时,表达式a>b的值是() A. True C. 0 D. 1 答案: B 9. 下列程序段属于( ) Select Case x Case 1 ="优秀" Case 2 ="良好" Case 3 ="一般" Case Else ="较差" End Select A.顺序结构 B.分支结构 C.循环结构 D.流程结构 答案: B 10.

VB程序设计试题及答案一

V B程序设计试题及答案(一) 一、单选题 1. VB6.0是一种面向B 的编程环境。 (A) 机器(B) 对象 (C) 过程(D) 应用 2. 要使FormI窗体的标题栏显示"欢迎使用VB",以下D 语句是正确的。 (A) Forml.Caption=“欢迎使用VB” (B) Forml.Caption='欢迎使用VB' (C) Forml.Caption=欢迎使用VB (D) Forml.Caption="欢迎使用VB" 3. 若要使命令按钮不可操作,要对A 属性进行设置。 (A) EnabIed (B)Visible (C) Backcolor (D)Caption 4. 如果在窗体上已经创建了一个文本框对象TextI,可以通过C 事件获得输入键值的ASCII码。 (A) Change (B) LostFocus (C) KeyPress (D) GotFocus 5. 下面A 是合法的变量名。 (A) X_yz (B) 123ab。(C) integer (D) X-Y 6. 以下关系表达式中,其值为False的是A 。 (A) "ABC">"AbC" (B) "女">"男" (C) "BASIC"=UCase("basic) (D) "123"<"23" 7. 为了给x、y、z三个变量赋初值1,下面正确的赋值语句是A 。 (A) x=1:y=1:z=1 (B) x=1,y=1,z=1 (C) x=y=z=1 (D) xyz=1 8. VB提供了结构化程序设计的三种基本结构,三种基本结构是D 。 (A)递归结构、选择结构、循环结构 (B)选择结构、过程结构、顺序结构 (C)过程结构、输入输出结构、转向结构 (D)选择结构、循环结构、顺序结构 9. 下面If语句统计满足性别为男、职称为副教授以上、年龄小于40岁条件的人数,不正确的语句是 D 。 (A) If sex="男" And age=4O And InStr(duty,"教授")>O Then n=n+l (B) If sex="男" And age=4O And (duty="教授" Or duty="副教授") Then n=n+l (C) If sex="男" And age=4O And Right(duty,2)="教授" Then n=n+l (D) If sex="男" And age=4O And duty="教授" And duty="副教授" Then n=n+l 10.下列关于Do…Loop循环结构执行循环次数的描述正确的是D 。 (A) Do While…Loop循环和Do…Loop Until循环至少都执行一次 (B) Do While…Loop循环和Do…Loop Until循环可能都不执行 (C) Do While…Loop循环至少执行一次和Do…Loop Until循环可能不执行 (D) Do While…Loop循环可能不执行和Do…Loop Until循环至少执行一次 11.以下B 是正确的For…Next结构。 (A) For x=1 To Step 10 (B) For x=3 To -3 Step -3 ……

vb程序设计实例

vb程序设计实例 2009-5-22 15:37 提问者:淘淘的某在|悬赏分:20 |浏览次数:1688次 编写程序,设银行定期存款的年利率为:1年期2.25%,2年期2.43%,3年期为2.70%,5年期为2.88%(不记复利)。今有X元,5年以后使用,共有如下6中存法: ①存一次5年期; ②存一次3年期,一次2年期; ③存一次3年期,两次1年期; ④存两次2年期,一次1年期; ⑤存一次2年期,三次1年期; ⑥存五次1年期. 分别计算各种存法5年后到期的本息合计,如图所示 2009-5-22 17:06 最佳答案 Private Sub Form_Activate() '1年期2.25%,2年期2.43%,3年期为2.70%,5年期为2.88%(不记复利)。今有X元,5年以后使用,共有如下6中存法: Const x1 As Double = 0.0225, x2 As Double = 0.0243, x3 As Double = 0.027, x5 As Double = 0.0288 Dim x As Double x = Val(InputBox("")) Print "①存一次5年期,5年后到期的本息合计"; ss(x, 5, x5) Print "②存一次3年期,一次2年期,5年后到期的本息合计"; ss(ss(x, 3, x3), 2, x2) Print "③存一次3年期,两次1年期,5年后到期的本息合计"; ss(ss(ss(x, 3, x3), 1, x1), 1, x1) Print "④存两次2年期,一次1年期,5年后到期的本息合计"; ss(ss(ss(x, 2, x2), 2, x2), 1, x1) Print "⑤存一次2年期,三次1年期,5年后到期的本息合计"; ss(ss(ss(ss(x, 2, x2), 1, x1), 1, x1), 1, x1) Print "⑥存五次1年期,5年后到期的本息合计"; ss(ss(ss(ss(ss(x, 1, x1), 1, x1), 1, x1), 1, x1), 1, x1) End Sub Private Function ss(ByVal a As Double, b As Integer, c As Double) As Double ss = a + a * c * b End Function Private Sub Form_Load()

VB循环结构测试题及答案

V B循环结构测试题及答 案 This model paper was revised by the Standardization Office on December 10, 2020

循环结构测试题(四) 一:选择题 1:以下()是正确的for….next结构。 (A)for x=1 to step 10 (B) for x=3 to –3 step -3….. ….. next x next x (C ) for x=1 to 10 (D) for x=3 to step 3 re: …. …… Next x next y If I=10 then goto re 2:下列循环语句能正常结束循环的是() (A)I=5 (B) I=1 do do I=I+1 I=I+2 Loop until I<0 loop until I=10 (C) I=10 (D) I=6 do do I=I-1 I=I-2 Loop until I<0 loop until I=1 3:下面程序段的运行结果为() for I=3 to 1 step –1 print spc(5-I);

for j=1 to 2*I-1 print “*”; next j print next I 4下列程序在文本框输入“ABCD ”四个字符时,窗体上显示的是( ) private sub text1_change( ) print text1.text; end sub (A) ABCD (B) ( C ) AABABCABCD 5哪个程序段不能分别正确显示1!,2!,3!,4!的( ) 二:填空题 1:要使下列For 语句循环执行20次,循环变量的初值应当是: for k=( ① ) to –5 step –2 2:下面程序段显示( ② )个“*”。 For I=1 to 5 For j=2 to I Print “*”; Next j Next I 3: 下列第40句共执行了( ③ )次,第41句共执行(④ )次。 * * * * * * * * * (B) * * * * * * * * * (C) * * * * * * * * * (D) * * * * * * * * * A B C D (D) A AB ABC ABCD (A ) for I=1 to 4 n=1 for j=1 to I n=n*j next j print n (B ) for I=1 to 4 for j=1 to I n=1 n=n*j next j print n (C) N=1 for j=1 to 4 n=n*j print n (D) N=1 J=1 Do while j<=4 n=n*j print n j=j+1 loop

VB程序设计试题及答案(一)

VB程序设计试题及答案(一) 一、单选题 1. 是一种面向B 的编程环境。 (A) 机器(B) 对象 (C) 过程(D) 应用 2. 要使FormI窗体的标题栏显示"欢迎使用VB",以下D 语句是正确的。 (A) =“欢迎使用VB” (B) ='欢迎使用VB' (C) =欢迎使用VB (D) ="欢迎使用VB" 3. 若要使命令按钮不可操作,要对A 属性进行设置。 (A) EnabIed (B)Visible (C) Backcolor (D)Caption 4. 如果在窗体上已经创建了一个文本框对象TextI,可以通过C 事件获得输入键值的ASCII码。 (A) Change (B) LostFocus (C) KeyPress (D) GotFocus 5. 下面A 是合法的变量名。 (A) X_yz (B) 123ab。(C) integer (D) X-Y 6. 以下关系表达式中,其值为False的是A 。 (A) "ABC">"AbC" (B) "女">"男" (C) "BASIC"=UCase("basic) (D) "123"<"23" 7. 为了给x、y、z三个变量赋初值1,下面正确的赋值语句是A 。 (A) x=1:y=1:z=1 (B) x=1,y=1,z=1 (C) x=y=z=1 (D) xyz=1 8. VB提供了结构化程序设计的三种基本结构,三种基本结构是D 。 (A)递归结构、选择结构、循环结构 (B)选择结构、过程结构、顺序结构 (C)过程结构、输入输出结构、转向结构 (D)选择结构、循环结构、顺序结构 9. 下面If语句统计满足性别为男、职称为副教授以上、年龄小于40岁条件的人数,不正确的语句是 D 。 (A) If sex="男" And age=4O And InStr(duty,"教授")>O Then n=n+l (B) If sex="男" And age=4O And (duty="教授" Or duty="副教授") Then n=n+l (C) If sex="男" And age=4O And Right(duty,2)="教授" Then n=n+l (D) If sex="男" And age=4O And duty="教授" And duty="副教授" Then n=n+l 10.下列关于Do…Loop循环结构执行循环次数的描述正确的是D 。 (A) Do While…Loop循环和Do…Loop Until循环至少都执行一次 (B) Do While…Loop循环和Do…Loop Until循环可能都不执行 (C) Do While…Loop循环至少执行一次和Do…Loop Until循环可能不执行 (D) Do While…Loop循环可能不执行和Do…Loop Until循环至少执行一次 11.以下B 是正确的For…Next结构。 (A) For x=1 To Step 10 (B) For x=3 To -3 Step -3 … … Next x Next x

vb循环结构选择题

一、选择题 1、无条件转移GoTo语句后面是(A) A、标号或行号 B、输出语句 C、输入语句 D、子过程 2、无条件转移GoTo语句后面的行号或标号以字母开头,后跟(A) A、冒号 B、分号 C、逗号 D、空格 3、无条件转移GoTo语句后面的行号或标号在同一过程中(A) A、必须唯一 B、可以重复 C、以数字开头 D、以汉字开头 4、while循环结构中的条件表达式取值为(A) A、True B、False C、True或False D、0 5、while循环结构中的条件表达式取值为(A)时执行语句组 A、True B、False C、True或False D、0 6、while循环结构中与(A)匹配使用,不能单独出现 A、Wend B、end C、loop D、next 7、Do…、、loop循环结构中的循环体执行的最少次数为(A) A、0 B、1 C、2 D、3 8、前测型Do…、、loop循环结构中的循环体执行的最少次数为(A) A、0 B、1 C、2 D、3 9、后测型Do…、、loop循环结构中的循环体执行的最少次数为(B) A、0 B、1 C、2 D、3 10、Do…loop循环结构中的Exit Do语句的功能是(B) A、退出整个程序 B、退出当层循环 C、退出最外层循环 D、退出所在子程序

11、Do…loop中使用while关键字时,条件为(B)执行循环体 A、False B、True C、0 D、假或真 12、Do…loop中使用until关键字时,条件为(A)执行循环体 A、False B、True C、0 D、假或真 13、Do…loop中使用while关键字时,条件为(A)终止循环 A、False B、True C、0 D、假或真 14、Do…loop中使用until关键字时,条件为(B)终止循环 A、False B、True C、0 D、假或真 15、For…Next循环结构中(C)用来控制循环变量 A、for B、step C、next D、to 16、For…Next循环结构中step用来控制(D) A、循环变量 B、循环变量初值 C、循环变量终值 D、循环变量增量 17、For…Next循环结构中循环变量初值大于终值时,步长为(A) A、负数 B、非负数 C、正整数 D、正数 18、For…Next循环结构中循环变量初值小于终值时,步长为(A) A、负数 B、负整数 C、正整数 D、正数 19、For…Next循环结构中next后的循环变量(A) A、可以省略 B、不可以省略 C、与for后的变量名可以不同 D、与for后的变量不是同一变量 20、For…Next中循环变量初值与终值间使用的关键字是(A) A、To B、In C、goto D、private 21、For…Next中循环变量初值与终值间使用的关键字是(A)

《VB程序设计基础》模拟精彩试题

《VB程序设计》模拟试题 ●填空题 1.窗体模块的文件扩展名为 ___FRM_________ 、标准模块的文件扩展名为____BAS______ 、 类模块文件的扩展名为______CLS_______ 。 2.Visual Basic中数据类型可分为 _____标准数据类型________和用户自定义数据类型两大类,前者根据其取值的不同,可分为_____整型_________、 ______长整型_____、布尔型和 ____字符型_________。 3. Abs(-6.5)= _____6.5______;Int(-9.1)= ____-10_______。 4. "程序"& "设计"运算结果为 ___程序设计____ 。 5. Dim a, b as Boolean语句显式声明变量a是___变体___变量,b是___布尔__变量。 6. MsgBox函数的返回值中, VBRetry表示单击了____重试_____按钮,VBYes表示单击了___是_____按钮,VBNo表示单击了_____否____按钮。 7. 要加载窗体,可以在代码中使用___________语句,要显示窗体,可以在代码中使用___________方法,要隐藏窗体,可以在代码中使用Hide方法,要卸载窗体,可以在代码中使用___________方法。 8.对话框分为_________对话框和________对话框两种类型,其中_____________ 对话框最 常用。 9. 对象是Visual Basic应用程序的基本单元,它是由 ___类___创建的。在Visual Basic中可以用属性、 __方法___、___事件___ 来说明和衡量一个对象的特性。 10. 条件判断语句可以使用___If…then____________语句、 ____If…Then…Else______语句和 ______If…Then…ElseIf______语句。Select case 语句 11. 声明一个值为3.14的常量Pi的语句为___Const pi = 3.14______。 12. Do…Loop Until 循环结构中,当条件为____真____时结束循环。 13. 要显示弹出菜单,可以在代码中使用_____________事件。 14. 参数传递有__________方式、__________方式和命名传递方式,常量默认采用__________方式;变量默认采用__________方式;表达式默认采用__________方式。 15. 名称属性必须以一个__字母标点_开始并且最长可达40个字符,不能包括__符号___ 和 ___空格___。 16.Visual Basic的程序模块有3种:____窗体模块____ 、标准模块和 ____类模块____。 17.Visual Basic程序,按其语句代码执行的先后顺序,可以分为___顺序__结构、选择__结构和___循环____ 结构。 18.数组元素下标的下界默认为是_____________,如果要改变其默认值,应使用_____________。 ●判断题 ()1. Visual Basic运行程序的方法只有编译模式。 ()2. 语句Command1.visible=false 与Command1.enabled=false 是等价的。 ()3. InputBox函数和MsgBox函数一样,返回的是字符串。 ()4. 通过类模块,我们不可以根据需要建立自己的控件。 (×)5. 2.1E+5是合法的Visual Basic数据。 ()6. 根据占用内存方式的不同,可将数组分为常规数组和动态数组两种类型。 (√)7. x2是合法的变量名。 ()8. 按照文件的存取方式及其组成结构可以分为两种类型:文本文件和随机文件。

VB循环结构测试题及答案

循环结构测试题(四)一:选择题 1以下()是正确的for….nex结构 (A)for x=1 to step 10 (B)for x=3 to -3 step -3 next x (C ) for x=1 to 10 re: … . Next x If I=10 then goto re 2:下列循环语句能正常结束循环的是( ( A)I=5 do I=I+1 Loop until I<0 (C)I=10 do I=I-1 Loop until I<0 3:下面程序段的运行结果为() for I=3 to 1 step -1 print spc(5-I); next x (D) for x=3 to step 3 next y ) (B) I=1 do I=I+2 loop until I=10 (D) I=6 do I=I-2 loop until

for j=1 to 2*1-1 print “ *' next j print n ext I ___________________ l l _________________________________________________ 4下列程序在文本框输入B)“* * ABCD ”四个字符时,窗体上显示的是**(* * ) * * * * *_* * * * * * * * * private sub text1_cha nge() * * print text1.text; end sub 2:下面程序段显示=i(②)个“ * ”。 for j=1 to 4 For I=1 to n 5n* pri nt n For n =2j to I Print Next j Next I 3:下列第40句共执行了( ③)次,第41句共执行(④ )次 (A) ABCD (B) (D) A (C )AABABCABCD AB 5哪个程序段不能分别正确显示 1!,2!,3!,4!的C ABC (A) 二:填空题 1:要使下列 for I=1 to 4 n=1 for j=1 to I n=n*j FO F X 语句循环执 行 pri nt n 20次,循环变量 for k=( next i ① )to -5 step — for I=1 to 4 for j=1 to I n=1 n=n*j 的 初值应当是: print n n ext i (B) ABCD (D) N=1 J=1 Do while j<=4 n=n*j pri nt n j=j+1 loop

程序设计语言VB单项选择题及答案

《程序设计语言VB》单选题 1. Visual Basic是一种面向()的程序设计语言。 A. 用户 B. 事件 C. 程序 D. 对象 2. 在Visual Basic6.0中规定工程文件的扩展名是()。 A. vbp B. for C. frm D. bas 3. Visual Basic6.0中规定窗体文件的扩展名是()。 A. for B. frm C. vbp D. bas 4. 如何使一个标签或按钮控件在运行时不可用()。 A. 把它的Visible属性设置成False B. 把它的Visible属性设置成True C. 把它的Enabled属性设置成False D. 把它的Enabled属性设置成True 5. 控件的字体可在属性窗口的()属性中调整? A. Font B. Color C. Text D. Caption 6. 若要将某命令按钮设置为默认命令按钮。则应设置为True的属性是()。 A. Value B. Cancel C. Default D. Enabled 7. 在VB中,记录对象数据的是()。 A. 方法 B. 事件 C. 属性 D. 语句 8. 在文本框上显示文本的属性是()。 A. Value B. Text C. Print D. Enabled

9. InputBox函数返回值的类型为()。 A. 字符串 B. 数值 C. 变体 D. 数值或字符串(视输入的数据而定) 10. 设有语句:a = InputBox("请输入数值:","输入示例", "100") 程序执行后,若从键盘上输入数值20并按回车键,则变量a的值是()。 A. 字符串"20" B. 字符串"120" C. 默认值100 D. 数值120 11. 下列控件中可用于接受用户输入文本,又可用于显示文本的是()。 A. Label控件 B. TextBox控件 C. Timer控件 D. CommandButton控件 12. 语句PRINT "25*4"的输出结果是()。 A. 25*4 B. "100" C. 100 D. 出现错误信息 13. 只能用来显示字符信息的控件是()。 A. 文本框 B. 标签框 C. 图片框 D. 图像框 14. 下列可作为Visual Basic变量名的是()。 A. A%A B. 4A C. ?xy D. Stemp 15. 下列哪个符号不能作为VB中的变量名()。 A. timefly B. pass4 C. min4max D. R[8] 16. 在窗体内声明的变量是()。 A. 局部变量 B. 模块变量 C. 公共变量 D. 任意变量 17. 语句Dim x As Integer作用是:将x定义为()变量。 A. 单精度型 B. 整型

VB程序设计题库(全)

程序设计 第一题、 题目:(事件)单击窗体 (响应)求 50 以内所有偶数的和,并在窗体上输出来。 将结果存入变量 S 中。 代码: Dim I As Integer For i = 2 To 50 If (i Mod 2)=0 Then S=s+i End If Next Print (CStr(s)) 第二题 题目:(事件)双击窗体 (响应)求 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 =1To 10

For j=1 To i k=k*j Next s=s+k k=1 Next Print(CStr(s)) 第三题 题目:(事件)单击窗体 (响应)求 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 第四题 题目:(事件)单击窗体 (响应)编写程序求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)) 第五题 题目:(事件)双击窗体 (响应)求 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 第六题

vb控制结构综合练习

控制结构 一、选择题 1.VB 的3种结构化程序设计的3种基 本结构是________。 A)选择结构、过程结构、顺序结构 B)递归结构、选择结构、顺序结构 C)过程结构、转向结构、递归结构 D)选择结构、顺序结构、循环结构 2.用If 语句表示分段函数 33 11 ()11x x f x x x ?-≥=?+=1Thenf=s^3-1 B)Ifx>=1Thenf=x^3-1 Ifx<1Thenf=x^3+1 C)Ifx>=1Thenf=x^3-1 f=x^3+1 D)Ifx<1Thenf=x^3+1Else F=x^3-1 3.执行下面的程序段后显示结果是________。 PrivateSubForm_Click() Dimm IfmThenPrintmElsePrintm+1 EndSub A)0 B)1 C)”” D)False 4.设a=6,则执行x=IIf(a>5,-1,0)后,x 的值为________。 A)5 B)6 C)0 D)–1 5.下面程序段的运行结果是________。 cj=85 Ifcj>90Thendj="A" Ifcj>80Thendj="B" Ifcj>70Thendj="C" Ifcj>60Thendj="D" Ifcj<60Thendj="E" Print"dj=";dj A)dj=B B)dj=C C)dj=D D)dj=E 6.下列语句正确的是________。 A)IfK<3*NAndk>NThenN=k^3 B)IfK<3*NAndk>NThenN=k3 C)IfK<3*N:k>NThenN=k^3 D)IfK<3*NAndk>NThenN=k**3 7.设X=2.0,y=8.0,z=6.0,L=True ,则下列VisualBasic 表达式中值为True 的是________。 A)X+Z>YANDL B)NOT(YNOTL C)NOTLOR(L=Y+X=Z) D)Y+X>=Z+XAND(LANDFALSE) 8.要判断”月收入在2000元以上(含2000元)且5000元以下(不含5000

相关文档
最新文档