本题链接:点击打开链接
本题大意:
求所输入字符串中汉字的个数。
本题思路:
在做此题时我也不知道汉子在计算机中是怎么存放的,经过查找资料知道,汉字是没有ASCΙΙ码的,汉字在计算机中使用两个字节存放,并且每个字节的最高位都是1,而在计算机中,字节最高位为符号位,1表示负数,故汉字机内码每个字节表示的十进制都是负数,所以需统计的便是有多少负数了,又因为每个汉字占两个字节,故可采取相应措施。
参考代码:
#include<stdio.h>
#include<string.h>
char str[100000];
int main()
{
int n;
while(scanf("%d",&n)!=EOF)
{
getchar();
while(n--)
{
gets(str);
int len=strlen(str);
int count=0;
for(int i=0;i<len;i++)
if(str[i]<0)
{
count++;
i++;
}
printf("%d\n",count);
}
}
return 0;
}