VB程序设计编程考试题及答案文档格式.docx
《VB程序设计编程考试题及答案文档格式.docx》由会员分享,可在线阅读,更多相关《VB程序设计编程考试题及答案文档格式.docx(14页珍藏版)》请在冰豆网上搜索。
Label4="
方程无根"
3.输入一个百分制的成绩,若大于等于60,则用消息框弹出,显示“恭喜!
成绩通过!
”,若小于60,则弹出消息框,显示“抱歉!
成绩没有通过!
PrivateSubForm_Load()
Text1="
"
Dimn
n=Text1
=60Then
Val(MsgBox("
恭喜!
Else
抱歉!
4.输入一年份,判断它是否为闰年,并显示有关信息。
(判断闰年的条件是:
年份能被4整除但不能被100整除,或者能被400整除)
Dimy%
y=InputBox("
请输入年份"
)
IfyMod4=0AndyMod100<
>
0OryMod400=0Then
闰年!
平年!
5.输入学生的百分制成绩,转换输出为五级制成绩,90~100分转换为优秀,80~89转换为良好,70~79转换为中等,60~69转换为及格,0~60转换为不及格。
a=Val(InputBox("
请输入成绩"
Ifa>
100ThenPrint"
超出范围"
=90Anda<
=100ThenPrint"
优秀"
=80Anda<
90ThenPrint"
良好"
=70Anda<
80ThenPrint"
中等"
=60Anda<
70ThenPrint"
及格"
Ifa<
60ThenPrint"
不及格"
6.随机产生一个三位正整数,然后逆序输出,产生的数与逆序数同时显示。
例如,产生246,输出是642。
Dimx%,x1%,x2%,x3%
x=Text1
x1=xMod10
x2=(xMod100)\10
x3=x\100
Label1=x1*100+x2*10+x3
7.输入两个整数,求它们的最大公约数。
privateSubCommand1_Click()
n1=InputBox("
输入n"
m1=InputBox("
输入m"
Ifm1>
n1Then
m=m1:
n=n1
m=n1:
n=m1
EndIf
r=mModn
DoWhiler<
0
m=n
n=r
Loop
mn的最大公约数是:
;
n
8.编程求200--400范围内5的倍数或7的倍数之和。
(一个数如果同时是7和5的倍数,则只能加一次。
。
Fori=200To400
IfiMod5=0OriMod7=0Then
Sum=Sum+i
Nexti
IfiMod5=0AndiMod7=0Then
Sum=Sum-i
Print“倍数之和=”;
Sum
9.计算100~300之间所有能被3和7整除的数之和
Dimi
Sum=0
Fori=100To300
IfiMod3=0AndiMod7=0Then
PrintSum
10.分别统计1-100中,满足3的倍数、7的倍数的数各有多少。
Dimi,s3,s7
s3=0
s7=0
Fori=1To100
IfiMod3=0Then
s3=s3+1
IfiMod7=0Then
s7=s7+1
3的倍数"
s3
7的倍数"
s7
11.某次歌曲大奖赛,有7个评委。
如果分别输入7个评委对某个参赛者的打分数,按照去掉一个最高分和一个最低分的计算办法,求出该参赛者的平均得分。
Dimmax,a(1To7),min,s
Fori=1To7
a(i)=Val(InputBox("
max=a
(1)
min=a
(1)
s=a
(1)
Fori=2To7
Ifa(i)>
maxThenmax=a(i)
Ifa(i)<
minThenmin=a(i)
s=s+a(i)
s=s-min-max
s=s/5
平均分"
s
12.输入一串字符,统计其中字母A(不区分大小写)出现的次数。
DimcAsString,aAsInteger
b=InputBox("
请输入字符"
Fori=1ToLen(b)
c=UCase(Mid(b,i,1))
Ifc="
A"
Then
a=a+1
Nexti
Print"
a出现的次数:
a
13.我国目前有13亿人口,按人口年增长率0.8%计算,多少年后我国人口将超过26亿。
Dima,i
a=13
i=0
DoWhilea<
26
a=a*(1.008)
i=i+1
Loop
Printi
14.小猴有桃若干,第一天吃掉一半多一个;
第二天吃剩下桃子的一半多一个;
以后每天都吃尚存桃子的一半多一个,到第7天只剩一个,问小猴原有桃多少?
a=1
Fori=1To6
a=2*(a+1)
小猴原有桃"
a;
”只”
15.求100以内的素数
Dimi,j
Fori=2To100
Forj=2Toi-1
IfiModj=0ThenExitFor
Nextj
Ifj=iThenPrinti
16.百元买百鸡问题。
假定小鸡每只5角,公鸡每只2元,母鸡每只3元,编程求解购鸡方案。
小鸡"
母鸡"
公鸡"
Forx=1To100
Fory=1To100
Forz=1To100
If0.5*x+2*y+3*z=100Then
x;
y;
z
Nextz
Nexty
Nextx
17.编程求斐波那契数列前11项。
(斐波那契数列:
F(0)=f
(1)=1,F(n)=F(n-1)+F(n-2)n>
=2)
DimF(11),iAsLong
F(0)=1
F
(1)=1
Fori=2To10
F(i)=F(i-1)+F(i-2)
Fori=0To11
PrintF(i);
18.将输入的字符串以反序显示。
例如:
输入“ASDFGT”,显示“TGFDSA”
Dima,b,c,d,n
a=InputBox("
输入字符串"
n=Len(a)
Forb=1ToInt(n\2)
c=Mid(a,b,1)
Mid(a,b,1)=Mid(a,n-b+1,1)
Mid(a,n-b+1,1)=c
Nextb
Printa
19.随机产生10个[30,100]内的整数,求最大值及所对应的下标
Dima(1To10),m
Randomize
ForI=1To10
a(I)=Int(Rnd*71)+30
Printa(I)
NextI
Max=a
(1)
ForI=2To10
Ifa(I)>
MaxThenMax=a(I):
m=I
max="
Max
max的下标为"
m
20.随机产生10个[30,100]内的整数,求最大值、最小值和平均值。
Dima(1To10)
Fori=1To10
a(i)=Int(Rnd*71)+30
Printa(i)
Min=a
(1)
Avg=a
(1)
MaxThenMax=a(i)
MinThenMin=a(i)
Avg=Avg+a(i)
Avg=Avg/10
min="
Min
avg="
Avg
EndSub
21.随机产生10个[30,100]内的整数,求最小值及所对应的下标。
Ifa(I)<
MinThenMin=a(I):
min的下标为"
22.随机生成一个整型的二维数组,范围在[10,20]之间,以下三角形式输出该数组。
Dima(1To10,1To10),i,jAsInteger
Forj=1To10
a(i,j)=Int(Rnd*11+10)
Forj=1Toi
PrintSpc(3);
a(i,j);
Print
23.随机产生10个1~100的正整数放入数组,显示产生的数,求最大值、最小值、平均值。
a(i)=Int(Rnd*101)+1
24.利用随机函数生成一个4×
4的矩阵(即二维矩阵),范围是[20,50]内的整数,输出该矩阵所有数据之和
Dima%(4,5),sum
Fori=1To4
Forj=1To4
a(i,j)=Int(Rnd*31)+20
Printa(i,j);
sum=sum+a(i,j)
Print'
换行
sum="
sum
25.已知有序数组a(),编程插入x(x的值为14)。
数组a中的元素分别为{12,6,4,89,75,63,100,20,31}。
Dima(),i%,k%,x%,n%
a=Array(4,6,12,20,31,63,75,89,100)
n=UBound(a)
x=Val(InputBox("
请输入所要插入数"
Fork=0Ton
Ifx<
a(k)ThenExitFor
Nextk
ReDimPreservea(n+1)
Fori=nTokStep-1
a(i+1)=a(i)
a(k)=x
Fori=0Ton+1
Printa(i);
26.编写一函数,计算Double类型一维数组所有元素的平均值。
27.编一子过程ProcMin,求一维数组a中的最小值,子过程的形参自己确定
PrivateSubcommand1_Click()
Dima(1To10),min,i%
a(i)=Int(Rnd*101)
CallProcMin(a(),min)
min="
min
SubProcMin(b(),min)
Dimi%
min=b(LBound(b))
Fori=LBound(b)+1ToUBound(b)
Ifb(i)<
minThenmin=b(i)
28.编一子过程ProcMin,求一维数组a中的最小值,子过程的形参自己确定。
PrivateSubForm_Click()
Dima(1To10),amin,i%
CallProcMin(a(),amin)
amin="
amin
29.编一个函数,求一维数组a中的最大值,函数的形参自己确定。
Dima(1To10),amax,i%
CallProcMax(a(),amax)
amax="
amax
SubProcMax(b(),max)
Ifb(i)>
maxThenmax=b(i)
30.编写一个过程计算并输出区间[100,1000]内所有素数的和(要求判断素数使用过程(函数或子过程)来实现。
调用该过程。
(提示:
只能被1和自身整除的自然数称为素数。