VB程序改错题文档格式.docx
《VB程序改错题文档格式.docx》由会员分享,可在线阅读,更多相关《VB程序改错题文档格式.docx(16页珍藏版)》请在冰豆网上搜索。
C
EndSub
2.题目:
程序功能为打印下列图形:
*
**
***
****
*****
Cls
DimiAsInteger
DimjAsInteger
Fori=1To7
Forj=1To5
*"
Loop
Print
Nexti
3.题目:
本程序的功能是随机产生的10个两位正整数,并进行递减排序。
PrivateSubCreateRND()
DimTempAsInteger
DimIAsInteger
DimNAsInteger
DimX(10)AsInteger
DimJAsInteger
N=10
数据:
ForI=1ToN
X(I)=Int(Rnd()*90)
PrintX(I);
NextI
Print
排序:
ForI=0ToN-1
ForJ=I+1ToN
IfX(I)>
X(J)Then
Temp=X(I)
X(J)=X(I)
X(I)=Temp
EndIf
NextJ
PrivateSubCommand1_Click()
CreateRND
4.题目:
随机产生并输出100以内大于50的20个整数,输
出时每5个数一行。
-----------------------------------------------
RandomizeTimer
DimiAsInteger,maAsInteger
i=1
DoUntili<
20
ma=Rnd()*100\1
Ifma>
50Then
Printma;
i=i+1
Ifi\5=0Then
EndIf
Loop
5题目:
以下程序段用于计算5的N次方。
DimnAsInteger,kAsInteger,sAsLong
n=InputBox("
Inputn"
)
k=0
s=0
DoWhilek<
=n
s=s*5
k=k+1
Next
5的"
"
n次方是"
s
6.题目:
下面程序可输出如下图形:
*******
*********
------------------------------------------------
DimmAsInteger,nAsInteger,sAsString,iAsInteger,jAsInteger
n=4
m=1
s="
Fori=5To1Step-1
PrintSpc(n)
Forj=1To2*m-1
Prints;
n=n+1
m=m-1
7.题目:
用自定义函数的方法求sum(x),求当-1≤x≤1时,
sum(x)=x/2!
+x^2/3!
+x^3/4!
+……+x^n/(n+1)!
,
当x〉1或x〈-1时,函数值为0。
当n〈=0时,输入数
据错误。
X、N都是由用户输入。
DimsAsSingle
DimnAsInteger,xAsSingle,kAsInteger
Pleaseinputaintegervalue:
x=Val(InputBox("
Pleaseinputasinglevalue:
Ifn<
=0Then
k=MsgBox("
数据输入错误!
vbRetryCancel+vbExclamation,"
数据输入"
ExitSub
s=Sum(x,n)
Prints
FunctionSum(xAsSingle,nAsInteger)
DimiAsInteger,ssAsLong
ss=1
Sum=0
Ifx>
1Orx<
-1Then
ExitDo
Else
Fori=2Ton
ss=ss*i
Sum=x^(i-1)/ss
Nexti
8.题目:
以下程序功能是输入三个数,由大到小排序。
DimAAsInteger
DimBAsInteger
DimCAsInteger
DimnTempAsInteger
A=Val(InputBox("
Pleaseinputfirstinteger"
"
输入正整数"
B=Val(InputBox("
Pleaseinputsecondinteger"
C=Val(InputBox("
Pleaseinputthirdinteger"
IfA<
=CThen
nTemp=A
A=B
B=nTemp
IfB<
A=C
C=nTemp
=BThen
nTemp=B
B=C
Theintegersinorderis"
A;
B;
9.题目:
用辗转相除法求两个整数的最大公约数。
Functiongcd(ByValmAsInteger,ByValnAsInteger)AsInteger
DimrAsInteger
r=mModn
DoWhiler<
>
0
n=m
n=r
gcd=r
DimaAsInteger,bAsInteger,cAsInteger
a=InputBox("
输入一个整数"
b=InputBox("
a=Val(a)
b=Val(b)
Callgcd(a,b)
Printa,b,c
10.题目:
下面的程序用“冒泡”法完成数组a中的10个整数
按升序排列,请修正程序中错误。
Dima
DimiAsInteger,jAsInteger,a1AsInteger
a=Array(-2,5,24,58,43,-10,87,75,27,83)
Fori=1To9
Forj=i+1To9
Ifa(j)>
=a(i)Then
a1=a(i
a(i)=a(j)
a(j)=a(i)
Fori=0To9
Printa(i)
11.题目:
程序功能为求解一元二次方程的实根,请修正程序中错误。
PrivateSubForm_Load()
Dima!
b!
c!
root1#,root2#,workAsDouble
a=Val(InputBox("
请输入系数a的值"
b=Val(InputBox("
请输入系数b的值"
c=Val(InputBox("
请输入系数c的值"
work=b*2-4*a*c
Ifwork>
=0Anda<
0Then
root1=(Sqr(work))/(2*a)
root2=(Sqr(work))/(2*a)
Debug.Print"
有二个实根"
+Str$(root1)+"
"
+Str$(root2)
无实根!
12.题目:
下面程序的作用是产生100以内的全部素数,并
按每行5个数据输出。
PrivateFunctionprime(ByValnAsInteger)
DimiAsInteger
prime=1
=1Thenprime=0
Fori=12Ton-1
IfnModi=0Thenprime=0
DimiAsInteger,kAsInteger
Fori=1To100
Ifprime(i)=1Then
PrintTab((kMod5)*8);
i
IfkMod4=0ThenPrint;
13.题目:
输出40以内能够被3整除的数,要求输出结果为5
个数一行。
DimxAsInteger
Forx=1To40
If(x/3)=(x\3)Then
Printx
IfiMod3=0Then
Nextx
14.题目:
程序功能:
求1+2+3……,直到其和超出3000为
止,并输入结果。
DimsAsSingle
s=1
Do
i=i+21
s=s+i
Loops>
3000
Print"
从1到:
i;
的和是"
15.题目:
以下程序段用于输出100-300的所有素数
DimnAsInteger,kAsInteger,iAsInteger,switAsInteger
Forn=101To300Step2
k=Int(Sqr(n))
i=2
swit=1
Whileswit=0
IfnModi=0Then
swit=1
i=i-1
Wend
Ifswit=0Then
Printn;
Nextn
16.题目:
17.题目:
输入两个正整数m和n,求其最大公约数。
DimmAsInteger,nAsInteger,rAsInteger
m=InputBox("
输入m的值:
输入n的值:
DoWhilen<
r=m/n
m=n
n=mr
两数的最大公因子为:
n
18.题目:
下面程序将10个整数从大到小排序
Dimt%,m%,n%,w%
Dima(10)AsInteger
Form=1To10
a(m)=Int(10+Rnd()*90)
Printa(m);
Nextm
Form=1To9
t=m
Forn=2n+1To10
Ifa(t)>
a(n)Thenn=t
Nextn
Ift=mThen
w=a(m)
a(m)=a(t)
a(t)=w
Printa(m)
19.题目:
求s=72+102+132+……+832的值。
DimsAsLong
Fori=7To832
loop30
Prints
20.题目:
下面程序用于将十个数字从小到大排序
OptionBase1
DimiAsInteger,jAsInteger,tempAsInteger
Fori=0To10
IfiMod2=0Thena(i)=iElsea(i)=-i
Printa(i);
Next
Fori=1To10
Forj=1To10-i
Ifa(j)<
a(j+1)Then
temp=a(j):
a(j)=a(j+1):
a(j+1)=temp
Nexti,j
欢迎您的下载,
资料仅供参考!
致力为企业和个人提供合同协议,策划案计划书,学习资料等等
打造全网一站式需求