大一大二VB考试专用编程题.docx

上传人:b****8 文档编号:11001492 上传时间:2023-02-24 格式:DOCX 页数:16 大小:17.59KB
下载 相关 举报
大一大二VB考试专用编程题.docx_第1页
第1页 / 共16页
大一大二VB考试专用编程题.docx_第2页
第2页 / 共16页
大一大二VB考试专用编程题.docx_第3页
第3页 / 共16页
大一大二VB考试专用编程题.docx_第4页
第4页 / 共16页
大一大二VB考试专用编程题.docx_第5页
第5页 / 共16页
点击查看更多>>
下载资源
资源描述

大一大二VB考试专用编程题.docx

《大一大二VB考试专用编程题.docx》由会员分享,可在线阅读,更多相关《大一大二VB考试专用编程题.docx(16页珍藏版)》请在冰豆网上搜索。

大一大二VB考试专用编程题.docx

大一大二VB考试专用编程题

1.编写程序,求2的n次幂,n的值通过键盘输入。

(要求用循环做,非循环不给分。

PrivateSubCommand1_Click()

DimiAsLong,nAsInteger,sAsLong

n=Int(Val(InputBox("请输入n的值"+"输入框")))

s=1

Fori=1Ton

s=s*2

Nexti

Prints

EndSub

2.从键盘上输入两个正整数A和B,求最大公约数。

PrivateSubCommand1_Click()

DimaAsInteger,bAsInteger,nAsInteger,iAsInteger

a=Text1.Text

b=Text2.Text

Ifa

a=b:

b=i

DoWhileb<>0

n=aModb:

a=b:

b=n

Loop

Text3.Text=n

EndSub

3.编写程序,随机生成100个两位整数,并统计出其中小于等于40、大于40小于等于70及大于70的数据个数。

PrivateSubForm_Click()

DimnAsInteger

Dimcont1AsInteger,cont2AsInteger,cont3AsInteger

n=Int(Rnd*90+10)

Printn

cont1=0

cont2=0

cont3=0

Ifn<40Then

cont1=cont1+1

EndIf

Ifn>40Andn<70Then

cont2=cont2+1

EndIf

Ifn>70Then

cont3=cont3+1

EndIf

Printcont1:

cont2:

cont3

4.编写程序,单击窗体时在窗体上输出如下所示的图形。

*

***

*****

*******

*********

*******

*****

***

*

PrivateSubForm_Click()

DimiAsInteger,beginAsInteger

begin=5

Fori=1To5

PrintTab(begin);

Forj=1To2*i-1

Print"*";

Nextj

Print

begin=begin-1

Nexti

begin=2

Fori=1To4

PrintTab(begin);

Forj=1To9-2*i

Print"*";

Nextj

Print

begin=begin+1

Nexti

EndSub

5.编写程序,计算并输出下面级数前n项(n=80)的部分和。

1-1/2+1/3-1/4+1/5+……+1/n

(n由键盘输入,要求用循环做,非循环不给分。

PrivateSubCommand1_Click()

DimnAsInteger,iAsInteger

DimsumAsDouble

n=Val(InputBox(""))

sum=0

Fori=1Ton

IfiMod2<>0Then

sum=sum+(1/i)

Else

sum=sum-(1/i)

EndIf

Nexti

Printsum

EndSub

6.有100匹马,驮100担货:

大马驮3担,中马驮2担,两匹小马驮1担,问有大、中小马各多少?

OptionExplicit

PrivateSubForm_Click()

DimxAsInteger,yAsInteger,zAsInteger

Print"大马","中马","小马"

Forx=0To33

Fory=0To50

z=100-x-y

If(x*3+y*2+z*0.5)=100Then

Printx,y,z

EndIf

Nexty

Nextx

Print

Print"共7种方案。

"

EndSub

7.编写程序,要求从键盘输入0-6中的一任一个,可对应得到星期日、星期一---星期六。

PrivateSubForm_Click()

DimnAsInteger

n=Int(Val(InputBox("")))

SelectCasen

Case0

Printn;":

星期日"

Case1

Printn;":

星期一"

Case2

Printn;":

星期二"

Case3

Printn;":

星期三"

Case4

Printn;":

星期四"

Case5

Printn;":

星期五"

Case6

Printn;":

星期六"

CaseElse

Printn;":

错误"

EndSelect

EndSub

8.编写程序,输出下列三角形:

(要求用循环做,非循环不给分。

1

111

11111

1111111

OptionExplicit

PrivateSubCommand1_Click()

DimiAsInteger,jAsInteger,beginAsInteger

begin=7

Fori=1To4

PrintTab(begin);

Forj=1To2*i-1

Print"1";

Nextj

Print

begin=begin-2

Nexti

EndSub

9.求公式:

e=1/1!

+1/2!

+1/3!

+……+1/n!

直到最后一项小于10^(-6)时e的值。

(注:

程序代码写在命令按钮Command1的Click事件中。

PrivateSubCommand1_Click()

DimeAsDouble,njAsDouble

DimnAsLong,iAsLong

e=0

n=1

Do

nj=1

Fori=1Ton

nj=nj*i

Nexti

e=e+1/nj

n=n+1

LoopUntil(1/nj)<0.000001

Printe

EndSub

10.编写程序,输出下列三角形:

总行数通过键盘输入。

(要求用循环做,非循环不给分。

1111111

11111

111

1

PrivateSubCommand1_Click()

DimiAsInteger,jAsInteger,nAsInteger,beginAsInteger

n=Int(Val(InputBox("")))

begin=1

Fori=1Ton

PrintTab(begin);

Forj=1To9-2*i

Print"1";

Nextj

Print

begin=begin+2

Nexti

EndSub

11.输入一串数字,求其中偶数位数字之和。

例如输入234567,则求3+5+7。

PrivateSubCommand1_Click()

DimstrAsString,sAsString*1,iAsLong,sumAsLong

str=InputBox("")

Printstr

sum=0

Fori=2ToLen(str)Step2

s=Mid(str,i,1)

sum=sum+Val(s)

Prints

Nexti

Print"+=";sum

EndSub

12.编写程序,单击窗体时在窗体上输出如下所示的图形。

*

***

*****

*******

*********

*******

*****

***

*

PrivateSubCommand1_Click()

DimbeginAsInteger,nAsInteger,iAsLong

begin=9

Fori=1To5

PrintTab(begin);

Forn=1To2*i-1

Print"*";

Nextn

Print

begin=begin-2

Nexti

begin=3

Fori=1To4

PrintTab(begin);

Forn=1To9-2*i

Print"*";

Nextn

Print

begin=begin+2

Nexti

EndSub

13.有一分数序列:

1,1/2,2/3,3/5,5/8,8/13,13/21……

求出这个数列的前20项之和。

PrivateSubCommand1_Click()

DimsumAsDouble

Dima1AsLong,a2AsLong,a3AsLong

Dimb1AsLong,b2AsLong,b3AsLong

DimiAsLong

a1=1:

a2=1

b1=1:

b2=2

sum=a1/b1+a2/b2

Fori=2To20

a3=a1+a2

b3=b1+b2

sum=sum+a3/b3

a1=a2

a2=a3

b1=b2

b2=b3

Nexti

Printsum

EndSub

14.输入一串数字,求其中奇数数字构成的数与偶数数字构成的数之差。

例如输入1654238,求153-6428。

PrivateSubCommand1_Click()

DimstrAsString,s1AsString,s2AsString,iAsLong

str=InputBox("")

Printstr

s1=""

s2=""

Fori=1ToLen(str)

IfiMod2=1Then

s1=s1&Mid(str,i,1)

Else

s2=s2&Mid(str,i,1)

EndIf

Nexti

Prints1;"-";s2;"=";Val(s1)-Val(s2)

EndSub

16.编写程序,计算下面级数前n项中(n=50)奇数项的和,并输出该级数最后两项之差的绝对值。

(要求用循环做,非循环不给分。

)1*2*3+2*3*4+3*4*5+……+n*(n+1)*(n+2)+…

PrivateSubCommand1_Click()

DimsumAsDouble,plusAsDouble,nAsLong

sum=0

Forn=1To50Step2

sum=sum+n*(n+1)*(n+2)

Nextn

plus=(49-52)*50*51

Printsum

PrintAbs(plus)

EndSub

17.输入3个数x,y,z,按大小顺序把它们输出来。

PrivateSubCommand1_Click()

DimxAsDouble

DimyAsDouble

DimzAsDouble

DimtAsDouble

x=Val(Text1.Text)

y=Val(Text2.Text)

z=Val(Text3.Text)

Ifx

t=x:

x=y:

y=t'交换x和y,使x>y

EndIf

Ify

t=y:

y=z:

z=t'交换y和z,使z最小

Ifx

t=x:

x=y:

y=t'交换x和y,使x最大

EndIf

EndIf

Text1.Text=Str(x)

Text2.Text=Str(y)

Text3.Text=Str(z)

EndSub

19.编程打印如下图形,总行数通过键盘输入。

(要求用循环做,非循环不给分。

按原图形直接打印者无效。

2

333

55555

8888888

131313131313131313

PrivateSubCommand1_Click()

Dimf1AsLong,f2AsLong,f3AsLong

DimnAsLong,beginAsLong

DimiAsLong,jAsLong

n=Int(Val(InputBox("")))

begin=4*n-3

f1=1

f2=1

Fori=1Ton

f3=f1+f2

PrintTab(begin);

Forj=1To2*i-1

PrintTrim(f3);Spc(4-Len(Trim(f3)));

Nextj

begin=begin-4

f1=f2

f2=f3

Nexti

EndSub

20.编写程序,计算并输出下面级数前n项(n=30)的部分和。

(要求用循环做,非循环不给分。

)1/(1*2)+1/(2*3)+1/(3*4)+…+1/(n*(n+1))+……

PrivateSubCommand1_Click()

DimsumAsDouble,nAsLong

sum=0

Forn=1To30

sum=sum+1/(n*(n+1))

Nextn

Printsum

EndSub

22.编写程序,输出下列三角形:

(要求用循环做,非循环不给分。

G

FG

EFG

DEFG

CDEFG

BCDEFG

ABCDEFG

PrivateSubCommand1_Click()

Dimcode1AsInteger,code2AsInteger

Forcode1=Asc("G")ToAsc("A")Step-1

Forcode2=code1ToAsc("G")

PrintChr(code2);

Nextcode2

Print

Nextcode1

EndSub

23.编写程序,计算下面级数前n项(n=20)的部分和,并输出该级数最后两项之差的绝对值。

(要求用循环做,非循环不给分。

)1*2*3+2*3*4+3*4*5+……+n*(n+1)*(n+2)+…

PrivateSubCommand1_Click()

DimsumAsDouble,plusAsDouble,nAsLong

sum=0

Forn=1To20

sum=sum+n*(n+1)*(n+2)

Nextn

plus=(19-22)*20*21

Printsum

PrintAbs(plus)

EndSub

24.勾股定理中三个数的关系是:

a^2+b^2=c^2编写程序,输出100以内满足上述关系的整数组合,例如3,4,5就是一个整数组合。

PrivateSubCommand1_Click()

DimaAsInteger,bAsInteger,cAsInteger

Dimcnt

cnt=0

Fora=1To99

Forb=1To99

Forc=1To99

If(a*a+b*b=c*c)Then

Printa;"";b;"";c;"",

cnt=cnt+1

IfcntMod4=0ThenPrint

EndIf

Nextc

Nextb

Nexta

EndSub

27.求1000以内分别被3、5、7除,余数都为1的正整数的个数及其和。

OptionExplicit

PrivateSubCommand1_Click()

DimnAsInteger,sumAsDouble

DimcntAsInteger

sum=0

cnt=0

Forn=1To1000

If(nMod3=1)And(nMod5=1)And(nMod7=1)Then

Printn

cnt=cnt+1

sum=sum+n

EndIf

Nextn

Print

Print"共";cnt;"个"

Print"和为";sum

EndSub

4

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > IT计算机 > 互联网

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1