麻烦你解释一下

来源:学生作业帮助网 编辑:六六作业网 时间:2024/11/17 03:46:08
麻烦你解释一下麻烦你解释一下麻烦你解释一下PrivateSubCommand1_Click()DimmyOutputAsString,iAsInteger,jAsIntegerFori=1To26j=

麻烦你解释一下
麻烦你解释一下

麻烦你解释一下
Private Sub Command1_Click()
Dim myOutput As String,i As Integer,j As Integer
For i = 1 To 26
j = Len(Text1.Text) - Len(Replace(UCase(Text1.Text),Chr(i + 64),""))
myOutput = myOutput & IIf(j = 0,"",Chr(i + 64) & ":" & j & vbCrLf)
Next
MsgBox myOutput
关键是for循环里的两个句子,每循环一次计算一个大写字母的次数,共计算26次,具体过程如下:
循环里的第一句计算相应字母的个数,原理是先算出原字符串所有字母的个数Len(Text1.Text) ,再将原字符串中的相应大写字母(用Ucase将所有字母变成大写)用空串""代替Replace(UCase(Text1.Text),Chr(i + 64),"")),这样处理后原字符串中相应字母就没有了,然后计算处理后的字符串的长度(Len(Replace(UCase(Text1.Text),Chr(i + 64),"")),前后两个字母串相减就得到相应字母的个数啦.
第二句,如果相应字母没有出现(代替前后字符串相等,j=0),就把它当作浮云,如果有相应的字母(j0)就将它记录到一个变量myOutput中,继续循环,直到26个字母都计算过,再用msgbox显示结果
晕,原来用文字说明比代码复杂多啦

cx