vb改错.docx
- 文档编号:12844753
- 上传时间:2023-04-22
- 格式:DOCX
- 页数:102
- 大小:29.97KB
vb改错.docx
《vb改错.docx》由会员分享,可在线阅读,更多相关《vb改错.docx(102页珍藏版)》请在冰豆网上搜索。
vb改错
改错
3001题:
程序功能:
求s=1+3+5+7+...直到s>2000为止。
程序中有两行有错误。
改正错误,使它能输出正确的结果。
原程序:
PrivateSubCommand1_Click()
DimiAsInteger,sAsLong
s=0
i=1
DoUntils<2000
s=s+i
i=i+1
Loop
Prints
EndSub
答案:
2025
3002题:
程序功能:
求s=1+3+5+7+...直到s>3000为止。
程序中有两行有错误。
改正错误,使它能输出正确的结果。
原程序:
PrivateSubCommand1_Click()
DimiAsInteger,sAsLong
s=0
i=1
DoUntils<3000
s=s+i
i=i+1
Loop
Prints
EndSub
答案:
3025
3003题:
程序功能:
计算s=2!
+4!
+8!
。
程序中有两行有错误。
改正错误,使它能输出正确的结果。
原程序:
PrivateSubCommand1_Click()
DimkAsInteger,iAsInteger
DimsAsLong,tAsLong
s=0
i=1
DoWhilei<=3
t=1
k=1
Whilek<=2*i
t=t*k
k=k+1
Wend
s=s+t
i=i+1
Wend
Prints
EndSub
答案:
40346
3004题:
程序功能:
计算s=2!
+4!
+6!
+8!
。
程序中有两行有错误。
改正错误,使它能输出正确的结果。
原程序:
PrivateSubCommand1_Click()
DimkAsInteger,iAsInteger
DimsAsLong,tAsLong
s=0
i=1
DoWhilei<=3
t=1
k=1
Whilek<=2^i
t=t*k
k=k+1
Wend
s=s+t
i=i+1
Wend
Prints
EndSub
答案:
41066
3005题:
程序功能:
求200到400间,能被3整除但不能被7整除的数的个数。
程序中有两行有错误。
改正错误,使它能输出正确的结果。
原程序:
PrivateSubCommand1_Click()
DimcountAsInteger
DimxAsInteger
count=0
x=200
Whilex<=400
IfxMod3=0OrxMod7<>0Then
count=count+1
EndIf
x=x+1
Loop
Printcount
EndSub
答案:
57
3006题:
程序功能:
求200到500间,能被13整除但不能被17整除的数的个数。
程序中有两行有错误。
改正错误,使它能输出正确的结果。
原程序:
PrivateSubCommand1_Click()
DimcountAsInteger
DimxAsInteger
count=0
x=200
Whilex<=500
IfxMod13=0OrxMod17<>0Then
count=count+1
EndIf
x=x+1
Loop
Printcount
EndSub
答案:
21
3007题:
程序功能:
求1到400间,同时能被3和7整除的数的个数。
程序中有两行有错误。
改正错误,使它能输出正确的结果。
原程序:
PrivateSubForm_Click()
DimcountAsInteger
DimxAsInteger
Forx=1To400
ifmod(x,3)=0andmod(x,7)=0then
count=count+1
endif
Nextcount
printcount
EndSub
答案:
19
3008题:
程序功能:
求1到500间,同时能被5和9整除的数的个数。
程序中有两行有错误。
改正错误,使它能输出正确的结果。
原程序:
PrivateSubCommand1_Click()
DimcountAsInteger
DimxAsInteger
Forx=1To500
ifmod(x,5)=0andmod(x,9)=0then
count=count+1
endif
Nextcount
printcount
EndSub
答案:
11
3009题:
程序功能:
求能被3整除且至少有一位数字为5的三位数的个数。
程序中有两行有错误。
改正错误,使它能输出正确的结果。
原程序:
PrivateSubCommand1_Click()
DimcountAsInteger
DimaAsInteger,bAsInteger,cAsInteger
DimxAsInteger
x=100
DoWhilex<=999
IfxMod3=0Then
a=Int(x/100)
b=Int((x-a*100)/10)
c=x-a*100-b*10
Ifa=5Andb=5Andc=5Then
count=count+1
EndIf
EndIf
x=x+1
Wend
Printcount
EndSub
答案:
85
3010题:
程序功能:
求能被7整除且至少有一位数字为9的三位数的个数。
程序中有两行有错误。
改正错误,使它能输出正确的结果。
原程序:
PrivateSubCommand1_Click()
DimcountAsInteger
DimaAsInteger,bAsInteger,cAsInteger
DimxAsInteger
x=100
DoWhilex<=999
IfxMod7<>0Then
a=Int(x/100)
b=Int((x-a*100)/10)
c=x-a*100-b*10
Ifa=9andb=9Andc=9Then
count=count+1
EndIf
EndIf
x=x+1
Loop
Printcount
EndSub
答案:
36
3011题:
程序功能:
求三位偶数中,个位数字与十位数字之和除以10所得的余数是百位数字的数的个数。
程序中有两行有错误。
改正错误,使它能输出正确的结果。
原程序:
PrivateSubCommand1_Click()
DimcountAsInteger
DimaAsInteger,bAsInteger,cAsInteger
DimxAsInteger
count=0
x=100
Whilex<=999
a=Int(x/100)
b=Int(x/10)-a*10
c=x-a*100-b*10
ifmod(x,2)=0ORmod(b+c,10)=athen
count=count+1
EndIf
x=x+1
Loop
Printcount
EndSub
答案:
45
3012题:
程序功能:
求三位奇数中,个位数字与十位数字之和除以10所得的余数是百位数字的数的个数。
程序中有两行有错误。
改正错误,使它能输出正确的结果。
原程序:
PrivateSubCommand1_Click()
DimcountAsInteger
DimaAsInteger,bAsInteger,cAsInteger
DimxAsInteger
count=0
x=100
Whilex<=999
a=Int(x/100)
b=Int(x/10)-a*10
c=x-a*100-b*10
ifxmod2=0Orb+cmod10=athen
count=count+1
EndIf
x=x+1
Loop
Printcount
EndSub
答案:
45
3013题:
程序功能:
求平方和小于2000的最大自然数。
程序中有两行有错误。
改正错误,使它能输出正确的结果。
原程序:
PrivateSubForm_Click()
DimxAsInteger
DimsAsInteger
s=0
x=0
DoWhiles>=2000
x=x+2
s=s+x*x
loop
Printx
EndSub
答案:
18
3017题:
程序功能:
解百马百瓦古题。
大、小马和马驹共100匹,共驮100片瓦。
大马一驮三,小马一驮二,马驹二驮一,一次驮完,三种马都驮,共有多少种组合?
程序中有三行有错误。
改正错误,使它能输出正确的结果。
原程序:
PrivateSubForm_Click()
DimxAsInteger,yAsInteger,zAsInteger
DimsAsInteger
s=0
Forx=1To33
Fory=1To50
z=100-x-y
If3*x+2*y+z/2<>100Then
s=s+1
EndIf
Nextx
Nexty
Prints
EndSub
答案:
6
3018题:
程序功能:
解百马百瓦古题。
大、小马和马驹共100匹,共驮100片瓦。
大马一驮三,小马一驮二,马驹二驮一,一次驮完,三种马都驮,共有多少种组合?
程序中有一行有错误。
改正错误,使它能输出正确的结果。
原程序:
PrivateSubForm_Click()
s=0
dm=1
DoWhiledm<=100/3
xm=1
DoWhilexm<=100/2-dm
mj=100-dm-xm
Ifdm+xm+mj=100Then
s=s+1
EndIf
xm=xm+1
Loop
dm=dm+1
Loop
Prints
EndSub
答案:
6
3019题:
程序功能:
求100-200之间的所有素数个数,程序中有两行有错误。
改正错误,使它能输出正确的结果。
原程序:
PrivateSubCommand1_Click()
Number=0
Forx=101To199Step2
i=2
k=Int(x/2)
DoWhilei<=k
IfxModi=0ThenExitFor
i=i+1
Loop
Ifi<kThen
Number=Number+1
EndIf
Nextx
PrintNumber
EndSub
答案:
21
3020题:
程序功能:
sum=d+dd+ddd+……+ddd..d(d为1-9的数字)。
例如:
3+33+333+3333(此时d=3,n=4)。
从键盘上输入d的值为8,n的值为9,求sum的值。
程序中有两行有错误。
改正错误,使它能输出正确的结果。
原程序:
PrivateSubForm_Click()
DimdAsInteger,nAsInteger,iAsInteger
DimsumAsLong
sum=0
d=Val(InputBox("请输入数值d:
"))
n=Val(InputBox("请输入数值n:
"))
Fori=1Ton
tn=tn+d
sum=sun+tn
Nexti
Printsum
EndSub
答案:
864197523
3021题:
程序功能:
输出水仙花的个数(所谓水仙花数是指一个三位十进制数,该数的各位数字立方之和等于该数本身。
例如153是一个水仙花数,因为1^3+5^3+3^3=153)程序中有两行有错误。
改正错误,使它能输出正确的结果。
OptionExplicit
原程序:
PrivateSubForm_Click()
DimnumberAsInteger
DimnAsInteger,iAsInteger,jAsInteger,kAsInteger
Forn=100To999
i=n/100‘百位
j=Int(n/10)-i*10‘十位
k=nMod10‘个位
If(n=i*i*i+j*j*j+k*k*k)Then
number=numbre+1
EndIf
Nextn
Printnumber
EndSub
答案:
4
3022题:
程序功能:
求数列2/1,3/2,5/3,8/5,13/8,……的前10项之和。
程序中有两行有错误。
改正错误,使它能输出正确的结果。
原程序:
PrivateSubForm_Click()
DimiAsInteger,tAsInteger,nAsInteger
DimaAsInteger,bAsInteger
DimsAsSingle
a=2:
b=1:
n=10:
s=0
Fori=1Ton
s=s+a/b
t=b
a=a+b
a=t
Nexti
Prints
EndSub
答案:
16.47991
3023题:
程序功能:
猴子第1天摘下若干桃子,当即吃掉一半,又多吃一个,第二天将剩余的部分吃掉一半还多一个;以此类推,到第10天只剩余1个。
问第1天共摘了多少桃子。
程序中有两行有错误。
改正错误,使它能输出正确的结果。
原程序:
PrivateSubForm_Click()
DimdayAsInteger,sumAsInteger
day=10;sum=1
DoWhileday>1
sum=sum*2
day=day-1
Loop
Printsum
EndSub
答案:
1534
3025题:
程序功能:
求1~200之间的能被7整除的数的平方和。
程序有两处错误。
改正错误,使它能输出正确的结果。
原程序:
PrivateSubCommand1_Click()
DimxAsInteger
DimsumAsinteger
x=1
sum=0
Whilex<=200
IfxMod7=0
sum=sum+x^2
EndIf
x=x+1
Wend
Printsum
EndSub
答案:
377986
3026题:
程序功能:
求1~99的平方根的和并输出结果。
(保留小数点两位),程序中有两行有错误。
改正错误,使它能输出正确的结果。
原程序:
PrivateSubCommand1_Click()
DimxAsInteger
DimsumAsInteger
x=1
DoWhilex<=99
sum=sum+Sqrt(x)
x=x+1
Loop
PrintRound(sum,2)
EndSub
答案:
661.46
3027题:
程序功能:
求1~55的平方根的和并输出结果。
(保留小数点两位)程序中有两行有错误。
改正错误,使它能输出正确的结果。
原程序:
PrivateSubCommand1_Click()
DimxAsInteger
DimsumAsInteger
x=1
DoWhilex<=55
sum=sum+Sqrt(x)
x=x+1
Loop
PrintRound(sum,2)
EndSub
答案:
275.43
3028题:
程序功能:
统计1~1000中能被3整除的数的个数。
程序中有两行有错误。
改正错误,使它能输出正确的结果。
原程序:
PrivateSubCommand1_Click()
DimcountAsInteger
DimiAsInteger
i=3
count=0
DoWhileI>=1000
Ifxmod3=0Then
count=count+1
EndIf
i=i+1
Loop
Printcount
EndSub
答案:
333
3029题:
程序功能:
输出1~100中所有整数的平方和。
程序中有错误。
改正错误,使它能输出正确的结果。
原程序:
PrivateSubCommand1_Click()
DimxAsInteger
DimsumAsInteger
x=1
sum=0
DoUntilx<100
sum=sum+x^2
x=x+1
Loop
Printsum
EndSub
答案:
328350
3030题:
程序功能:
求[1,5000]内能被5整除的前若干个偶数之和,直到和大于50000为止。
程序中有两行有错误。
改正错误,使它能输出正确的结果。
原程序:
PrivateSubCommand1_Click()
DimxAsInteger
DimsAsLong
x=2
DoWhilex<=5000
IfxMod5=0Then
s=s+x
Ifs>50000Then
Exitfor
EndIf
EndIf
x=x+1
Loop
Prints
EndSub
答案:
50500
3031题:
程序功能:
求3000以内能被17或23整除的正整数的个数。
程序中有两行有错误。
改正错误,使它能输出正确的结果。
原程序:
PrivateSubCommand1_Click()
DimxAsInteger
DimcountAsInteger
Forx=1To3000step-1
IfxMod17=0andxMod23=0Then
count=count+1
EndIf
Nextx
Printcount
EndSub
答案:
299
3032题:
程序功能:
已知一个数列的前3项为0,0,1,以后每项为前3项的和,求此数列的第36项。
程序中有两行有错误。
改正错误,使它能输出正确的结果。
原程序:
PrivateSubCommand1_Click()
DimaAsLong
DimbAsLong
DimcAsLong
DimdAsLong
DimiAsInteger
a=0:
b=0:
c=1
Fori=1To36
d=a
a=b
b=c
c=a+b+c
Nexti
Printc
EndSub
答案:
334745777
3033题:
程序功能:
求数列2,4,8,16,32,…前若干项之和。
当和大于9000时,终止求和并输出结果。
程序中有两行有错误。
改正错误,使它能输出正确的结果。
原程序:
PrivateSubCommand1_Click()
DimsAsInteger
DimxAsInteger
x=1
Do
x=x+2
s=s+x
Untils>9000
Prints
EndSub
答案:
16382
3034题:
程序功能:
求[351,432]之间既不能被3整除,也不能被8整除的正整数的个数。
程序中有两行有错误。
改正错误,使它能输出正确的结果。
原程序:
PrivateSubCommand1_Click()
DimcAsInteger
DimxAsInteger
Forx=351To432
IfxMod3<>0orxMod8<>0Then
c=c+1
EndIf
Nextc
Printc
EndSub
试题要求:
源程序文件名:
试题答案:
47
考试语种:
试卷编号:
1034
第35小题:
程序功能:
求[444,666]中最大的素数。
程序中有两行有错误。
改正错误,使它能输出正确的结果。
PrivateSubCommand1_Click()
DimxAsInteger
DimiAsInteger
Forx=666To444
k=Int(Sqr(x))
Fori=2Tok
IfxModi=0Then
ExitDo
EndIf
Nexti
Ifi>kThen
Printx
ExitFor
EndIf
Nextx
EndSub
答案:
661
3035题:
程序功能:
已知24有8个正整数因子(即
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- vb 改错