Mid函数的问题~~
有一个比较初级的问题:
求一个车牌号,条件是:1)前两位数字相同;2)后两位数字相同;3)该4位车牌号恰是一个整数的平方
小弟我写了这样一段代码:
Private Sub Form_Click()
Dim a(1 To 4) As Integer
Dim i As Integer
Dim x As String
For i = 32 To 99
x = Str(i ^ 2)
a(1) = Val(Mid(x, 2, 1))
a(2) = Val(Mid(x, 3, 1))
a(3) = Val(Mid(x, 4, 1))
a(4) = Val(Mid(x, 5, 1))
If a(1) = a(2) And a(3) = a(4) Then
Exit For
End If
Next i
Form1.Print "车牌号是:" & x
End Sub
可是这里为什么要是
a(1) = Val(Mid(x, 2, 1))
a(2) = Val(Mid(x, 3, 1))
a(3) = Val(Mid(x, 4, 1))
a(4) = Val(Mid(x, 5, 1))
才可以正确显示,如果改成:
a(1) = Val(Mid(x, 1, 1))
a(2) = Val(Mid(x, 2, 1))
a(3) = Val(Mid(x, 3, 1))
a(4) = Val(Mid(x, 4, 1))
就得不到正确的结果了?我试着看了一下,如果用下面的这段代码,那么得到的结果变成了9801(99的平方),a(1)=0,a(2)=9,a(3)=8,a(4)=0,请问这是为什么?~~