充值活动已开启,快来参与吧 关闭充值活动
当前位置: 高中信息技术 /
  • 1. 某网站注册密码需要符合以下两点条件:①密码不少于4位字符组成;②必须同时包含4种字符,大写字母“A-Z”,小写字母“a-z”,数字“0-9”,特殊符号“! @# $%~&.*”,为了方便批量注册,小迪同学编写了自动生成密码的VB程序,程序运行界面如图所示,当在文本框Text1中输人需生成密码长度,点击“生成密码”按钮(Command1),在文本框Text2中输出符合要求的密码串。

    1. (1) 下列对象不具有Caption属性的是(单选,填字母:A.Command1/B.Form1/C.Text1/D.Label1)
    2. (2) 实现上述功能的VB程序如下,请在划线处填入合适代码。

      Private Sub Command1_ Click( )

          Dim a(0 To 4) As Integer, b(1 To 4) As Integer

          Dim key As String, s As String, n As Integer, k As Integer, i As Integer, j As Integer, sum As Integer

          key="ABCDEFGHJKIMNC)PQRSTUVWXYZabdefghijklmnopqrstuvwxyz0123456789! @# $ %&.*"

          Randomize

          n= Val(Text1.Text)

          a(0)=0:a(1)=26 :a(2)=52 :a(3)=62:a(4)=70     '记录每种符号的结束位置

          s= ""

          For i=1 To 4

              b(i) =0      'b数组记录某类符号是否使用

          Next i

          sum=4           '当前未使用字符类型,初始为4种

          Do While Len(s)+sum< n

              k=       '随机选择一个密码序号

              s=s+ Mid(key, k, 1)

              i= 1

              Do While

                  i=i+ 1

              Loop

              b(i)= 1

              sum=4-b(1)-b(2)-b(3)-b(4)

          Loop

          '生成剩余未出现元素密码,保证4种符号均有出现

          For i=1 To sum

              j=Int(Rnd*4)十1

              Do While ( )

                  j=j Mod 4+1

              Loop

              b(j)=1

              k=Int(Rnd * (a(j)-a(j- 1)))+a(j-1)+1

              s=s+Mid(key, k, 1)

          Next i

          Text2.Text=s

      End Sub

    3. (3) 程序代码中的加框处代码有误,请改正。
    4. (4) 如果文本框Text1中输入值2,文本框Text2中输出字符长度为(单选,填字母:A . 2/ B . 4 /C .运行错误/D .没有输出)