找一缕阳光呀 2017-07-27 00:02 采纳率: 93.3%
浏览 2106
已采纳

如何判断输入有几个汉字呢????

#include
int main()
{
int n,i,sum;
char s[200];
scanf("%d",&n);
getchar();
while(n--)
{
gets(s);
sum=0;
for(i=0;s[i]!='\0';i++)
{
if(s[i]<0)
{
sum++;
i++;
}
}
printf("%d\n",sum);
}
return 0;
}
这个程序是怎么判断的输入有几个汉字的

  • 写回答

2条回答 默认 最新

  • DoubleAlive 2017-07-27 01:11
    关注

    申请一个长度为200的字符数组s,将输入的字符放到这个数组里面去,然后遍历这个数组,因为一个汉字两个字符,并且对于汉字来说,负值的作用可以用来表示汉字,两个负值的字符就可以拼一个汉字出来。所以if里面有一个i++,而外面的for循环用来判断是否到了字符数组的末尾,字符数组的末尾默认是
    '\0',不知道解释的对不对,如有错的地方,请多多包涵!

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?