题库 高中信息

题干

小王设计了一个Visual Basic小程序,该程序的功能是将一个二进制数转化为十六进制数。程序运行时,在文本框Text1输入二进制数(由0、1构成的数串),单击“转换”按钮Command1后,在文本框Text2中显示转换结果。程序运行界面如下图所示。

实现上述功能的程序代码如下所示,请在划线处填上合适的代码:
Private Sub Command1_Click()
Dim x As String, y As String,
Dim i As Integer, s As Integer, n As Integer, c As String
Dim q As String, h As String, ans As String
n = Len(Text1.Text)
y = Text1.Text
If n Mod 4 <> 0 Then ________________
For i = 1 To s
y = "0" + y
Next i
For i = 1 To n Step 4
________________________
If h = "0000" Then q = "0"
If h = "0001" Then q = "1"
If h = "0010" Then q = "2"
If h = "0011" Then q = "3"
If h = "0100" Then q = "4"
If h = "0101" Then q = "5"
If h = "0110" Then q = "6"
If h = "0111" Then q = "7"
If h = "1000" Then q = "8"
If h = "1001" Then q = "9"
If h = "1010" Then q = "A"
If h = "1011" Then q = "B"
If h = "1100" Then q = "C"
If h = "1101" Then q = "D"
If h = "1110" Then q = "E"
If h = "1111" Then ___________________ 
ans =_____________________  
Next i
Text2.Text =ans
End Sub
上一题 下一题 0.99难度 填空题 更新时间:2019-11-20 12:46:38

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

同类题3

某数据压缩方法描述如下:
1)原始数据中,某数不为0且相邻无重复,压缩数据用该数据表示;
2)原始数据中,某数为0且相邻无重复,压缩数据用两个数表示,第1个位0,第2个为0;
3)原始数据中,某数据相邻有重复,压缩数据用3个数表示:第1个位0,第2个为重复数的个数,第3个为该数本身;
根据上述压缩方法,对应的解压缩方法示例如图a所示。

图a

小明编写了一个解压送VB程序,功能如下:窗体加载时,自动读取压缩数据,依次存储在数组元素a(1)、a(2)、a(3)……中,压缩数据的个数存储在变量n中,压缩数据显示咋文本框Text1中。单击“解压缩”按钮Command1,程序对压缩数据依次进行解压缩处理,解压缩数据显示在文本框Text2中。程序运行界面如图b所示。

图b

(1)如果压缩数据为“23,0,21,66,0,0,77,0,5,0”,则解压缩数据的个数是__________。
(2)实现上述功能的VB程序如下。请在划线处填入合适代码。
Dim a(1 To 100) As Integer '存储压缩数据,最大处理个数为100
Dim b(1 To 1000) As Integer '存储解压缩数据,最大处理个数为1000
Dim n As Integer '存储压缩数据的个数
Private Sub Form_Load()
'压缩数据由上述压缩方法生成
'本过程用于读取压缩数据并存储在数组a,压缩数据个数存储在变量n中
'代码略
End Sub
Private Sub Command1_Click()

Dim pa As Integer '存储压缩数组当前处理位置

Dim pb As Integer '存储解压缩数组当前处理位置

Dim firstdata As Integer, count As Integer, i As Integer

pa = 1: pb = 1

Do While pa <= n

 firstdata = a(pa)
If firstdata <> 0 Then  '示例1情况处理
b(pb) = firstdata
pa = pa + 1: pb = pb + 1

Else

count = a(pa + 1)

If count = 0 Then    '示例2情况处理

b(pb) = 0

pa =____________: pb = pb + 1

Else '示例3情况处理

For i = 1 To count
______________
Next i
pa = pa + 3:  pb = pb + count
End If
End If

Loop

Text2.Text = Str(b(1))

For i = 2 To ___________

Text2.Text = Text2.Text + , + Str(b(i))

Next i

End Sub