山东省学业水平考试信息技术算法五套.docx
《山东省学业水平考试信息技术算法五套.docx》由会员分享,可在线阅读,更多相关《山东省学业水平考试信息技术算法五套.docx(15页珍藏版)》请在冰豆网上搜索。
山东省学业水平考试信息技术算法五套
第一套
23、下列选项中,关于算法的描述正确的是( )。
A算法只能用自然语言描述 B算法必须在有限步骤内实现
C算法就是一种高级程序设计语言 D算法可以有0个或多个输入,但只能有一个输出
24、下列选项中,能作为VB程序变量名的是( )。
Awhile B4A123 Ca%c Ddist
25、以下程序段执行后,输出结果为( )。
m=29
IfmMod3<>0 Then
Print m & “不能被3整除”
Else
Print m & “能被3整除”
End If
An能被3整除 Bn不能被3整除 C29不能被3整除 D29能被3整除
26、下列VB表达式中,值为字符串类型的是( )。
(1)Abs(x)
(2)Text1.Text (3)”123+45”(4)Sqr(x) (5)Labell.Caption
A
(1)(3)(5) B
(2)(3)(5) C
(2)(4)(5) D
(1)
(2)(3)
27、在VB中,下列哪个选项是正确的赋值语句?
( )
A2018=x B5s=80 Ca+b=c Ds=s+5
28、阅读程序,写出运行结果
DimnAsInteger
n=Val(InputBox(“n=”))
DoWhilenMod2=0
n=n\2
Loop
Printn
程序运行时,输入24,输出n的值是:
______
29、分析并完善程序
以下是计算s=1+6+11+…+101的程序代码,请完善程序。
DimsAsInteger
DimiAsInteger
s=0
Fori=1To101Step__________
s=____________
Nexti
Prints
30、算法设计与程序实现
某市出租车收费标准如下:
(1)3公里内(含3公里),收费8元;
(2)超过3公里但未超过6公里部分,按1.5元/公里收费;
(3)超过6公里部分,按2.25元/公里收费。
根据以上标准,输入出租车行驶的公里数,请计算顾客需付费多少元?
【参考代码】
DimsAsSingle
DimpAsSingle
s=Val(InputBox(“s=”))
Ifs<=3Then
p=8
End If
If______________Then
p=1.5*(s-3)+8
EndIf
Ifs>6Then
p=2.25*(s-6)+1.5*3+8
EndIf
Printp
根据上述回答下列问题:
1、本题采用的算法是__________(填写:
解析法/查找法/枚举法/排序法)。
2、程序代码中空白处应填写的条件是____________(填写字母:
A/B/C/D).
A3
B3≦s≦6
C s>3Ands<=6
Ds>3Ors<=6
第二套
23、设a=2,b=5,在VB中,表达式a>bAndb>3的值是( )。
A1B-1CFalseDTrue
24、以下程序段运行后,x和st的值分别是( )。
Dim x As Integer
Dim st As String
x=123+678
st=”123”+”678”
A 123678 “123678”B 801 “123678”C 123678 “801”D 801 “801”
25、用流程图表示条件“A>B”是否成立,要用到以下哪个图形?
( )
A 平行四边形B 菱形C 圆角矩形D直角矩形
26、下列选项中,能作为VB程序变量名的是( )。
A dimB3abCa*bDxy
27、以下程序段运行后, s的值是( )。
n=0
s=0
Do While s<=10
n=n+3
s=s+n
loop
A30B18C0D3
28、阅读程序,写出运行结果
Dima(10) As Integer
DimiAsInteger
a
(1)=1
a
(2)=1
Fori=3To6
a(i)=a(i-1)+a(i-2)
Next i
Printa(6)
上述程序运行后,输出a(6)的值是_________________________。
(6分)
29、分析并完善程序
以下是计算s=1*2*3*…*10的程序代码,请补全程序。
(6)
DimsAsLong
DimiAsInteger
s=__________
Fori=1To10
s=__________
Nexti
Prints
30、算法设计与程序实现
勾股数
求出100以内满足a
【参考程序】
DimaAsInteger
DimbAsInteger
DimcAsInteger
Fora=1To100
Forb=1To100
Forc=1To100
If________Then
Printa;b;c
EndIf
Nextc
Nextb
Nexta
1、本题采用的算法是__________(填写:
解析法/枚举法/排序法/递归法)。
2、程序代码中空白处应填写的条件是________(填写字母:
A/B/C/D).
A a
B a
C a
D a
第三套
23、下列选项中,能作为VB程序变量名的是( )。
A、s+1B、3stuC、trueD、s1
24、下列哪个程序段的运行结果如图1所示?
( )
******
******
******
******
图1
A、
for i=1 to5
For j=1 to 6
Print”*”
next j
print
nexti
B、
for i=1 to5
for i=1 to 6
print”*”
next i
print
next i
C、
for i=1 to5
For j=1 to 6
Print”*”
next j
print
nextj
D、
for i=1 to5
For j=1 to 6
Print”*”
next j
print
nexti
25、在VB中,Int(x) 函数的功能是返回不大于x的最大整数,设a=3 ,b=4,c=5,则下列表达式的运算结果中值最大的是( )。
A、Sqr(c)B、 Abs(a-b)C、Int(2*a-c/b)D 、a^2+b^2-c^2
26、在VB中,用变量code存储学生的借阅卡编码(code=”N020170502”),则变量code 的数据类型应定义为( )。
A IntegerB DoubleC StringD Single
27、VisualBasic程序设计语言属于( )。
A、汇编语言B、自然语言C、高级语言D、机器语言
28、阅读程序,写出运行结果
DimiAsInteger
DimxAsInteger
DimyAsInteger
y=30
Fori=1 To 3
x=Val(InputBox(“x=”))
If y y=x
End If
Next i
Print y
程序运行后,依次输入:
36 87 51
运行后输出结果是_________________。
(6分)
29、算法设计与程序实现
(拖动滚动条浏览全部试题内容,点击右侧图标可切换输入法)
GDP增长问题
某省2016年的GDP是6.7万亿元,如果每年按7%的比例增长,问多少年以后此省的GDP超过15万亿?
【算法分析】
假设n 年后此省的GDP超过15万亿元,根据题意得出数学关系式?
求最小的n。
【参考程序】
Dim p As Single ’p用于记录GDP的值
Dim r As Single ’r用于记录GDP的年增长比例
Dim n As Integer ’n用于统计年数
p=6.7
r=0.07
n=0
DoWhile_________
p=p*(1+r)
n=n+1
Loop
Print n& ”年后,GDP的值超过15万亿元。
”
根据上述回答下列问题:
(共6分,每空3分)
1、 本题采用的算法是______________(填写:
解析法/枚举法/排序法/递归法)。
2、 写出程序中空白处表达式_______________________________。
30、算法设计与程序实现
判断车牌的单双号
【背景知识】
为了保障空气质量,减少雾霾,某市决定当空气污染严重时,实行汽车单双号限行,违反规定的车辆将予以处罚。
如何让高清摄像头自动判断车牌的单双号,交警犯了愁,他需要编程高手的你帮忙,完善下面的程序。
(提示:
(1)所有车牌号中都含有数字,并且车牌号的长度都是6;
(2)以车牌中最后一位阿拉伯数字的奇、偶来决定单双号。
)
(1)输入:
AD2367
(2)输入:
A8888A
(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位
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=0 B、Val(x)Mod2=1
C、Val(x)Mod2=0 D、Val(x)Mod2<>0
第四套
23、一下程序段运行后,y的值是( )。
x=3
Ifx>3 Then
y=2*x
Else
y=3*x+1
endif
A25B26C10D5
24、某晚会的猜数字游戏中,有100张写有1~100之间整数的卡片,主持人随机抽取一张卡片,让大家竞猜。
有一种方案是:
第一次猜50,若提示低了,则第二次猜75,若提示还是低了,则第三次猜87,依次类推;若第一次猜50,提示高了,则第二次猜25,若提示还是高了,则第三次猜12,依次类推;……。
这种每次缩小一半查找范围而达到迅速确定目标的算法称为( )。
A 顺序查找法B 排序法C 解析法D 二分查找法
25、在平面直角坐标系中,设点A(x1,y1)、点B(x2,y2),则AB两点之间的距离为:
VB表达式是( )。
A Sqr((x1-x2^2+(y1-y2)^2)B Sqr[(x1-x2)^2+(y1-y2)^2]
C Sqr((x1-x2)2+(y1-y2)2)D Sqr[(x1-x2)2+(y1-y2)2]
26、下列语句正确定义了一个单精度实型变量x 的是( )。
ADimxAsSingleB 其它三项都不对CDimxAsIntegerDDimxAsString
27、在VB中表示“x 属于区间[a,b)”的正确表达式是( )。
Aa<=xAndx28、阅读程序,写出运行结果
DimsAsInteger
DimiAsInteger
s=0
Fori=1To10Step4
Print“#”;
s=s+i
Nexti
Prints
上述程序运行后,输出“#”的个数是__________;输出s的值是________。
(共6分,每空3分)
29、阅读程序,写出运行结果
DimaAsInteger
DimbAsInteger
DimrAsInteger
a=98
b=63
r=aModb
DoWhiler<>0
a=b
b=r
r=aModb
Loop
Printb
程序运行后,输出结果为:
___________________。
(6分)
30、算法设计与程序实现
拖动滚动条浏览全部试题内容,点击右侧图标可切换输入法
换钱问题
要将一张100元的钞票,换成等值的5元、2元、1元一张的钞票共50张。
其中一种换法如下:
5元:
3张
2元:
38张
1元:
9张
求出所有的换钱方案。
【算法设计】
x表示5元的张数:
1≦x≦20;
y表示2元的张数:
1≦y≦50;
z表示1元的张数:
1≦z≦100.
【参考程序】
DimxAsInteger
DimyAsInteger
DimzAsInteger
Forx=1To20
Fory=1To50
Forz=1To100
If______________Then
Printx;y;z ’xyz之间以分号分隔
EndIf
Nextz
Nexty
Nextx
根据上述回答下列问题:
(8分,每空4分)
1、本题采用的算法是_____________(填:
解析法/枚举法/排序法/递归法)。
2、程序代码中空白处应填写的条件是_______________(填写字母:
A/B/C/D)。
A 5x+2y+z=100 Or x+y+z=50
B 5x+2y+z=100 Andx+y+z=50
C 5*x+2*y+z=100Orx+y+z=50
D 5*x+2*y+z=100And x+y+z=5
第五套
23、在VB中,下列属于字符串常量的是( )。
Acnt B3.14 C2018 D“Visual Basic”
24、将数学表达式转化为VB表达式,下列选项正确的是( )。
25、以10下程序段运行后,整型变量s的值是( )。
s=1
Fori=1To10Step3
s=s*i
Next i
Print s
A 55 B 3640 C 28 D 280
26、 以下程序段运行后,整型变量max1,min1的值分别是( )。
a=3
b=5
max1=(a+b)/2+Abs(a-b)/2
min1=(a+b)/2-Abs(a-b)/2
27、给定一个四位数的年份,判断它是否为闰年:
四年一闰、百年不闰;四百年又闰(年份能被4整除但不能被100整除是闰年,或者年份能被400整除也是闰年。
例如2004年和2000年都是闰年,2100年不是闰年)。
下列判断年份。
下列判断年份y是闰年的表达式正确的是( )。
AyMod4=0OryMod100<>0AndyMod400=0
ByMod4=0
CyMod4=0AndyMod100<>0OryMod400=0
DyMod400=0
28、分析并完善流程图
执行流程图,当输入x的值为4时,输出y的值为2,则菱形判断框中的条件可能为________(填写字母:
A/B/C/D6分)。
Ax>3 B x>4 Cx<=4 D x<=5
29、分析并完善程序
以下是计算s=12+22+32+…+1002的程序代码,请补全程序。
(共6分,每空3分)
DimsAsLong
DimiAsInteger
s=0
Fori=1To100
s=s+_____________
___________
Prints
30、算法设计与程序实现
拖动滚动条浏览全部试题内容,点击右侧图标可切换输入法
十进制整数转换为二进制整数采用“除2取余”法。
算法描述
第1步:
输入一个十进制正整数n;
第2步:
将n除以2,记录余数r;
第3步:
将r追加到字符串s的左边(s 用于记录转换后的二进制数,初值为空);
第4步:
将n 除以2的商赋给n ;
第5步:
若n 为0,则转到第6步;若n不为0,转到第2步;
第6步:
输出s (即逆序输出每一次的余数)。
举例说明
界面设计
将一个十进制数13转换为二进制。
【参考程序】
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分)
2、 在参考程序①处应填入____________(填写字母:
A/B/C/D)。
(3分)
A nMod2 Bn\2 C2Modn Dn/2
3、在参考程序②处应填入____________(填写字母:
A/B/C/D)。
(3分)
AnMod2 Bn\2 C2Modn Dn/2