人人范文网 范文大全

VB编程题及答案

发布时间:2020-03-04 00:09:56 来源:范文大全 收藏本文 下载本文 手机版

1定义一个下标上界为10整型数组,并用随机函数为其赋值(值处于[0,100]之间),计算数组中所有偶数的和。 Private Sub Command1_Click() Randomize Dim a%(10) Dim i%, s% For i = 0 To 10 a(i) = 101 * Rnd() Next For i = 0 To 10 If a(i) Mod 2 = 0 Then s = s + a(i) End If Next Print \"所有偶数的和为\", s 2 设 S=35,C=0.3,编写程序,计算并输出下面级数的部分和。结果取小数点后面7位。 C/1!-C^3/3!+C^5/5!- „ +(-1)^(S-1)*C^(2*S-1)/(2*S-1)!+ „

参考答案如下:

Private Sub Command1_Click()

Dim n As Integer

Dim x As Double

x = 0.3

Dim item As Double

Dim sum As Double

Dim fac As Double

For n = 1 To 35

fac = 1

Dim i As Integer

For i = 1 To 2 * n1) * x ^ (2 * n1

If n Mod i = 0 Then

isprime = False

Exit Function

End If

Next

isprime = True End Function Private Sub Command1_Click()

Dim i As Integer

Dim sum As Long

For i = 1000 To 2000

If isprime(i) = True Then

sum = sum + i

End If

Next

Text1.Text = \"sum=\" & sum End Sub \'sum= 419684 13.编写一个函数,求某个数的阶乘。

调用该函数计算22!。

Public Function fact(ByVal n As Integer) As

Long

Dim i As Integer, f As Long

f = 1

For i = 1 To n

f = f * i

Next i

fact = f End Function Private Sub Command1_Click()

Dim m As Integer, i As Integer, s As Long

m = InputBox(\"输入一个正整数:

\")

s = fact(m)

MsgBox (s) End Sub ‘479001600 14.编写子过程,计算并输出3000-4000之间的素数之和C与其中最小的素数MIN。

Private Sub Command1_Click()

Dim sum, i, min As Integer

min=0

For i = 3000 To 4000

Dim isprime As Boolean = True

Dim j As Integer

For j = 2 To i1) * n * (n + 1)

sum = sum + item

n = n + 2

Loop While Abs(sum)

MsgBox (sum) End Sub \'sum=-68

19 编写一个函数,其功能为求两个数的最大公约数。

Public Function

gcd(ByVal m As Integer, ByVal n As Integer) As Integer

Dim i As Integer If m > n Then Dim t As Integer t = m: m = n: n = t End If For i = m To 1 Step -1 If m Mod i = 0 And n Mod i = 0 Then gcd = i Exit Function

End If

Next End Function

20.用InputBox输入一个年份,判断该年份是否是平年,若是则输出“Yes”,否则输出“No”。

Dim year As Integer year = Val(InputBox(\"\")) If(year Mod 400 = 0)Or(year Mod 4 = 0 And year Mod 1000)

Then MsgBox(\"No\") Else

MsgBox(\"Yes\")

End If

21 输入两个整数m、n,编写程序使得

m>=n,并输出m、n的值。

Dim m, n As Integer

m = Val(InputBox(\"\")) n = Val(InputBox(\"\"))

If m

MsgBox(\"m=\" & m & \";\" & \"n=\" & n)

22求下面级数前n项的和S,在求和

过程中,当某项(注意,该项参与求和)的绝对值小于0.0001 时求和终止。结果取 5 位小数。

1-1/3+1/5-1/7+1/9-1/11+ „ +(-1)^(n-1)*1/(2n-1)+ „

Private Sub Command1_Click()

Dim n As Integer

Dim item As Double

Dim sum As Double

i =

1 Do While True

item = (-1) ^ (i1)

整数:\") sum = sum + item If Abs(item)

MsgBox (Format(sum, \"0.0000\"))

End Sub \'

sum=0.78545

23 编写一个函数,其功能为判断一个3位正整数是否是\"水仙花数\"。(\"水仙花数\"是指各位数字的立方和与该数相等,如153=1^3+5^3+3^3,153就是水仙花数。)

Public Function Panduan(ByVal x As Integer) As Boolean

Dim a As Integer, b As Integer, c As Integer

a = x \\ 100

b = (x Mod 100) \\ 10

c = x Mod 10

If x = a ^ 3 + b ^ 3 + c ^ 3 Then

Panduan = True

Else

Panduan = False

End If

End Function Private Sub Command1_Click()

Dim i As Integer

i = InputBox(\"输入一个3位正

MsgBox (Panduan(i)) End Sub

24 定义一个下标上界为10整型数组,并为其赋值(值处于[0,100]之间), 计算数组中所有不小于60的数据的和。

Dim a(10), i, sum As Integer

For i = 0 To 10

a(i) = Int(Rnd() * 101)

Next

For i = 0 To 10

If a(i) 〉=60 Then

sum = sum + a(i)

End If

Next

print sum

25.编写程序,求下面级数前n项的和s=1/1!-1/2!+1/3!-1/4!+....+(-1)^(n-1)*1/n!+.....。

\'求和过程当某一项的绝对值小于0.0001时结束(注意,该项参与求和),计算并输出所求的s,要求结果保留6位小数。 Private Sub Command1_Click()

Dim m As Double, n As Long, s As Double, f As Integer

s = 0: n = -1: m = 1: f = 1 Do While 1 / m >= 0.0001 m = m * f f = f + 1 n = -n

s = s + n / m Loop

s = Format(s, \"0.000000\") Print s End Sub

26输入一个四位数,分别输出它的个位数字,是十位数字,百位数字,千位数字。 Private Sub Command1_Click() Dim a%, j%, k%, i%, m% a = InputBox(\"请输入一个四位整数\") j = a \\ 1000 k = a \\ 100 Mod 10 i = a \\ 10 Mod 10 m = a Mod 10 Print \"个位数字;\"; m Print \"十位数字;\"; i Print \"百位数字;\"; k Print \"千位数字;\"; j End Sub 6.计算sum=2!+4!+6!+...+10! Private Sub Command1_Click() Dim a%, i% Sum = 0 i = 1: a = 1 Do a = 2 * i If i Mod 2 = 0 Then Sum = Sum + a End If i = i + 1 Loop While i

27编写程序,计算并输出下面级数前n项(n=20)中奇数项的和。1*2*3-2*3*4+3*4*5-4*5*6+....+(-1)^(n-1)*n*(n+1)*(n+2)+...Private Sub Command1_Click() Dim s!, i% For i = 1 To 20 Step 2 s = s + i * (i + 1) * (i + 2) Next MsgBox (s) End Sub

28随机输出一个小写字母。 Private Sub Command1_Click() Dim a As String Randomize

a = Chr(Int(97 + 26 * Rnd)) MsgBox (a) End Sub、

29编写程序,计算并输出下面级数前n项(n=50)中偶数项的和。s=1*2+2*3+3*4+4*5+....+n*(n+1)+.....Private Sub Command1_Click() Dim s!, i%

For i = 2 To 50 Step 2 s = s + i * (i + 1) Next

MsgBox (s) End Sub

30斐波那契数列是由计算某类动物繁殖增长量而提出的。数列的前两项是

1、1,以后的每一项都是其相邻前两项的和。编写程序求:数列前30项和。

Private Sub Command1_Click() Dim a&, b&, c&, i%

a = 1: b = 1: c = 2: Sum = 0 For i = 1 To 28 c = a + b a = b b = c

Sum = Sum + c Next

MsgBox (Sum) End Sub

31输入三个数a、b、c,编写程序使得a

a = Val(InputBox(\"请输入a的值!\")) b = Val(InputBox(\"请输入b的值!\")) c = Val(InputBox(\"请输入c的值!\")) If a > b Then t = b b = a a = t End If

If a > c Then t = a a = c c = t End If If b > c Then t = b b = c c = t End If

Print a, b, c End Sub 32编写程序,设n=20,x=3.4,计算并输出S(n)的值,要求结果保留5位小数。S(n)=Inx/x+In2x/x^2+In3x/x^3+.....+In(n*x)/x^n+.....Private Sub Command1_Click() Dim x#, i% Dim S(20) As Double n = 20 x = 3.4 For i = 1 To 20 S(20) = S(20) + Log(i * x) / (x ^ i) Next Print Format(S(20), \"0.00000\") End Sub

33输入任意三个数 找出其中最大的数 Private Sub Command1_Click() Dim a!, b!, c!, Max! a = Text1.Text b = Text2.Text c = Text3.Text Max = a If b > Max Then Max = b If c > Max Then Max = c Text4.Text = Max End Sub

输出1到100之间的素数 Print 1; 2; a = 3 While a

While i

If a Mod i = 0 Then

i = a

End If

i = i + 1

Wend

If i = a Then

Print a;

End If a = a + 1 Wend、

34打印斐波那契数列20项 Private sub form_click() A=0 B=1

Text1.text=text1.text&str(A)&str(B)&chr(13)& Chr(10) For i=1 to 9 A=A+B B=A+B

Text1.text=text1.text&str(A)&str(B)&chr(13)& Chr(10) Next i

35判定素数

A=val(inputbox(“input a”)) For i=2 to a

If(a mod i=0) then Exit for End if Next i

If i

36求sum

1+(1+2)+(1+2+3)………….n = Val(Text1.Text) sum = 0

For i = 1 To n sum1 = 0 For j = 1 To i sum1 = sum1 + j Next j sum = sum + sum1 Next i Text2.Text = sum

37求50名学生的平均成绩并统计高于平均分的人

Dim c(1 to 50) as integer Dim p!,n%,i% P=0 For i=1 to 50 C(i)=inputbox(“请输入第”&i&”位学生的成绩”

P=p+c(i) Next i P=p/50 N=0 For i= 1 to 50 If c(i) >p then n=n+1 Next i Print “平均分=”;”高于平均分的人数=”;n

138 设C=0.3,编写程序,计算并输出下面级数的部分和。结果取小数点后面7位。 C/1!-C^3/3!+C^5/5!- „ +(-1)^(S-1)*C^(2*S-1)/(2*S-1)!+ „ Dim n as integer Dim x as integer X=0.3 Dim item as double Dim sum as double Dim fact as double For n=1 to 35 Fact=1 Dim I as integer For I =1 to 2*n-1 Fact=fact*i Next Item =(-1)^(n-1)*x^(2*n-1)/fact Sum=sum+item Next Sum=int(sum*10000000+0,.5)/100000000

Magbox

39已知A、B为整数A和B的立方和为1000求所有的A、B。

Dim x ,y as integer For x=0 to10 For y=0 to10

If x^3+y^3=1000 then Msgbox(x=;y=)

40 定义一个下标上界为30的单精度数组,设置好其初值(值处于[20,90]),计算数组中所有元素的均值。 Dim array (30) as single For i=0

Array(i)=20+int(rnd()*71) Next i

Dim sum% For i=0 to 30

Sum=sum+array(i) Next i

Print sum 31 End sum

41求下面级数前S项中奇数项的和sum。在求和过程中,以第一个奇数项的数值大于 10000 的项为末项。1!-2!+3!-4!+ „ +(-1)^(S-1)*S!+ „

Dim n as integer Dim item double Dim I as integer Dim sum as double Dim abs as double Do while true Item =1 For I =1 to n Item = item*1 Next i

Sum=sum +item N=n+2

If abs (item)>10000 then Exit do Else N=n+2 End if Loop Msgbox(sum)

42计算sum=1/1!+1/2!+1/3!+....+1/10! Private Sub Command1_Click() Dim m As Integer, n As Long, s As Double n = 1 s = 0 For m = 1 To 10 n = n * m s = s + 1 / n Next Print s

42求从[j,s]区间内的素数及素数和(这里需要用到三个文本框和2个按钮) \'Private Sub Command1_Click() Dim n%, i%, j%, s% Sum = 0 j = Val(Text1.Text()) s = Val(Text2.Text()) For n = j To s For i = 2 To n1 Then Sum = Sum + n: Print n Next n Text3.Text = Sum End Sub Private Sub Command2_Click() Cls Text1.Text = \"\" Text2.Text = \"\" Text3.Text = \"\" Text1.SetFocus End Sub 43某分段函数描述如下:(1)当x为偶数时,y的值为x的二分之一。(2)当x为奇数时,y的值为x的二倍。 Private Sub Command1_Click() Dim x!, y! x = Val(InputBox(\"请输入X的值!\"))

If x Mod 2 = 0 Then y = x / 2 Else y = 2 * x MsgBox (y) End If End Sub

44随机输出一个小写字母。 Private Sub Command1_Click() Dim a As String Randomize

a = Chr(Int(97 + 26 * Rnd)) MsgBox (a) End Sub、

45编写程序,计算并输出下面级数前n项(n=50)中偶数项的和。s=1*2+2*3+3*4+4*5+....+n*(n+1)+.....Private Sub Command1_Click() Dim s!, i%

For i = 2 To 50 Step 2 s = s + i * (i + 1) Next

MsgBox (s) End Sub

46编写程序,设n=20,x=3.4,计算并输出S(n)的值,要求结果保留5位小数。S(n)=Inx/x+In2x/x^2+In3x/x^3+.....+In(n*x)/x^n+.....

Private Sub Command1_Click() Dim x#, i%

Dim S(20) As Double n = 20 x = 3.4

For i = 1 To 20

S(20) = S(20) + Log(i * x) / (x ^ i) Next

Print Format(S(20), \"0.00000\") End Sub

47设 S=35,C=0.3,编写程序,计算并输出下面级数的部分和。结果取小数点后面7位。 C/1!-C^3/3!+C^5/5!- „ +(-1)^(S-1)*C^(2*S-1)/(2*S-1)!+ „

参考答案如下:

Private Sub Command1_Click()

Dim n As Integer

Dim x As Double

x = 0.3

Dim item As Double

Dim sum As Double

Dim fac As Double

For n = 1 To 35

fac = 1

Dim i As Integer

For i = 1 To 2 * n1) * x ^ (2 * n1

fac = fac * i

Next

item = (-1) ^ (n1) / fac

sum = sum + item

Next

sum = Int(sum * 10000000 + 0.5) / 10000000

MsgBox (sum) End Sub

\'

sum = 0.479426

49编写子过程,计算并输出3000-4000之间的素数之和C与其中最小的素数MIN。

Private Sub Command1_Click()

Dim sum, i, min As Integer

min=0

For i = 3000 To 4000

Dim isprime As Boolean = True

Dim j As Integer

For j = 2 To ia(1)) * (pa(3))) MsgBox (s) Else MsgBox (\"不能构成三角形\") End If End Sub

趣味编程题整理及答案

VB编程题(循环部分总结题目

vb语言编程教案

程序设计语言VB综合设计题及答案

VB判断题及答案

VB试题及答案

vb选择题及答案

vb试题及答案

vb练习题及答案

c语言编程题答案

VB编程题及答案
《VB编程题及答案.doc》
将本文的Word文档下载到电脑,方便编辑。
推荐度:
点击下载文档
点击下载本文文档