大大!接触VB不是太多,断断续续的,所以一直没有什么进步,惭愧中。。。。。。
您给的程序我修改了一下,只显示某一个字符(如“A”),可以显示个数。
Dim a As String, b As Long, c As String, f As Boolean, i As Integer
b = 0
'首先对统计数清零
f = False
Open "c:\11.txt" For Input As #1
While Not EOF(1)
Line Input #1, a
If InStr(a, "//..") > 0 Then f = True
'找到双斜杠的标志,设置变量f为真,准备统计
If f Then
For i = 1 To Len(a)
c = Mid(a, i, 1)
If Asc(c) = 65 Then b = b + 1
'如果是数字或字母x则统计个数,x统计在数组b(0)中,数字1-9则在b(1)-b(9)中
Next
End If
Wend
Close #1
Text1.text = b
这时文本框中显示8,是对的。
但是 重新按照我的想法修改:
Dim a As String, b(26) As Long, c As String, f As Boolean, i As Integer
For i = 1 To 26
b(i) = 0
'首先对统计数清零
Next
f = False
Open "c:\11.txt" For Input As #1
While Not EOF(1)
Line Input #1, a
If InStr(a, "//..") > 0 Then f = True
'找到双斜杠的标志,设置变量f为真,准备统计
If f Then
For i = 1 To Len(a)
c = Mid(a, i, 1)
If Asc(c) >= 65
Then b(Val(c)) = b(Val(c)) + 1
'如果是数字或字母x则统计个数,x统计在数组b(0)中,数字1-9则在b(1)-b(9)中
Next
End If
Wend
Close #1
Text1.text = b(1)
这时文本框中显示0,就不对了。
请教大大,是Val函数不对么?我改用Str函数也不对。请指教一下吧.
[
本帖最后由 ictest 于 2013-10-20 22:50 编辑 ]