VB 常考编程题型Word格式.docx

上传人:b****5 文档编号:16471274 上传时间:2022-11-23 格式:DOCX 页数:18 大小:64.89KB
下载 相关 举报
VB 常考编程题型Word格式.docx_第1页
第1页 / 共18页
VB 常考编程题型Word格式.docx_第2页
第2页 / 共18页
VB 常考编程题型Word格式.docx_第3页
第3页 / 共18页
VB 常考编程题型Word格式.docx_第4页
第4页 / 共18页
VB 常考编程题型Word格式.docx_第5页
第5页 / 共18页
点击查看更多>>
下载资源
资源描述

VB 常考编程题型Word格式.docx

《VB 常考编程题型Word格式.docx》由会员分享,可在线阅读,更多相关《VB 常考编程题型Word格式.docx(18页珍藏版)》请在冰豆网上搜索。

VB 常考编程题型Word格式.docx

n=r

LoopUntilr=0

最大公约数是:

"

;

m

方法二:

DimnAsInteger,mAsInteger,rAsInteger,iAsInteger

请输入第一个数"

请输入第二个数"

r=IIf(n<

m,n,m)

Fori=rTo1Step-1

IfnModi=0AndmModi=0Then

Printn&

"

m&

这两个数的最大公约是"

i

ExitFor

EndIf

这两个数的最小公倍数是"

n*m/i

EndSub

3判断一个数是否为素数,假定概数是n

方法一:

如果是不素数提前结束循环,是素数,退出循环是循环变量的值不满足终止

PrivateSubForm_Click()

Dimn%,i%

请输入一个数"

Fori=2Ton-1

IfnModi=0Then

不是素数"

Ifi=nThen

是素数"

不管这个数是否为素数,假定它是素数,用一个变量(一般用flag)记住它是素数的状态(flag=1),否则反之flag=0

Dimn%,i%,flag%

flag=1

flag=0

Ifflag=1Then

Else

EndSub

4找出100到300之间的所有素数,并且5个一行输出

n=0

Forj=100To300

Fori=2Toj-1

IfjModi=0Then

Printj;

n=n+1

IfnMod5=0ThenPrint

Nextj

5求

DimiAsInteger,fzAsInteger,fmAsInteger

DimsumAsSingle

DimtAsSingle

fz=1

t=1

i=1

sum=0

DoWhile1/t>

=0.000001

sum=sum+fz/t

i=i+1

t=t*(2*i)*(2*i+1)

fz=-fz

Loop

Form1.Print"

其和为"

Format(sum,"

0.0000000"

6求1+3+5+7+……+100的和

PrivateSubForm_Click()

Dimi%,sum%

Fori=1To100Step2

sum=sum+i

1+3+....+100="

sum

7求1!

+2!

+3!

+…..10!

之和

Dimi%,sum!

f!

‘注意这里定义为单精度,否则产生错误

f=1

Fori=1To10

f=f*i

sum=sum+f

1!

+....+10!

="

8打印九九乘法表

Dimi%,j%

Fori=1To9

Forj=1To9

se=i&

×

j&

i*j

PrintTab((j-1)*9+1);

se;

Nextj

Print'

每输入完一行,打印换行,继续输出下一行

Nexti

打印下三角九九乘法表

Forj=1Toi

打印上三角九九乘法表

Forj=iTo9

9猴子吃桃子。

小猴在某天摘桃若干个,当天吃掉一半,觉得还不过瘾,又多吃了一个;

第二天吃了剩下的桃子的一半多一个;

以后每天都这样吃下去,直到第7天要吃时只剩下一个,问小猴子第一天共摘下了多少个桃子?

Dimn%,i%

x=1'

第7天的桃子

Print"

第7天的桃子数为:

1只"

Fori=6To1Step-1

x=(x+1)*2

第"

i;

天的桃子数为:

x;

只"

10Fibonacci序列,序列为1,1,2,3,5,8……..输入该序列的前30项,并且五个一行输出

Dimi%,f1!

f2!

f3!

f1=1'

给第一项赋值

f2=1'

给第二项赋值

Printf1;

Space(3);

f2;

Fori=3To20Step1

f3=f1+f2

Printf3;

Space(5);

IfiMod5=0ThenPrint

f1=f2

f2=f3

1用户输入华氏温度F,将其转换为摄氏温度C。

转换公式:

C=5÷

(F-32)

PrivateSubCommand1_Click()

DimFAsLong,CAsLong

F=InputBox("

请输入华氏温度:

"

例[4-6]华氏温度转换为摄氏温度"

C=5/9*(F-32)

Text1.Text=F

Text2.Text=C

PrivateSubCommand2_Click()

End

2输入时间(小时,分和秒),然后使用输出消息框输出总计多少秒。

使用文本框输入数据,使用消息框输出计算结果,

DimnAsSingle

n=Text1.Text*3600+Text2.Text*60+Text3

i=MsgBox(Text1.Text&

小时"

Text2.Text&

分"

Text3.Text&

秒"

Chr(13)&

总计"

n&

,"

输出结果"

3用INPUTBOX函数从键盘输入三个数,输出其中的最大值。

DimaAsSingle,bAsSingle,cAsSingle,maxAsSingle

a=Val(InputBox("

请输入第一个数:

))

b=Val(InputBox("

请输入第二个数:

c=Val(InputBox("

请输入第三个数:

max=a

Ifb>

maxThenmax=b

Ifc>

maxThenmax=c

Printa;

、"

b;

c;

最大的数是:

max

4用INPUTBOX函数从键盘输入一个学生的成绩,然后用MSGBOX输出该生的等级

DimgradeAsSingle

grade=InputBox("

请输入成绩"

Ifgrade>

=90Then

MsgBox("

优秀"

ElseIfgrade>

=80Then

良好"

=70Then

中等"

=60Then

及格"

不及格"

DimgradeAsInteger

请输入学生成绩"

SelectCasegrade

Case90To100

MsgBox("

Case80To90

Case70To80

Case60To70

Case0To59

EndSelect

5编写账号和密码输入的检验程序,对输入的账号和密码规定如下:

1)账号不能超过6位数字,以tab键表示输入结束,当输入不正确时,如账号非非数字字符串,显示“账号必须为数字”

2)密码是4位数字,并且以*显示,初始密码假定为“1234”

IfText2<

>

1234Then

y=MsgBox("

密码错误"

5+64,"

警告"

Ify=4Then

Text2="

Text2.SetFocus

Else

End

EndIf

MsgBox"

成功登陆"

0+32,"

提醒"

 

PrivateSubText1_LostFocus()

IfNotIsNumeric(Text1)Then

X=MsgBox("

账号必须为数字"

0,"

IfX=4Then

Text1="

Text1.SetFocus

6编程实现简易模拟计算机,简易计算器界面如下:

Text3.Text=Val(Text1.Text)+Val(Text2.Text)

Label1.Caption=Command1.Caption

Text3.Text=Val(Text1.Text)-Val(Text2.Text)

Label1.Caption=Command2.Caption

PrivateSubCommand3_Click()

Text3.Text=Val(Text1.Text)*Val(Text2.Text)

Label1.Caption=Command3.Caption

PrivateSubCommand4_Click()

Text3.Text=Val(Text1.Text)/Val(Text2.Text)

Label1.Caption=Command4.Caption

PrivateSubCommand5_Click()

Text1.Text="

Text2.Text="

Text3.Text="

7运行界面如图,单击command1产生一个随即的三位数(利用随即函数RND),在文本框1中显示这个三位数,单击command2逆序显示该三位数,单击command3退出应用程序。

Text1.Text=Int(Rnd*900+100)

Text2.Text=Text1Mod10&

(Text1Mod100)\10&

Text1\100

8字符串替换,程序运行效果如图,模仿WORD字处理软件中的“替换”功能,用两种方法实现。

DimstAsString

DimnAsInteger

st=Text1

n=InStr(st,Text2)

Text4=Left(st,n-1)&

Text3&

Right(st,Len(st)-n)

Text4=Replace(st,Text2,Text3)

9编写程序,当单击窗体时,在窗体上的随机位置,随机输出一个大写字母。

提示:

窗体的随机位置通过设置当前坐标Currentx,Currenty属性来确定

PrivateSubForm_click()

CurrentX=Rnd*Form1.Width

CurrentY=Rnd*Form1.Height

Form1.ForeColor=QBColor(Rnd*15)

PrintChr(Int(Rnd*26+65))

数组常见法

1.算求10个数中的最大值及其下标

首先定义包含10个元素的一维数组,然后赋初值(两种方法,一是通过随机函数,二是用inputbox函数)

Dima(1To10)AsInteger,maxAsInteger,i%,p%'

max存放10个数中的最大值,p存放当前最大值的下标

这10个数分别是"

a(i)=Int(Rnd*91)+10'

给一维数组赋初值,为10到100之间的随机值

'

a(i)=InputBox("

请输入10个数"

Printa(i);

max=a

(1)

p=1

Fori=2To10

Ifa(i)>

maxThen

max=a(i)

p=i

这10个数中最大值和下标为:

Printmax,p

2.将包含10个元素的数组倒置(逆序),说明,即第一元素和最后一个元素交换,第二个元素和倒数第二个元素交换,一致类推,可以推导出两个要交换的数的下标之和为11(如果是n个数下标之和为n+1),如对10个数逆序输出交换的次数为5次,如果是n个数交换的次数为n/2次

Dima(1To10)AsInteger,i%,t%

交换前这10个数分别是"

Randomize

Fori=1To5

t=a(i)

a(i)=a(11-i)

a(11-i)=t

交换后这10个数分别是"

3.从键盘输入10个数,然后求其偶数之和与奇数之和

Dima(1To10)AsInteger,i%,sum1%,sum%

sum1=0'

存放偶数之和

sum2=0'

存放奇数之和

Ifa(i)Mod2=0Then

sum1=sum1+a(i)

sum2=sum2+a(i)

这10个数中偶数之和为:

sum1

这10个数中奇数之和为:

sum2

4排序问题

一是冒泡法:

Dima(1To10)AsInteger

DimiAsInteger

DimkAsInteger

DimtAsInteger

DimjAsInteger

这10个数为:

Fori=1To10Step1

a(i)=Int(Rnd*91)+10

Forj=i+1To9

Ifa(j)<

a(i)Then

t=a(i)

a(i)=a(j)

a(j)=t

从小到大排序后这10个数为:

Fori=1To10Step1

方法二选择法排序

k=i

a(k)Thenk=j

a(i)=a(k)

a(k)=t

5.Fibonacci序列,序列为1,1,2,3,5,8……..输入该序列的前30项,并且五个一行输出

Dima!

(1To30),i%

a

(1)=1

a

(2)=1

Printa

(1);

a

(2);

Fori=3To30Step1

a(i)=a(i-1)+a(i-2)

Printa(i);

6.二维数组元素求所有元素中最大值及其下标

Dima%(1To2,1To3),max%,i%,j%,r%,c%'

其中i和j分别控制行和列,r和c存放当前最大元素的行下标和列下标

Fori=1To2

Forj=1To3

a(i,j)=Int(Rnd*10)+90'

用随机函数给二维数组赋值

'

a(i,j)=InputBox("

请输入6个数"

)'

用inputbox给二维数组赋值

Printa(i,j);

r=1

c=1

max=a(1,1)

Ifa(i,j)>

max=a(i,j)

r=i

c=j

二维数组中最大的元素及其行下表和列下标为:

max,r,c

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

当前位置:首页 > 工程科技 > 信息与通信

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

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