算法与程序设计.docx

上传人:b****3 文档编号:24924903 上传时间:2023-06-02 格式:DOCX 页数:19 大小:42.84KB
下载 相关 举报
算法与程序设计.docx_第1页
第1页 / 共19页
算法与程序设计.docx_第2页
第2页 / 共19页
算法与程序设计.docx_第3页
第3页 / 共19页
算法与程序设计.docx_第4页
第4页 / 共19页
算法与程序设计.docx_第5页
第5页 / 共19页
点击查看更多>>
下载资源
资源描述

算法与程序设计.docx

《算法与程序设计.docx》由会员分享,可在线阅读,更多相关《算法与程序设计.docx(19页珍藏版)》请在冰豆网上搜索。

算法与程序设计.docx

算法与程序设计

信息技术选修模块测试

(一)

一、选择题

1、下列选项中,能作为vb程序变量名的是()

A、whileB、distC、4A123D、a%c

2、以下程序段运行后,整型变量max1,min1的值分别是()

a=3

b=5

max1=(a+b)/2+Abs(a-b)/2

min1=(a+b)/2-Abs(a-b)/2

A、3,3B、3,5C、5,5D、5,3

3、以下程序段运行后,整型变量s的值是()

s=1

Fori=1to10step3

s=s*i

Nexti

Prints

A、55B、280C、3640D、28

4、将数学表达式转换为vb表达式,下列选项正确的是()

A、1/2gt^2B、1/2g*t

2C、1/2g*t^2D、1/2*g*t^2

5、给定一个四位数的年份,判断它是否为闰年:

四年一闰、百年不闰;四百年又闰(年

份能被4整除但不能被100整除是闰年,或者年份能被400整除也是闰年。

例如2004

年和2000年都是闰年,2100年不是闰年)。

下列判断年份y是闰年的表达式正确的是

A、ymod4=0orymod100<>0andymod400=0

B、ymod400=0

C、ymod4=0

Dymod4=0andymod100<>0orymod400=0

6、在vb中,下列哪一个选项是正确的赋值语句()

A、5s=80B、s=s+5C、a+b=cD、2018=x

7、以下程序运行后,s的值是()

n=0

s=0

Dowhiles<=10

n=n+3

s=s+n

Loop

Prints

A、18B、30C、3D、0

1

8、以下程序段运行后,x和st的值分别是()

DimxasInteger

DimstasString

x=123+678

st=〞123〞+〞678〞

A、123678〞123678〞B、801〞123678〞

C、801〞801〞D、123678〞801〞

9、用流程图表示条件“A>B”是否成立,要用到以下哪个图形?

()

A、B、C、D、

10、设a=2,b=5,在vb中,表达式a>bandb>3的值是()

A、-1B、TrueC、FalseD、1

11、以下程序段执行后,输出结果为()

m=29

Ifmmod3<>0then

Printm&〞不能被3整除〞

Else

Printm&〞能被3整除〞

A、m不能被3整除B、29能被3整除

C、29不能被3整除D、m能被3整除

12、下面四段程序,哪段程序运行结果如图所示:

()

******

******

******

******

******

A、forj=1to5B、fori=1to5

forj=1to6fori=1to6

Print〞*〞;Print〞*〞;

NextjNexti

PrintPrint

NextjNexti

C、fori=1to5D、fori=1to5

forj=1to6forj=1to6

Print〞*〞;Print〞*〞;

NextjNexti

PrintPrint

NextiNextj

13、在VB中下列属于字符串常量的是()

A、2018B、cntC、3.14D、〞visualbasic〞

2

14、已知赋值语句s=“GoodBye!

”,则下列定义变量s正确的是()

A、DimsasLongB、DimsasInteger

C、DimsasDoubleD、DimsasString

15、下列序列能采用二分查找法查找某一元素的是()

A、1471513B、151412723

C、6912142325D、3425179103

16、在VB中,用变量code存储学生的借阅卡编码(code=〞NO20170502〞),则变量

code的数据类型应定义为()

A、DoubleB、StringC、IntegerD、Single

17、在VB中,Int(x)函数的功能是返回不大于x的最大整数,设a=3,b=4,c=5,则下

列表达式的运算结果中值最大的是()

A、a^2+b^2-c^2B、Sqr(c)C、Int(2*a-c/b)D、Abs(a-b)

18、VisualBasic程序设计语言属于()

A、机器语言B、自然语言C、汇编语言D、高级语言

二、分析题

19、以下是计算s=1+6+11+⋯⋯⋯101的程序代码,请完善该程序

Dims,iasInteger

s=0

Fori=1to101step________

s=______________

Nexti

Prints

20、阅读程序,写出运行结果

DimnasInteger

n=Val(Inputbox(“n=”))

Dowhilenmod2=0

N=n\2

Loop

Printn

程序运行时,输入24,输出n的值是___________________

(提示:

\整除运算如17\2=8;mod取余数运算如:

17mod2=1)

21、以下是计算s=12+22+32+⋯⋯1002的程序代码,请补全程序

Dimsaslong;dimiasinteger

s=0

fori=1to100

s=____________

_______________

Prints

22、以下是解决s=1*2*3*4⋯⋯*10的程序代码,请补全程序:

3

Dimsaslong

DimiasInteger

s=____________

Fori=1to10

s=_____________

Nexti

Prints

23、阅读程序,写出运行结果

Dima(10)asInteger

DimiasInteger

a

(1)=1

a

(2)=1

Fori=3to6

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

nexti

printa(6)

上述程序运行后,输出a(6)的值是______________

24、阅读程序,写出运行结果

Dimi,x,yasInteger

y=30

Fori=1to3

x=val(inputbox(〞x=〞)

ify

y=x

endif

nexti

printy

程序运行后:

依次输入:

368751运行后输出结果是________________

222

25、勾股数是指满足条件a+b=c

的自然数,求出100以内的满足a

【算法分析】a的取值范围[1,100];

b的取值范围[1,100];

c的取值范围[1,100];

【参考程序】Dima,b,casInteger

Fora=1To100

Forb=1To100

Forc=1To100

If_____________________________Then

Printa;b;cˊabc之间以分号分隔

Endif

4

Nextc

Nextb

Nexta

根据上述回答下列问题:

1、本题采用的算法是_________(填写:

解析法/枚举法/排序法/递归法)

2、程序代码中空白处应填写的条件是______________(填写字母:

A/B/C/D)

2+b2=c2B、a

A、a

^2+b^2=c^2D、a

C、a

26、十进制数转换为二进制整数采用“除2取余”法

第1步:

输入一个十进制正整数n;

第2步:

将n除以2,记录余数r;

第3步:

将r追加到字符串s的左边(s用于记录转换后的二进制数,初值为空);

第4步:

将n除以2的商赋给n;

第5步:

若n为0,则转到第6步;若n不为0,转到第2步;

第6步:

输出s(即逆序输出每一次的余数)

【参考程序】Dimsasstring‘记录转换后的二进制数

DimnasInteger‘记录十进制正整数n

DimrasInteger‘记录n除以2的余数

s=〞〞‘s记录转换后的二进制数,初值为空

n=Val(Text1.text)

Dowhilen>0

r=____①_____

s=r&s

n=____②_____

loop

Text2.text=s

1、上述算法描述采用的方法是:

______________(填:

自然语言/伪代码/流程图)

2、在参考程序①处应填入________(填写字母:

A/B/C/D)

A、nmod2B、n\2C、2modnD、n/2

3、在参考程序②处应填入___________(填写字母:

A/B/C/D)

A、nmod2B、n\2C、2modnD、n/2

5

27、算法与程序设计:

判断车牌的单双号

【背景知识】

为了保障空气质量,减少雾霾,某市决定当空气污染严重时,实行汽车单双号限

行,违反规定的车辆将予以处罚。

如何让高清摄像头自动判断车牌的单双号,交警犯了愁,他需要编程高手的你帮

忙,完善下面的程序。

(提示:

(1)所有车牌号中都含有数字,并且车牌号的长度都

是6;

(2)以车牌中最后的一位阿拉伯数字的奇、偶来决定单双号)

(1)输入AD2367

(2)输入A88888A(3)输入A8963C

输出:

单号输出:

双号输出:

单号

【算法描述】

自然语言流程图

第1步:

输入车牌号;

第2步:

取车牌号的最后一

位x;

第3步:

判断x是否为数字,

如果是转第4步;如果不是,

则依次取倒数第二、三⋯⋯

位判断,直到找到数字为

止;

第4步:

判断x是奇数还是

偶数,然后输出相应的结

果。

请根据上述算法描述补全代码

DimnasInteger

DimsasString’定义s为字符串类型

DimxasString

s=InputBox(“s=”,s)’将输入的车牌号赋值给s

n=6’车牌号的长度为6

x=Mid(s,n,1)’取车牌号s的第n位

DoWhilex<”0”orx>”9”’x不是数字字符,则取x的前一位

___①______

x=mid(s,n,1)’取车牌号s的第n位

6

Loop

If____②_______Then

Print“双号”

Else

Print“单号”

EndIf

(提示:

mid(s,m,n)的功能:

从字符串s的第m位开始,截取长度为n为子串。

例如:

mid(“A8963C”,5,1)的返回值是”3”。

请完善上述程序:

(共8分,每空4分)

1、根据题意,程序中空白①处应填写:

____________。

2、根据题意,程序中空白②处应填写:

_____________(填写字母:

A/B/C/D)。

A.Val(x)\2=0B.Val(x)mod2=1

C.Val(x)mod2=0D.Val(x)mod2<>0

28、阅读下面问题:

GDP增长问题

某省2016年的GDP是6.7万亿元,如果每年按7%的比例增长,问经过多少年该

省的GDP超过15万亿元?

【算法分析】假设n年后此省的GDP超过15万亿元,根据题意得出数学关系式,6.7*

n>15。

求最小的n。

(1+7%)

【参考程序】

dimpassingle’p用于记录GDP的值

dimrassingle’r用于记录GDP的年增长比例

dimnasinteger’n用于统计年数

p=6.7

r=0.07

n=0

dowhile________________

p=p*(1+r)

n=n+1

loop

printn&“年后,GDP的值超过15万亿元。

根据上述回答下列问题:

(每空3分共6分)

1、本题采用的算法是_________(填写:

解析法/枚举法/排序法/递归法)

2、写出程序中空白处表达式_____________________。

29、要将一张100元的钞票,换成等值的5元、2元、1元一张的零钞,每次换成50张,

其中一种换法如下:

5元:

3张;2元:

38张;1元:

9张。

求出所有的换钱方案。

[算法设计]x表示5元的张数:

1≤x≤20;y表示5元的张数1≤y≤50;z表示1元的

张数:

1≤z≤100。

[参考程序]Dimx,y,zAsInteger

Forx=1To20

7

Fory=1To50

Forz=1To100

IfThen

Printx;y;z

EndIf

Nextz

Nexty

Nextx

根据上述回答下列问题:

(8分,每空4分)

1、本题采用的算法是(填:

解析法/枚举法/排序法/递归法)。

2、程序代码中空白处应填写的条件是(填写字母:

A/B/C/D)。

A.5x+2y+z=100orx+y+z=50B.5x+2y+z=100Andx+y+z=50

C.5*x+2*y+z=100orx+y+z=50D.5*x+2*y+z=100Andx+y+z=50

30、算法与程序设计:

出租车计费问题

某市出租车收费标准如下:

(1)3公里内(含3公里),收费8元;

(2)超过3公里但未超过6公里部分,按1.5元/公里收费;

(3)超过6公里部分,按2.25元/公里收费。

根据以上标准,输入出租车行驶的公里数,请计算顾客付费多少元?

【算法分析】假设总费用为p,则可以分段计算

p=8(s≤3)

p=1.5*(s-3)+8(3

p=2.25*(s-6)+1.5*3+8(s>6)

【参考代码】DimsasSingle

DimpasSingle

s=Val(inputbox(“s=”))

Ifs<=3Then

p=8

EndIf

If__________Then

p=1.5*(s-3)+8

EndIf

Ifs>6Then

p=2.25*(s-6)+1.5*3+8

EndIf

Printp

根据上述回答下列问题:

(8分,每空4分)

1、本题采用的算法是__________(解析法/查找法/枚举法/排序法)。

2、程序代码中空白处应填写的条件是_______(填写字母:

A/B/C/D)。

8

A.33ands<=6D.s>3ors<=6

9

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

当前位置:首页 > 自然科学 > 物理

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

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