VB的一道编程题....

Len(Chr(70)+Str(0))+Asc(Chr(67))=____;
请高手解释该怎么做这道题目?我需要详细的过程,万分感谢..

首先,如果你选择的文本不是空字符串(有单词),那么进行for循环,c
=
Mid(Text1.SelText,
i,
1)这个函数是取得你所选择文本的从第i个算起的第1个字符,就是第i个字符,配合下面if语句结构,If
c
<>
"
"
Then
t
=
t
+
c
else......,如果这个第i字符不是空字符串,那么字符串累积,如果第i字符是空字符串,则累积结束。直观表现就是选出你一段话中的一个单词,然后和the进行比对(因为英文单词和单词之间是空字符串相隔的)。
打个比方如果你选的一段话为qwe
the
twety,变量i在for循环中从1到13(字符串长度:11个字母加上2个空格间隔)i=1时c=Mid(qwe
the
twety,
i,
1)=q,t此时为空字符串,执行t
=
t
+
c后t=q,i=2时c=Mid(qwe
the
twety,
i,
1)=w,执行t
=
t
+
c后t=qw,i=3时c=Mid(qwe
the
twety,
i,
1)=e,执行t
=
t
+
c后t=qwe,i=4时c=Mid(qwe
the
twety,
i,
1)=
(空字符串),进入if分支语句,LCase$(t)
=qwe(如果此时c为空字符串,LCase$(c)=(空字符串),),不是the,不执行m=m+1,m=0
进行比较,不是the,m无变化,i=5、6、7、8,此时LCase$(t)
=the(i=8时c仍为空字符串),执行m=m+1。
综上所述,如果用
LCase$(c)="the"运行,c此时为空字符串,LCase$(c)为空字符串,LCase$(c)="the"这个条件达不到,不能执行m=m+1,所以m一直是0
望采纳
温馨提示:内容为网友见解,仅供参考
第1个回答  2008-06-11
chr(70)得到的是ASCII码为70的字符
str(0)得到的是"空格0"的字符串
len()是取得字符串的长度
len(chr(70)+str(0))的长度就是chr(70)一个字符加str(0)2个字符,=3
chr(67)得到的是ASCII码为67的字符,Asc()得到某个字符的ASCII码,结果还是等于67,
全部结果算下来,这道题的答案就是 70本回答被提问者采纳
相似回答