A-A+
下列程序的功能是统计一个字符串中包括多少个汉字(假设这些汉字均属于GB2312字符集) 其基
问题详情
下列程序的功能是统计一个字符串中包括多少个汉字(假设这些汉字均属于GB2312字符集),其基本算法是从字符串中依次取一个字符,如果其ASCII码值大于127,则为一个汉字内码的第一个字节。请填空。
STR1="中国(ChinA) 是一个伟大的国家(nation)"
C=0
DO WHILE LEN(STR1)>0
IF _________ (LEFT(STR1,1))>127
C=C+1
STR1=SUBSTR(STR1, ________ )
ELSE
STR1=SUBSTR(STR1, _______ )
ENDIF
ENDDO
WAIT WINDOWS"汉字个数为"+STR(C)请帮忙给出正确答案和分析,谢谢!
参考答案
正确答案:ASC32
ASC32 解析:为统计一个字符串中的汉字个数,先从该字符串中取出第一个字符,看其ASCII码是否超过127,如果超过127,则是汉字,汉字的数目加1,把字符串的前两个字符去掉形成新的字符串,若不是汉字则把字符串的第一个字符去掉,形成新的字符串,再从新字符串中取出第一个字符,这样反复直到所有的字符都判断完毕为止。所以本题第1空应填求ASCII码的函数名,为“ASC”,本题第2空通过SUBSTR函数取得从原来字符串的第3个字符开始的字符串,故应填“3”,同理本题的第3空处应填“2”。