题目

某日期加密授权码的生成方法如下: ①授权码由9位字符组成,前8位为日期的密文,最后1位为验证码; ②取日期各位的字符,若该字符第一次出现,则直接取其对应的加密字符,否则取下一个不重复的加密字符; ③求出所有日期字符数值的和,将和除16取余加1得到一位验证码字符,取得的验证码重复时,处理规则与②相同。 加密字符对应表如下: 值(十进制) 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 加密字符 K n G j L t W b O a P H Z Q Y C 小李设计了一个生成8位日期(YYYYMMDD格式)授权码的VB程序,程序功能如下:在文本框Text1中输入一个8位有效日期,单击“生成”按钮Command1后,在标签Label2中显示该日期的授权码。运行界面如图所示。实现上述功能的VB程序如下。 (1) 若输入的日期为"19970601",则其授权码是。 (2) 请在画线处填入合适的代码。 Dim f(0 To 15)As Integer Const code ="KnGjLtWbOaPHZQYC" Private Sub Command1_Click( )     Dim rq As String,sq As String     Dim c As Integer,i As Integer,d As Integer     rq = Textl.Text:sq=""     For i= 1 To 8         c=Val(Mid(rq,i,1))         d=d+c         sq=   ①        Next i     yz =GetChar(d Mod 16+1)     Text2.Text = sq + yz End Sub Function GetChar(x As Integer) As String   Dim flag As Boolean   flag = False   Do While flag = False       f(x) =f(x) +1       If f(x) =1 Then            ②            f(x) =f(x) +1         flag=True       Else         x=(x+1) Mod 16       End If   Loop End Function 以上程序段运行时,为了实现上述功能,画线处应填入的代码分别为:①;②。 答案: 【1】naPbKWGjL 【1】sq+GetChar(c)【2】GetChar = Mid(code,x+1,1)
信息技术 试题推荐