高中信息技术中的VB循环语句复习题_第1页
高中信息技术中的VB循环语句复习题_第2页
高中信息技术中的VB循环语句复习题_第3页
高中信息技术中的VB循环语句复习题_第4页
高中信息技术中的VB循环语句复习题_第5页
已阅读5页,还剩27页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

高中信息技术VB循环语句浏览题阅览题会考复习题

学校:姓名:班级:考号:

评卷人得分

一、选择题

1.下列程序运行后的运行成果为___。

X=8:Y=X:Z=10

IFX<=YTHEN

PRINTX;Y;

ELSE

IFZ>=XTHEN

PRINTZ

ENDIF

ENDIF

A.108

B.88

C.1010

D.810

【答案】B

【解析】

2.数组排序。点击〃产生随机数〃按钮,让计算机随机产生10个整数,并对这10个整

数进行标号,再点击〃排序〃按钮,对这10个整数进行从大到小排序。如图所示。

程序代码如下:

Dima(lTo10)AsInteger

Dim\,j,k,ktAsInteger

PrivateSubCommandl_Click()

Listl.Clear,清除列表框数据

Fori=1To10

Randomize'随机数初始化

a(i)=lnt(Rnd()*1000)

Listl.AddltemStr(i)+"=〃+Str(a(i))

Nexti

Command2.Enabled=True'激活排序按钮

EndSub

PrivateSubCommand2_Click()

Fori=1To9

k=i

Forj=①To10

Ifa(j)>a(k)Thenk=j

Nextj

Ifi<>kThen

一②—

EndIf

Nexti

List2.Clear

Fori=1To10

List2.AddltemStr(i)+"="+Str(a(i))

Nexti

EndSub

请在①、②划线处填入合适的语句或体现式,把程序补充完整:

程序中①划线处应填入;

程序中②划线处应填入O

【答案】①1+1;②t=a(k):a(k)=a(i):a(i)=t

【解析】

3.由“Fork=35To0Step3:Nextk”循环语句控制的循环次数是。

A、12B、0C、-10D、-11

【答案】B

【解析】

4.Subtest7()

Fori=1To6

S=S+(-1)Ai*2Ai

Nexti

MsgBox⑸

Endsub

该程序的运行成果是()

A、126B、-126C、-42D、42

【答案】D

【解析】

5.Subtest2()

a=12:b=12:c=5

Labell.Caption=""

Label2.Caption=""

Ifa>bOrNotb<cThen

Labell.Caption="monday"

Else

Label2.Caption="tiger"

EndIf

LabeB.Caption="Labell.Caption+"Labell.Caption

Endsub

该程序段运行后,在标签Label3的Caption属性值是()

A."monday"B."tiger"C."mondaytiger"D.""

【答案】A

【解析】

6.根据下列程序段运行后a时值,划线处应当填入的合理数据类型为()

DimaAs________

a=1

Fori=1To8

a=a*i

Nexti

A、IntegerB、LongC、SingleD、Double

【答案】B

【解析】

7.小金编写了VB程序,部分程序如下所示,在调试程序的时候出现如图所示的错误

信息:

PrivateSubCommandl_Click()

DimxAsString,iAsInteger

Fori="1"To10

IfiModx="1"Then

x=“奇数”

Else

x="偶数,,

Nexti

EndSub

产生此错误的语句是()。

A.ForB.EndIf

8.下图是当循环、直到循环两种循环构造,请结合下图选择下列说法中对的的是

()

L^JU

寺循环d到循环

A.当循环是当条件成立退出循环

B.当循环不也许出现不执行循环环节的状况

C.直到循环是条件成立时执行循环环节

D.直到循环至少执行一次循环环节

【答案】D

【解析】

9.对如下程序段的说法对的的是()

s=0

i=0

DoWhiles<10

i=i+l

s=s+i*i

Loop

A.该程序的循环体执行了3次

B.该程序段结束后i时值为3

C.该程序段结束后i时值为4

D.该程序段结束后s时值为13

【答案】ABD

【解析】

10.某算法的流程图如下所示:

当输入a、b、c的值分别为5、2、8时,该算法时输出成果为()

A.8B.2C.5D.7

【答案】B

【解析】

11.若输入两数1,-4,输出成果

/输由m/

』♦、

(结束')

A.-5B.-3

C.5D.3

【答案】C

【解析】

12.某算法要实现0到100的偶数之和,流程图如图所示。则时+2被执行的次数是

A.50B.51C.100D.101

【答案】B

【解析】

13.在某银行取款机上,顾客银行卡密码验证的过程如下图所示:当顾客输入密码时,

若第1次输入错误,第2次输入才对的,则整个操作过程的执行流程是()

A、①今②3③今④今⑤

B、①T②今③今④今⑥今⑦

C、①今②今③今④今⑥今②今③今④今⑤

D、①今②今③〉④今⑥今⑦今②今③今④今⑤

【答案】C

【解析】

14.求两数之和的算法是:输入两数a和b的值,计算c=a+b,输出c的值。该算法的

基本构造属于()o

A.次序构造B.选择构造C.循环构造D.框架构造

【答案】A

【解析】

15.下列VB程序段的运行成果是:

Dima(lTo3)AsInteger

a(l)=l

Fori=2To3

a(i)=2*a(i-l)+l

Next

Printa(i-l)

A>0B、3C>7D、15

【答案】C

【解析】

16.有如下程序段:

Fori=1To2

Forj=2To7-i

Ifa(j)>a(j-1)Then

k=a(j):a(j)=a(j-1):a(j-1)=k

EndIf

Nextj

Nexti

数组元素a(l)到a(6)时值依次为“71,54,58,29,31,78”,通过该程序段"加工”后,

下列说法对的的是()

A.数组元素a⑴到a(6的值依次为54,29,31,58,71,78

B.此过程中数据共需比较次数为8次

C.此过程中数据共需互换次数为5次

D.此过程中数据“54”共被比较5次

【答案】C

【解析】

17.某算法的部分流程图如第5题图所示。执行这部分流程后,"x6x-2”被执行的次

数为

【答案】C

【解析】

18.有如下VB程序,它的I输出成果是

S=0

Fori=lTo10

Ifimod2=0ThenS=S+i

Nexti

Print"S=";S

A.S=0B.S=25C.S=30D.S=55

【答案】C

【解析】

19.下列VB程序段运行完毕后,变量x的值为

x="2":y=64

Dowhilex<=Sqr(y)

x=x+3

Loop

A.2B.5C.8D.11

【答案】D

【解析】

20.某算法流程图如图所示,执行该算法后,“sGs+i”共被执行的次数是()

A.0B.6C.7D.8

【答案】C

【解析】

21.小明编写一种模拟登录的VB程序。当输入顾客名、密码和验证码,点击登录

按钮后,会跳出信.息框提醒与否验证成功。部分程序与流程图如下所示:

uname=Textl.Text'输入顾客名

psd=Text2.Text'输入密码

vcode=Val(Text3.Text),输入验证码

Ifvcode<>Val(Label3.Caption)Then

MsgBox,Label3显示的I是随机验证码

Elselfuname<>"admin"Orpsd<>"123456"Then

MsgBox”

Else

MsgBox"I_____O___"

方框中对时的语句是()o

A.①中“验证成功"B.②中"输出顾客名或密码有误"

C.②中“验证成功D.③中“输出验证码错误”

【答案】B

【解析】

Subtest3()双重循环运行输出图形与3反复,但3已改题

Fori="1"To22.step1

s=""

Forj="l"To2*i-l

s="Str(j)"+s

Nextj

Listl.Additems

Nexti

EndSub

该程序时运行后列表框输出的第三行是()

A.33333B.55555C.12345D.54321

【答案】D

【解析】

23.若输入28,以上代码输出成果是

Dimxaslong

x=inputbox(〃输入x时值〃)

y="x"mod7

ify="4"ory="5"ory="6"then

xq=y-3

else

xq=y+4

endif

printxq

【答案】4

【解析】

24.下列为部分VB程序语句代码:()

Fori=lTo10Step

s=s/2

Nexti

上述程序语句执行结束后,s时值为2,则循环语句的步长(划横线处)应填(

A.1B.2C.3D.4

【答案】C

【解析】

25.如图所示的部分流程图中,”ses+i〃被执行次数为()

1

A.0B.1

C.32D.33

【答案】C

【解析】

26.如下语句中错误的是()

A.Constvarl=123

B.Dimvar2AsString

C.x+y=9

D.Dimd(lto500)AsDouble

【答案】c

【解析】

27.如下有关循环构造的描述中,对的的是()o

A.与分支构造不一样,循环构造一定会对循环条件进行多次判断。

B.循环构造中,反复执行的内容有时候一次都不被执行。

C.在循环构造的流程图中,除了有向下的流程线外还应有向上返回的流程线。

D.根据实际需要,在流程图中可出现多种循环构造。

【答案】BCD

【解析】

评卷入得分

28.求两个整数的最大公约数分析:求最大公约数的算法思想:

(1)对于已知两数m,n,使得m>n;

(2)m除以n得余数r;

(3)若r=0,则n为求得的最大公约数,算法结束;否则执行(4);

(4)m«-n,n<-r,再反复执行(2)。

例如:求m=14,n=6欧J最大公约数.

Mnr

1462

620

请根据以上思绪补充下面的程序代码:

PrivateSubCommandl_Click()

m=lnputBox("m=")

n=lnputBox("n=")

Ifm<nThent=m:m=n:n=t

DoWhile(r<>0)

r=mModn

Loop

Print"最大公约数=",n

EndSub

【答案】mmodn

【解析】

评卷人得分

29.有如下VisualBasic程序段:

s=0

n=l

fori=4to1step-1

n=n*i

s=s+a

nexti

问:该程序段运行后,

(1)共循环次。

(2)变量s的值是o

【答案】(1)4(2)64

【解析】

30.小贝对街机中的"打手掌"游戏很感谢爱好,于是也用VB做了个打手游戏,界面如

图。点击开始按钮command!.,标签labell开始从3秒倒计时,倒计时结束开打,假如

打中手掌,labell显示"打中了",假如超过去3.1秒,则显示"没打中",游戏结束。点开始

按钮可以重来。请根据题意将下列程序补充完整。

•打手茅成-1□1x|

1

开始

DimtAsInteger弋用来计时

PrivateSubCommandl_click()

lmagel.left=64

Labell.caption^

t=0

Terval=100

(1)_______________

lmagel.Enabled=False

Endsub

PrivateSublmagel_click()

Timerl.Enabled=False

Imagel.Enadled=False

Labell.caption="打中了"

EndSub

PrivateSubTimerl.Timer()

t=t+l

ift<=30thenlabell.caption=3-int(t/10)

ift>32then

labell.caption=〃没打中”

Fori=lto10,手迅速移开aI动画

lmagel.left=lmagel.left-20

Forj=lto10000

Doevents

Nextj

Nexti

Timerl.Enabled=False

lmagel.Enabled=False

Endif

Ift=30then

,当t=30时,即倒计时3秒结束,容许开打,对象imagel开始容许响应事件

(2)_____________

Endif

Endsub

【答案】

(1)timerl.enabled=true

(2)image1.enabled=true

【解析】

31.用VB编写时函数bubble_sort是一种用冒泡措施实现排序的函数,其调用时需要

三个参数:布尔类型参数SX来确定是升序还是降序,SX为True时为升序,否则为降序;

整数型数组a()是待排序的数据,数据从a⑴开始寄存;整数型参数n表达传入的数组

长度,该函数的返回值也是一种整数型数组。因此调用此函数实现排序非常以便:

例如有一种整数型数组a(lto10)需要降序排序,可以直接这样调用:

a()=bubble_sort(False,a(),10)

该函数VB代码如下:

Functionbubble_sort(sxAsBoolean,a()AsInteger,nAsInteger)Aslnteger()

Dimj,tAsInteger

Fori=lTon—1

Forj=①Step—1

If(2)Then

Ifa(j)<a(j-l)Thent=a(j):a(j)=a(j-l):a(j-l)=t

Else

lfa(j)>a(j-l)Thent=a(j):a(j)=a(j-l):a(j-l)=t

EndIf

Nextj

Nexti

bubble_sort=a()

EndFunction

请将代码补充完整:

①o

②。

【答案】⑴ntoi+1(2)sx或者sx=True

【解析】

32.已知出租车计费措施如下:旅程在3公里以内(包括3公里)收起步价10元,旅

程超过3公里不超过10公里(包括10公里)部分按每公里2元计费,超过10公里部

分按每公里3元计费。现要设计一种VB出租车计费系统程序,在旅程文本框中中输入

旅程数,单击计算按钮可以计算出应付金额并显示到金额文本框中,请回答如下问题:

图一V图二d

在设计该程序界面时,要从图二界面到图一界面,需要进行哪些设置?

为计算按钮添加单击事件后,并在其中添加程序代码,代码如下:

DimdAsSingle

DimfAsSingle

d=Val(Textl.Text)

lfd<=3Then3公里如下计费

f=10

endif

Ifd>3Andd<=10Then3公里至10公里计费

,①

EndIf

lfd>10Then公里以上计费

,②

EndIf

Text2.Text=Str(f)

请完善以上程序代码,在①,②处填入对时时语句

①________________________________

②________________________________

完善程序代码后,若输入旅程数为10,则应付金额为元

实现该程序所用的算法构造属于(选择构造/循环构造)

【答案】⑴添加一种按钮设置caption属性值为“计算”,将窗体的caption属性值

设置为“出租车计费系统”;(2)f=10+(d-3)*2f=10+14+(d-10)*3;(3)24;(4)

选择构造

【解析】

33.某同学编写了VB程序其功能和界面如下所示。在文本框(textl)中输入一段英文,

点击“记录删除"按钮,在标签(LabeB)中显示该语句中最长的单词(如有多种长度相似的

单词则显示靠后的单词),在标签(Label5)中显示该单词的字符长度,在标签(Label7)中显

示删除该单词后的句子。

输入原蛤字符串

|Theybringyouanexperienceofpeace,ormakeyoulaugh.

长度最大的单词是:experience----------------------

;统计删除i

长度为:10

剥除后:

Theybringyouanofpeace,ormakeyoulaugh.

PrivateSubCommandl_Click()

DimsAsInteger,imaxAsInteger,pimaxAsInteger,tAsInteger

DimsourceAsString

source=Textl.Text

s=Len(source)

imax=l

pimax=l

t=0

Fori=lTos

d=①

If(d>="a"AnddV="z")Or(d>="A"AnddV="Z")Then

—②一

Else

Ift>=imaxThen

imax=t

―③—

EndIf

t=0

EndIf

Nexti

LabeB.Caption=Mid(source,pimax,imax)

Label5.Caption=imax

Label7.Caption=④+Mid(source,pimax+imax,s—imax)

EndSub

①处程序代码为__________________________________________________

②处程序代码为__________________________________________________

③处程序代码为

④处程序代码为________________________________________________________

【答案】①Mid(source,i,1)②t=t+l③pimax=i—t

(4)Mid(source,1,pimax—1)

【解析】

【答案】(1)14(2)2.5(3)87856(4)105

【解析】

35.小明编写了一种VB程序,功能如下:在文本框Textl中输入一段英文,并在文本

框Text2中输入英文段落中的某个单词(或字符串),单击"最大间距"按钮(Command。

后,在文本框Text3中显示该单词在文中某两次出现的最大间距,若只出现一次或不出

现则显示值为0。程序运行界面如下图所示:

实现上述功能的VB程序如下:

PrivateSubCommandl_Click()

Dima(lTo1000)AsString'数组a存储文中出现该指定单词(或字符串)的各个位置

DimsAsString,cAsString,chAsString

DimnAsInteger,maxAsInteger,iAsInteger

s=Textl.Text

c=Text2.Text

n=0:Max=0

Fori=1ToLen(s)-Len(c)+1

ch=①

Ifch=cThen

n=n+1

a(n)=i

lfn>=2Then[来源:学|科|网Z|X|X|K]

Ifa(n)-a(n-1)-Len(c)>MaxThenMax=a(n)-a(n-1)-Len(c)

EndIf

EndIf

Nexti

Text3.Text=②

EndSub

以上程序段运行时,为了实现上述功能,划线处①和②应填入的代码分别为:

(1);(2)

【答案】⑴(2分)Mid(s,i,Len(c))(2)(2分)Str(Max)

【解析】

36.某VisualBasic程序如下:

PrivateSubCommandl_Click()

DimxAsInteger;yAsInteger,aAsInteger,bAsInteger

X=0

y=0

Fora=lTo3

x=x+l

Forb=2to4

Y=Y+1

Nextb

Nexta

Textl.text=str(a)

Text2.text=str(b)

EndSub

单击Command!.按钮后,Textl显示①,Text2显示②

【答案】①3(2分);②9(2分)

【解析】

37•【加试题】小王模拟超市收银机扫描商品条形码后计算总价的过程制作了一种VB

程序。功能如下:在文本框Textl中输入商品条形码,按回车键后会将已经输入的条形

码显示在列表框Listl中,同步将商品明细显示在列表框List2中。点击按钮”计算商品

总价"后,会将所有商品的总价显示在文本框Text2中。程序界面如图所示:

0条形码扫描仪

输入商品条形码:已购物品汇总:商品明细:

薯片

乙5o

503742牛奶6o

绿箭5.

503743工5O

503748

503741可乐5.00

1计算商品总价

商品总价:

21.6

实现上述功能的部分VB程序如下,请在三个划线处填入合适代码。

'定义全局数组变量

Dima(lTo10)AsLong

Dimb(lTo10)AsString

,自动加载条形码信息以及对应的商品信息

PrivateSubForm_Load()

DimiAsInteger

a(l)=503741

Fori=2To10

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

Nexti

b⑴="可乐5.00"

b(2)="薯片7.50"

b(3)="牛奶5.60"

b(4)="橙汁7.50"

b(5)=''面包4.00"

b(6)="蜂蜜28.00"

b(7)=''蛋糕12.00"

b(8)="绿箭3.50"

b(9)=''饼干6.00"

b(10)="雪碧5.00"

EndSub

‘输入条形码,查找条形码,并显示条形码及其对应的商品信息

PrivateSubTextl_KeyPress(KeyAsciiAsInteger)

DimtxmAsLong:

DimiAsInteger:

DimjAsInteger

txm=Val(Textl.Text)

IfKeyAscii=13Then

Iftxm>=503741Andtxm<=503750Then

Listl.Addltemtxm

Textl.Text=""

i=l:j=10

DoWhilei<=j

Iftxm=a(m)Then

List2.Addltemb(m)

ExitDo

Elselftxm>a(m)Then

i=m+1

Else

EndIf

Loop

Else

MsgBox”条形码输入错误,无此商品“

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论