例如,我要生成一个16位的字符串。要求混合数字,大写字母,小写字母。完全随机。存入变量a就行,不用显示到标签里。
以下简单的程序可实现(每次按command1生成一组)
Private Sub Command1_Click()
Randomize '初始化随机函数发生器,没有它,每次生成随机数相同
For i = 1 To 16
x = Int(Rnd() * 3)
If x = 0 Then
a = a + Chr(Int(Rnd * 10) + 48) '数字 ASCII为48到58
Else
If x = 1 Then
a = a + Chr(Int(Rnd * 26) + 65) '大写
Else
a = a + Chr(Int(Rnd * 26) + 97) '小写
End If
End If
Next
Print a
End Sub
测试结果
Randomize
For i = 1 To 16 '字符串的数量
Select Case Rnd * Rnd * 35
Case Is < 1
b = "a"
a = a & b
Case Is < 2
b = "b"
a = a & b
Case Is < 3
b = "c"
a = a & b
Case Is < 4
b = "d"
a = a & b
Case Is < 5
b = "e"
a = a & b
Case Is < 6
b = "f"
a = a & b
Case Is < 7
b = "g"
a = a & b
Case Is < 8
b = "h"
a = a & b
Case Is < 9
b = "i"
a = a & b
Case Is < 10
b = "j"
a = a & b
Case Is < 11
b = "k"
a = a & b
Case Is < 12
b = "l"
a = a & b
Case Is < 13
b = "m"
Case Is < 14
b = "n"
a = a & b
Case Is < 15
b = "o"
a = a & b
Case Is < 16
b = "p"
a = a & b
Case Is < 17
b = "q"
a = a & b
Case Is < 18
b = "r"
a = a & b
Case Is < 19
b = "s"
a = a & b
Case Is < 20
b = "t"
a = a & b
Case Is < 21
b = "u"
a = a & b
Case Is < 22
b = "v"
a = a & b
Case Is < 23
b = "w"
a = a & b
Case Is < 24
b = "x"
a = a & b
Case Is < 25
b = "y"
a = a & b
Case Is < 26
b = "z"
a = a & b
Case Else
b = "。"
a = a & b
End Select
Next i
'vb6写过来的,自己写的,虽然笨……vb6粘贴过来还没空行,又要一个一个空行……
'以上代码可以生成小写的26字母和句号,随机的,放在变量a中。亲测可用。
'如果需要其他的,那就在单分支语句里加,我写不下去了。
'望采纳!
上一篇:不习惯R6的萌新咋提高实力
下一篇:化工储罐一般都是什么材质的?