信息技术学业水平算法模拟题
分析题部分
1、阅读程序,写出运行结果
Dim a(10) As Integer
Dim i As Integer
a(1)=1
a(2)=1
For i=3 To 6
a(i)=a(i-1)+a(i-2)
Next i
Print a(6)
上述程序运行后,输出a(6)的值是__________(6分)
2、分析并完善程序
以下是计算s=1*2*3*…*10的程序代码,请补全程序。(6分)
Dim s As Long
Dim i As Integer
s=____________________
For i=1 To 10
s=__________________
Next i
Print s
3、算法设计与程序实现
勾股数
勾股数是指满足条件a2+b2=c2的自然数,求出100以内满足a<b的所有勾股数。
【算法分析】
a的取值范围[1,100];
b的取值范围[1,100];
c的取值范围[1,100].
【参考程序】
Dim a As Integer
Dim b As Integer
Dim c As Integer
For a=1 To 100
For b=1 To 100
For c=1 To 100
If _____________________________Then
Print a;b;c ‘abc之间以分号分隔
End If
Next c
Next b
Next
(1)本题采用的算法是___________(填写:解析法/枚举法/排序法/递归法)。
(2)程序代码中空白处应填写的条件是_____________(填写字母:A/B/C/D)
A、a<b And a2+b2=c2
B、a<b Or a2+b字符串截取后3位2=c2
C、a<b And a^2+b^2=c^2
D、a<b And a^2+b^2=c^2
4、阅读程序,写出运行结果
Dim s As Integer
Dim i As Integer
s=0
For i=1 To 10 Step 4
Print “#”
s=s+i
Next i
Print s
上述程序运行后,输出“#”的个数是_____________;输出s的值是_____________。(共6分,每空3分)
5、阅读程序,写出运行结果
Dim a As Integer
Dim b As Integer
Dim r As Integer
a=98
b=63
r=a mod b
Do While r<>0
a=b
b=r
r=a Mod b
Loop
print b
程序运行后,输出结果为:______________。(6分)
6、算法设计与程序实现
换钱问题
要将一张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.
【参考程序】
Dim x As Integer
Dim y As Integer
Dim z As Integer
For x=1 To 20
For y=1 To 50
For z=1 To 100
If _____________________Then
Print x;y;z ‘x y z 之间以分号分隔
End if
Next z
Next y
Next x
根据上述回答下列问题:(8分,每空4分)
(1)本题采用的算法是_________________(填:解析法/枚举法/排序法/递归法)。
(2)程序代码中空白处应填写的条件是______(填写字母:A/B/C/D)。
A、5x + 2y + z=100 Or x + y + z = 50
B、5x + 2y + z=100 And x + y + z = 50
C、5*x + 2*y + z=100 Or x + y + z = 50
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论