题库 高中信息

题干

商品条形码是一个13 位数,它是商品的“身份证”。条形码中前8位是厂商识别代码,接着4 位是商品项目代码,最后一位是校验码。校验码是由前12 位数按一定公式计算而得出的,其计算公式见下表

小明编写了一个VB程序,输入一个二维码后,点击“验证”按钮后,程序根据如上算法验证
条形码的验证码是否正确,代码如下所示:
Private Sub Command1_Click()
Dim s As String,x As String
Dim js As Integer,os As Integer,jy As Integer
s =" Text1." Text
n = Len(s)
If n <> 13 Then
Label1.Caption = "条形码位数错误"
Else[:学#科#网Z#X#X#K]
For i =" 1" To 12
x = Val(Mid(s,i,1))
If _____①___________Then
js =" js" + x
Else
os =" os" + x
End If
Next i
End If
jy =" os" * 3 + js
jy = ______②____________
If  jy =" 10"  Then jy = 0
If  jy = Val(Mid(s,13,1))  Then
Label1.Caption = "验证码正确"
Else
Label1.Caption = "验证码错误"
End If
End Sub
(1)要实现如上VB程序,在窗体上至少有_____个控件对象(窗体除外)。
(2)要实现上述功能,程序中划线处①位置应填写的表达式是___________________
(3)要实现上述功能,程序中划线处②位置应填写的表达式是____________________
(4)若在该程序运行时,输入的待检测的二维码是“6921734953025”,执行上述程序,输出的
结果是________________________________
上一题 下一题 0.99难度 填空题 更新时间:2017-02-24 09:44:25

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

同类题1

某数据压缩方法描述如下:
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