篇一:VB编程题 (有答案)
1输入3个数,输出最大的数
X=val(text1)
y=val(text2)
z=val(text3)
if x>=y then
if x>=z then print x
else print z
end if
else if y>=z then print y
end if
2有一元二次方程:aX2+bX+c=0,依次输入a,b,c,判断此方程是否有实根
a=val(text1)
b=val(text2)
c=val(text3)
If b*b-4*a*c>=0 then print “有实根”
else print “无实根”
end if
3输入一个成绩,若大于等于60,则用消息框显示“恭喜!成绩通过!”,若小于60,则弹出消息框显示“抱歉!成绩没有通过!”
N=val (text1)
if n>=60 then msgbox”恭喜!成绩通过!”
else msgbox “抱歉!成绩没有通过!”
end if
4输入一年份,判断它是否为闰年,并显示有关信息(判断闰年的条件是:年份能被4整除但不能被100整除,或者能被400整除)
y=val(text 1)
if y mod 4 =0 and y mod 100 = 0 then print “y是闰年”
else print y “不是闰年?”
end if
5输入学生的百分制成绩,转换输出为五级制成绩,90~100分转换为优秀,80~89转换为良好,70~79转换为中等,60~69转换为及格,0~60转换为不及格。
If mark >=90 then grade= ?优?
else If mark >=80 then grade =?良?
else If mark >=70 then grade =?中?
else If mark >=60 then grade =?及格?
else grade=”不及格”
6随机产生一个三位正整数,然后逆序输出,产生的数与逆序数同时显示。例如,产生246,输出是642。 n=int(r n d *900+100)
dim x%,a%,b%,c%
a=x mod 10
b=int((x mod 100)/10)
c=int(x/100 )
print x;a*100+b*10+c
7 输入两个整数,求它们的最大公约数。
Function gcd %(by val m%,by val n%)
if m<n then t=m : m=n:n=t
R= m mod n
do while (r< > 0)
m=n : n=r :r= mod n
loop gcd =n
end function
8 编程求200--400范围内5的倍数或7的倍数之和。
dim s%,i%
s=0
For i =200 to 400
if i mod 5 =0 or i mod 7 =0 then s=s+i
end if
next i
print s
9 计算100~300之间所有能被3和7整除的数之和
dim s%,i%
s=0
for i=100 to 300
If i mod 3 =0 and i mod 7 =0 then s=s+i
end if
next i
print “s=” &s
10 分别统计1-100中,满足3的倍数、7的倍数的数各有多少。
Dim n1%,n2% ,i%
n1=0:n2=0
For i=1to 100
if i mod 3=0 then n1=n1+1
if i mod 7=0 then n2=n2+1
next i
print n1,n2
11 某次歌曲大奖赛,有7个评委。如果分别输入7个评委对某个参赛者的打分数,按照去掉一个最高分和一个最低分的计算办法,求出该参赛者的平均得分。
Dim a(6) as integer i%,max%,min%,sum%
a(0)=val(text1.text) 省略 a(6)=val(text7.text)
sum=a(0)+a(1)+a(2)+a(3)+a(4)+a(5)+a(6)
max=a(0)
min=a(0)
for i =1 to 6 if min>a(i) then min=a(i)
If max<a(i) then max=a(i)
sum=sum+a(i)
next i
print “平均分”;(sum-min -max)/5
12 输入一串字符,统计其中字母A出现的次数。
dim s$,i%,n%
s=text1
n=0
for i=1 to len(s)
c=mid(s,i,1)
If c=”A” OR c=”a” then n=n+1
next i
print n
13 我国目前有13亿人口,按人口年增长率0.8%计算,多少年后我国人口将超过26亿。
x=13
n=0
do while x<26
x=x*1.008 n=n+1
loop
print “年数为:”;n;”人数为:”;x
m=log(2)/log(1.008)
if int(m)<>m then m= int(m)+1
print m
14 小猴有桃若干,第一天吃掉一半多一个;第二天吃剩下桃子的一半多一个;以后每天都吃尚存桃子的一半多一个,到第7天只剩一个,问小猴原有桃多少
Dim n%,i%
x=1
for i=6 to 1 step -1
x =2*(x+1)
print x
next i
15 求100以内的素数
Dim m%,i%,tag as boolean
for m=3 to 100 step 2
tag=true
for i=2 to m-1
if m mod i=0 Then tag=false
next i
If tag=true then print m&”是素数”
else print m&”不是素数”
End if
next m
16 百元买百鸡问题。假定小鸡每只5角,公鸡每只2元,母鸡每只3元,编程求解购鸡案。
Dim x%,y%,z%,n%
n=0
print “母鸡”,”公鸡”,”小鸡?
for x = 0 to 33
for y=0 to 50
Z=100-x-y
n=n+1
if 3*x+2*y+0.5*z=100 then print x,y,z
next y
next x
17 编程求斐波那契数列前11项。(斐波那契数列:F(0)=f(1)=1, F(n)=F(n-1)+F(n-2) n>=2)
Dim x( ) as integer dim i%
n=16
redim x(n-1)
x(0)=1
x(1)=1
for i=2 to n-1
X(i)=x(i-1)+x(i-2)
next i
for i=0 to n-1
print x(i),
if (i+1)mod 5=0 then print
next
18 将输入的字符串以反序显示。例如:输入“ASDFGT”,显示“TGFDSA”
Dim i,a,b, n as string
n=inputbox(“输入字符”)
i=len(n)
for a=1 to i/2
b=mid(n,a,1)
Mid(n,a,1)=mid(n,i+1-a,1)
mid(n,i+1-a,1)=b
print n
19 随机产生10个[30,100]内的整数,求最大值及所对应的下标
Dim a(0 to 9) as integer i% ,max%, imax%
for i=0 to 9
a(i)=int (r n d *71 +30)
print a(i);
next i
max=a(0)
imax=0
for i = 1 to 9
If a(i)> max then max =a(i):imax =i
next i
print “max=”; max,”imax=”;imax
20 随机产生10个[30,100]内的整数,求最大值、最小值和平均值。
Dim a(0 to 9) as integer i% ,max%, min% ,aver!
for i=0 to 9
a(i)=int (r n d *71 +30)
Next i
min=a(0)
max=a(0)
aver=a(0)
for i=1 to 9
if a(i)>max then max=a(i)
If a(i)<min then main=a(i)
aver=aver+a(i)
next i
for i=0 to 9
print a(i);
next i
Print “max=”;max,”min=”;min, “aver=”;aver/10
21 随机产生10个[30,100]内的整数,求最小值及所对应的下标。
Dim a(0 to 9) as integer i% ,min%, imin%
for i=0 to 9
a(i)=int (r n d *71 +30)
print a(i);
next i
min=a(0)
imin=0
for i = 1 to 9
If a(i)< min then min=a(i) : imin =i
next i
print “min=”; min,”imin=”;imin
22 随机生成一个整型的二维数组,范围在[10,20]之间,以下三角形式输出该数组。
Dim a(4,4) as integer
for i=0 to 4
for j=0 to 4
a(i,j)=int(r nd*11+10)
next j
next i
For i=0 to 4
for i=0 to 4
print a(i,j);
next i
23 随机产生10个1~100的正整数放入数组,显示产生的数,求最大值、最小值、平均值。
Dim a(1 to 10) as integer,i%,max%,min%,aver%
for i=1 to 10
a(i)=int(r n d*100+1)
next i
Min=a(1)
max=a(1)
aver=a(1)
for i=2 to 10
if a(i)>max then max=a(i)
If a(i)<minthen Min=a(i)
aver=aver+a(i)
next i
print “max=”;max,”min=”;min,”aver=”;aver/10
24 利用随机函数生成一个4×4的矩阵的二维矩阵,范围是[20,50]内的整数,输出该矩阵所有数据之和 Dim a(2,3),sum%
for i=0 to 3
for j=0 to 3
a(i,j)=int(r n d*31+20)
next i
next j
For i =0 to 3
for j=0 to 3
print a(i,j);
next j
next i
for i=0 to 3
for j=0 to 3
Sum=sum+a(i,j)
next j
next i
print ”sum=”;sum
25已知有序数组a(),编程插入x(x的值为14)。数组a中的元素分别为{12,6,4,89,75,63,100,20,31}。
Dim a(),i%,k%,x%,n%
a=array(12,6,4,89,75,63,100,20,31)
n=ubound(a)
x=val(text1)
for k=0 to n
if x<a(k) then exit for
next k
redim preserve a(n+1)
for i=n to k step -1
a(i+1)=a(i)
next i
a(k)=x
for i=0 to n+1
print a(i);
next i
篇二:VB程序设计编程考试题及答案
VB程序设计编程考试题及答案
1. 输入3个数,输出最大的数
Private Sub command1_click()
Dim max
For i = 1 To 3
n = Val(InputBox("输入第" & i & "个数"))
If n > max Then
max = n
End If
Next
Print "三个数中最大的数是" ; max
End Sub
2. 有一元二次方程:aX2+bX+c=0,依次输入a,b,c,判断此方程是否有实根 Private Sub Command1_Click()
Dim a, b, c, n
a = Text1
b = Text2
c = Text3
n = b * b - 4 * a * c
If n >= 0 Then
Label4 = "方程有根"
Else
Label4 = "方程无根"
End If
End Sub
3.输入一个百分制的成绩,若大于等于60,则用消息框弹出,显示“恭喜!成绩通过!”,若小于60,则弹出消息框,显示“抱歉!成绩没有通过!
Private Sub Form_Load()
Text1 = ""
End Sub
Private Sub Command1_Click()
Dim n
n = Text1
If n > =60 Then
Val (MsgBox("恭喜!成绩通过!"))
Else
Val (MsgBox("抱歉!成绩没有通过!"))
End If
End Sub
4. 输入一年份,判断它是否为闰年,并显示有关信息。(判断闰年的条件是:年份能被4整
除但不能被100整除,或者能被400整除)
Private Sub Command1_Click()
Dim y%
y = InputBox("请输入年份")
If y Mod 4 = 0 And y Mod 100 <> 0 Or y Mod 400 = 0 Then
Val (MsgBox("闰年!"))
Else
Val (MsgBox("平年!"))
End If
End Sub
5. 输入学生的百分制成绩,转换输出为五级制成绩,90~100分转换为优秀,80~89转换
为良好,70~79转换为中等,60~69转换为及格,0~60转换为不及格。
Private Sub Command1_Click()
a = Val(InputBox("请输入成绩"))
If a > 100 Then Print "超出范围"
If a >= 90 And a <= 100 Then Print "优秀"
If a >= 80 And a < 90 Then Print "良好"
If a >= 70 And a < 80 Then Print "中等"
If a >= 60 And a < 70 Then Print "及格"
If a < 60 Then Print "不及格"
End Sub
6. 随机产生一个三位正整数,然后逆序输出,产生的数与逆序数同时显示。例如,产生246,
输出是642。
Private Sub Command1_Click()
Dim x%, x1%, x2%, x3%
x = Text1
x1 = x Mod 10
x2 = (x Mod 100) \ 10
x3 = x \ 100
Label1 = x1 * 100 + x2 * 10 + x3
End Sub
7. 输入两个整数,求它们的最大公约数。
private Sub Command1_Click()
n1 = InputBox("输入n")
m1 = InputBox("输入m")
If m1 > n1 Then
m = m1: n = n1
Else
m = n1: n = m1
End If
r = m Mod n
Do While r <> 0
m = n
n = r
r = m Mod n
Loop
Print "m n 的最大公约数是:"; n
End Sub
8. 编程求200--400范围内5的倍数或7的倍数之和。(一个数如果同时是7和5的倍数,则
只能加一次。。
Private Sub Command1_Click()
For i = 200 To 400
If i Mod 5 = 0 Or i Mod 7 = 0 Then
Sum = Sum + i
End If
Next i
For i = 200 To 400
If i Mod 5 = 0 And i Mod 7 = 0 Then
Sum = Sum - i
End If
Next i
Print “倍数之和=”; Sum
End Sub
9. 计算100~300之间所有能被3和7整除的数之和
Private Sub Command1_Click()
Dim i
Sum = 0
For i = 100 To 300
If i Mod 3 = 0 And i Mod 7 = 0 Then
Sum = Sum + i
End If
Next i
Print Sum
End Sub
10. 分别统计1-100中,满足3的倍数、7的倍数的数各有多少。
Private Sub Command1_Click()
Dim i, s3, s7
s3 = 0
s7 = 0
For i = 1 To 100
If i Mod 3 = 0 Then
s3 = s3 + 1
End If
Next i
For i = 1 To 100
If i Mod 7 = 0 Then
s7 = s7 + 1
End If
Next i
Print "3的倍数"; s3
Print "7的倍数"; s7
End Sub
11. 某次歌曲大奖赛,有7个评委。如果分别输入7个评委对某个参赛者的打分数,按照去
掉一个最高分和一个最低分的计算办法,求出该参赛者的平均得分。
Private Sub Command1_Click()
Dim max, a(1 To 7), min, s
For i = 1 To 7
a(i) = Val(InputBox("输入第" & i & "个数"))
Next i
max = a(1)
min = a(1)
s = a(1)
For i = 2 To 7
If a(i) > max Then max = a(i)
If a(i) < min Then min = a(i)
s = s + a(i)
Next i
s = s - min - max
s = s / 5
Print "平均分"; s
End Sub
12. 输入一串字符,统计其中字母A(不区分大小写)出现的次数。
Private Sub Command1_Click()
Dim c As String, a As Integer
b = InputBox("请输入字符")
For i = 1 To Len(b)
c = UCase(Mid(b, i, 1))
If c = "A" Then
a = a + 1
End If
Next i
Print "a出现的次数:"; a
End Sub
13. 我国目前有13亿人口,按人口年增长率0.8%计算,多少年后我国人口将超过26亿。
Private Sub Command1_Click()
Dim a, i
a = 13
i = 0
Do While a < 26
a = a * (1.008)
i = i + 1
Loop
Print i
End Sub
14. 小猴有桃若干,第一天吃掉一半多一个;第二天吃剩下桃子的一半多一个;以后每天都
吃尚存桃子的一半多一个,到第7天只剩一个,问小猴原有桃多少?
Private Sub Command1_Click()
Dim a, i
a = 1
For i = 1 To 6
a = 2 * (a + 1)
Next i
Print "小猴原有桃"; a;”只” End Sub
15. 求100以内的素数
Private Sub Command1_Click()
Dim i, j
For i = 2 To 100
For j = 2 To i - 1
If i Mod j = 0 Then Exit For
Next j
If j = i Then Print i
Next i
End Sub
16. 百元买百鸡问题。假定小鸡每只5角,公鸡每只2元,母鸡每只3元,编程求解购鸡方
案。
Private Sub Command1_Click()
Print "小鸡"; ""; "母鸡"; " "; "公鸡"
Print ""
For x = 1 To 100
For y = 1 To 100
For z = 1 To 100
If 0.5 * x + 2 * y + 3 * z = 100 Then
Print ""; x; " "; y; " "; z
End If
篇三:VB程序设计编程考试题及答案
VB程序设计编程考试题及答案
1. 输入3个数,输出最大的数
Private Sub command1_click()
Dim max
For i = 1 To 3
n = Val(InputBox("输入第" & i & "个数"))
If n > max Then
max = n
End If
Next
Print "三个数中最大的数是" ; max
End Sub
2. 有一元二次方程:aX2+bX+c=0,依次输入a,b,c,判断此方程是否有实根 Private Sub Command1_Click()
Dim a, b, c, n
a = Text1
b = Text2
c = Text3
n = b * b - 4 * a * c
If n >= 0 Then
Label4 = "方程有根"
Else
Label4 = "方程无根"
End If
End Sub
3.输入一个百分制的成绩,若大于等于60,则用消息框弹出,显示“恭喜!成绩通过!”,若小于60,则弹出消息框,显示“抱歉!成绩没有通过!
Private Sub Form_Load()
Text1 = ""
End Sub
Private Sub Command1_Click()
Dim n
n = Text1
If n > =60 Then
Val (MsgBox("恭喜!成绩通过!"))
Else
Val (MsgBox("抱歉!成绩没有通过!"))
End If
End Sub
4. 输入一年份,判断它是否为闰年,并显示有关信息。(判断闰年的条件是:年份能被4整
除但不能被100整除,或者能被400整除)
Private Sub Command1_Click()
Dim y%
y = InputBox("请输入年份")
If y Mod 4 = 0 And y Mod 100 <> 0 Or y Mod 400 = 0 Then
Val (MsgBox("闰年!"))
Else
Val (MsgBox("平年!"))
End If
End Sub
5. 输入学生的百分制成绩,转换输出为五级制成绩,90~100分转换为优秀,80~89转换
为良好,70~79转换为中等,60~69转换为及格,0~60转换为不及格。
Private Sub Command1_Click()
a = Val(InputBox("请输入成绩"))
If a > 100 Then Print "超出范围"
If a >= 90 And a <= 100 Then Print "优秀"
If a >= 80 And a < 90 Then Print "良好"
If a >= 70 And a < 80 Then Print "中等"
If a >= 60 And a < 70 Then Print "及格"
If a < 60 Then Print "不及格"
End Sub
6. 随机产生一个三位正整数,然后逆序输出,产生的数与逆序数同时显示。例如,产生246,
输出是642。
Private Sub Command1_Click()
Dim x%, x1%, x2%, x3%
x = Text1
x1 = x Mod 10
x2 = (x Mod 100) \ 10
x3 = x \ 100
Label1 = x1 * 100 + x2 * 10 + x3
End Sub
7. 输入两个整数,求它们的最大公约数。
private Sub Command1_Click()
n1 = InputBox("输入n")
m1 = InputBox("输入m")
If m1 > n1 Then
m = m1: n = n1
Else
m = n1: n = m1
End If
r = m Mod n
Do While r <> 0
m = n
n = r
r = m Mod n
Loop
Print "m n 的最大公约数是:"; n
End Sub
8. 编程求200--400范围内5的倍数或7的倍数之和。(一个数如果同时是7和5的倍数,则
只能加一次。。
Private Sub Command1_Click()
For i = 200 To 400
If i Mod 5 = 0 Or i Mod 7 = 0 Then
Sum = Sum + i
End If
Next i
For i = 200 To 400
If i Mod 5 = 0 And i Mod 7 = 0 Then
Sum = Sum - i
End If
Next i
Print “倍数之和=”; Sum
End Sub
9. 计算100~300之间所有能被3和7整除的数之和
Private Sub Command1_Click()
Dim i
Sum = 0
For i = 100 To 300
If i Mod 3 = 0 And i Mod 7 = 0 Then
Sum = Sum + i
End If
Next i
Print Sum
End Sub
10. 分别统计1-100中,满足3的倍数、7的倍数的数各有多少。
Private Sub Command1_Click()
Dim i, s3, s7
s3 = 0
s7 = 0
For i = 1 To 100
If i Mod 3 = 0 Then
s3 = s3 + 1
End If
Next i
For i = 1 To 100
If i Mod 7 = 0 Then
s7 = s7 + 1
End If
Next i
Print "3的倍数"; s3
Print "7的倍数"; s7
End Sub
11. 某次歌曲大奖赛,有7个评委。如果分别输入7个评委对某个参赛者的打分数,按照去
掉一个最高分和一个最低分的计算办法,求出该参赛者的平均得分。
Private Sub Command1_Click()
Dim max, a(1 To 7), min, s
For i = 1 To 7
a(i) = Val(InputBox("输入第" & i & "个数"))
Next i
max = a(1)
min = a(1)
s = a(1)
For i = 2 To 7
If a(i) > max Then max = a(i)
If a(i) < min Then min = a(i)
s = s + a(i)
Next i
s = s - min - max
s = s / 5
Print "平均分"; s
End Sub
12. 输入一串字符,统计其中字母A(不区分大小写)出现的次数。
Private Sub Command1_Click()
Dim c As String, a As Integer
b = InputBox("请输入字符")
For i = 1 To Len(b)
c = UCase(Mid(b, i, 1))
If c = "A" Then
a = a + 1
End If
Next i
Print "a出现的次数:"; a
End Sub
13. 我国目前有13亿人口,按人口年增长率0.8%计算,多少年后我国人口将超过26亿。
Private Sub Command1_Click()
Dim a, i
a = 13
i = 0
Do While a < 26
a = a * (1.008)
i = i + 1
Loop
Print i
End Sub
14. 小猴有桃若干,第一天吃掉一半多一个;第二天吃剩下桃子的一半多一个;以后每天都
吃尚存桃子的一半多一个,到第7天只剩一个,问小猴原有桃多少?
Private Sub Command1_Click()
Dim a, i
a = 1
For i = 1 To 6
a = 2 * (a + 1)
Next i
Print "小猴原有桃"; a;”只” End Sub
15. 求100以内的素数
Private Sub Command1_Click()
Dim i, j
For i = 2 To 100
For j = 2 To i - 1
If i Mod j = 0 Then Exit For
Next j
If j = i Then Print i
Next i
End Sub
16. 百元买百鸡问题。假定小鸡每只5角,公鸡每只2元,母鸡每只3元,编程求解购鸡方
案。
Private Sub Command1_Click()
Print "小鸡"; ""; "母鸡"; " "; "公鸡"
Print ""
For x = 1 To 100
For y = 1 To 100
For z = 1 To 100
If 0.5 * x + 2 * y + 3 * z = 100 Then
Print ""; x; " "; y; " "; z
End If
《VB程序设计题输入学生的百分制成绩》
由:免费论文网互联网用户整理提供,链接地址:
http://m.csmayi.cn/show/118785.html
转载请保留,谢谢!
- 上一篇:空军双学活动心得体会
- 下一篇:嘎达梅林主持词