题库 高中信息

题干

有如下VB程序段:
Dim a(1 To 6)As Integer
n=6:i=1
Do While i <=n

x=Int(Rnd * 10)+1

If i Mod 2=x Mod 2 Then

a(i)=x
i-i+1
Else
a(n)=x
n=n-1
End If
Loop执行该程序段后,在下列选项中,a数组各元素的值可能是(   )
A.3,4,0,6,6,8B.1,8,9,11,1,5
C.2,5,8,6,7,10D.5,3,3,7,7,3
上一题 下一题 0.99难度 选择题 更新时间:2020-03-30 09:43:15

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

同类题1

计算机在存储数字字符时,1个字符占1个字节(8位),现在有如下算法可以对数字字符的存储进行压缩:以每2个数字字符为一组,将其组成一个两位的十六进制数(如输入的“41”组成十六进制数41H),再转换为对应的ASCII字符进行存储。(注意:ASCII的最大值为127D,所以2个数字字符为一组时,第1个字符必须小于8,否则不合法)
例如:
输入
输出
414243
ABC
758927
不合法
 
小波用Visual Basic 6. 0软件编写了一个压缩程序,功能如下:在文本框Text1中输入需压缩数据(偶数个字符),单击“压缩”按钮,程序对压缩数据依次进行压缩处理,压缩数据显示在文本框Text2中。程序运行界面如图所示:

(1)结合程序代码,命令按钮“压缩”的对象名是_________________
(2)为实现上述功能,请在程序划线处填入合适的代码。
Private Sub cm1_Click()
Dim s1 As String,s2 As String,c1 As String,c2 As String
Dim i As Integer,k As Integer
s1 = Text1. Text
For i = 1 To Len(s1) Step 2

c1 = Mid(s1,i,1)

______________

If c1 >= “8” Then

s2 = “不合法”
Exit For  ‘跳出For循环

Else

k = _____________
s2 = s2 + Chr(k) ‘ Chr函数的作用,将ASCII码转换为字符,例Chr(65) = “A”

End If

Next i
Text2. Text = s2
End Sub
(3)若在文本框Text1中输入“61A2”,单击“压缩”按钮后,变量i的值为_________(单选,填字母:
A.3 /B.4 /C.5 /D.程序错误)。

同类题3

为分析数组a中各元素依次变化的情况,进行如下定义:
变化段:数组中相邻两个元素构成一个变化段。变化段有上升段(a(i)>a(i-1))、下降段(a(i)<a(i-1))和持平段(a(i)=a(i-1))。数组a中的n个元素可构成n-1个依次排列的变化段。
波峰:从上升段转到下降段形成一个波峰。波峰的起点是峰顶前所有连续上升段中的第1个,终点是峰顶后所有连续下降段中的最后1个。
对称波峰:上升段与下降段个数相同的波峰称为对称波峰。
下图为一组数据的变化段及波峰示意图。

现要求统计数组a各元素依次变化过程中“对称波峰”的个数。小李依据上述描述设计如下VB程序。请回答下列问题:
(1)数组元素“1,4,3,3,2,6,8,7,9,3,4,7,9,6,3,1”依次变化过程中“对称波峰”的个数为_____。
(2)请在划线处填入合适的代码。
Const n = 20
Dim a(1 To n) As Integer
Private Sub Form_Load()
'读取数据,并存储到数组a中,代码略
End Sub
Private Sub Command1_Click()

Dim flag As Integer  '存储变化段的状态:1表示升,-1表示降,0表示平

Dim count As Integer '存储对称波峰段的个数

Dim steps As Integer

Dim i As Integer

flag = 0: steps = 0: count = 0

For i = ________ To n

If a(i) > a(i - 1) Then

If IsSymPeak(flag, steps) Then count = count + 1

If flag = 0 Or flag = -1 Then

_________

Else

steps = steps + 1

End If

flag = 1

ElseIf a(i) = a(i - 1) Then

If IsSymPeak(flag, steps) Then count = count + 1

steps = 0

flag = 0

Else

  steps = steps - 1

flag = -1

End If

Next i

If IsSymPeak(flag, steps) Then count = count + 1

Text1.Text = Str(count)

End Sub
Function IsSymPeak(flag As Integer, steps As Integer) As Boolean

If __________________ Then

IsSymPeak = True

Else

IsSymPeak = False

End If

End Function