题库 高中信息

题干

有一个数列,它的前二个数为0,1,此后的每个数都是其前面2个数之和,即0,1,1,2,3,5,8,13...要求编写程序,输出该数列到刚超过10000的数为止,且项数不能超过100项。编写程序如下:
Dim i As Integer, a As Integer, b As Integer, c As Integer
Dim s As String
a = 0: b = 1: c = 0: i = 2
s = Str(a) + Str(b)
Do While c <= 10000 And i < 100
a = b: b = c
c = a + b
s = s + Str(c)
i = i + 1
Loop
Text1.Text = s
运行上面的程序,发现输出的数列不正确,应进行修改。以下修改正确的是
A.把c<=10000改为 c>10000B.把i<100改成i<=100
C.把i=i+1移到Do While c<=10000 and i<100下面D.把语句c=a+b移到a=b:b=c的上面
上一题 下一题 0.99难度 选择题 更新时间:2019-04-11 11:08:40

答案(点此获取答案解析)

同类题3

(加试题)猴子选大王的问题:N 只猴子选大王,选举办法如下:从头到尾 1、2、3 报数,凡报 3 的退 出,余下的从尾到头 1、2、3 报数,还是报 3 的退出,依此类推;当剩下只有两只猴子时,不再报数,取 当前报数报 1 的为王。如五只猴子报数,则第一轮顺序为第 12345,第 3 只出列,第二轮顺序为 5421,第 2只出列;第三轮顺序为 145,第 5 只出列,这时第 1 只猴子报数为 1,则第 1 只猴子为猴王。若想当猴王, 请问最初占据什么位置?在 Text1 文本框中输入参选大王的猴子总数量,单击“猴王的位置”,在 Label2 标 签上显猴王最初的位置。VB程序运行界面如下:

实现上述功能的 VB程序如下:
(1)如果只有 10 只猴子参加本次选大王,则猴王最初的位置为:________
(2)实现上述功能的 VB程序如下,请在划线处填入合适代码。
Private Sub Command1Click()
Dim n, x, m, s As Integer   '假设参与的猴子数量不超过 5000
Dim a(1 To 5000) As Integer  '用数组 a 存储每只猴子的报数,值为 3 时视同出列
Dim t, y As Boolean    't 用于循环,y 为 true 时表示报数顺序是从头到尾,y 为 false 时报数顺序 是从尾到头
n = Val(Text1.Text)
x = 1  'x 为每次猴子的位置
m = 1  'm 为报数的 1、2、3
y = True
t = True
Do While t
'该位置的猴子是否已经出列
If a(x) <> 3 Then '没有出列的,则报数
a(x) = m
①________ '1,2,3 之后重新开始
If m > 3 Then m = 1
Else '每次有猴子报 3 出列之后,检查是否已经只有两只猴子没有出列
s = 0
For i = 1 To n
If ②________   Then s = s + 1
Next i
If s < 3 Then Exit Do
End If
If y = True Then x = x + 1 Else x = x - 1
'检查报数是在递增,还是递减,y 为 true 时递增
'报到最后一次猴子后
If x > n Then y = False: m = 1: x = n
'报到第一次猴子后
If x = 0 Then y = True: m = 1:
Loop
'输出猴王的位置
For i = 1 To n
③_________
If a(i) = 1 Then Label2.Caption = "猴王的位置为第" + Str(i) + " 只"
Next i
End Sub

同类题5

(加试题)用一个6*5矩阵表示地图,分别用a数组元素表示,第1行从左到右为a(1)到a(6),依次类推,右下角为a(30)。其中数字0表示不通,数字1I表示畅通。现在要从左上角到右下角寻找一条畅通的路径。线路规则如F:
•路线每个位置只能向右或向下
•任何一个岔口优先向右走,右侧不通再向下走
•一条路线中每个位置只能走一次,不能重复
算法思路:探路过程中,记录每个位置坐标到数组lu;遇到岔路口(向右向下都通),则记录路口坐标到数组cha;遇到前方无路时,需要返回到上一个路口,标记路口右侧不通;当前方无路,岔路口数组也退回到0,说明整体不通,否则根据规则走到右下角为止,最后输出整体线路坐标。
实现算法的程序如下,运行结果如图所示。
回答下列问题:
(1)根据规则,如图迷宫矩阵正确路线的第6个位置是a数组的第_________个元素(填数字)

(2)在程序划线处填上合适代码,使程序完整。
Dim a(1 To 50) As Integer
Private Sub Command1_Click()
Dim i As Integer,j As Integer,pos As Integer
Dim cha(1 To 10)As Integer'记录一条路线中各个岔路口
Dim lu(1 To 10) As Integer’记录路线经过的位置
pos=1:j=0:lu(1)=1:i=1
Do While i <=9‘第1个和最后1个固定,中间有9个需要路过的路径点

If pos Mod 6<>0 And a(pos+1)=1 Then' 向右畅通

If pos+6 <=30 and a(pos+6)=1 Then‘记录岔路口
j=j+1
_____________
End If
pos=pos+1
i=i+1
1u(i)=pos
Else If pos+6 <=30 And a(pos+6)=1 Then’向下畅通
pos=pos+6
i=i+1
lu(i)=pos
Else’坐标退回到上一个岔路口
If j=0 Then Exit Do
Do While lu(i)<>cha(j)
_____________
Loop
a(cha(j)+1)=0’标记此路口右侧不可用
_____________
j=j-1
End If;

Loop

If j=0 Then

Text1.Text="没有畅通道路"

Else

For i=1 To 10
Text1.Text=Text1.Text+Str(lu(i))
Next i

End If

End Sub
Private Sub Form_Load()

‘生成图形矩阵的数组a各个元素,并在列表框显示,代码略

End Sub