汉字统计
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 55201 Accepted Submission(s): 29848
Problem Description
统计给定文本文件中汉字的个数。
Input
输入文件首先包含一个整数n,表示测试实例的个数,然后是n段文本。
Output
对于每一段文本,输出其中的汉字的个数,每个测试实例的输出占一行。
[Hint:]从汉字机内码的特点考虑~
[Hint:]从汉字机内码的特点考虑~
Sample Input
2 WaHaHa! WaHaHa! 今年过节不说话要说只说普通话WaHaHa! WaHaHa! 马上就要期末考试了Are you ready?
Sample Output
14 9
Author
lcy
Source
Recommend
答案:
#include <stdlib.h>
#include <string.h>
void main()
{
int n;
int i;
char str[1000];
int sum;
scanf("%d\n",&n);
while(n--)
{
memset(str,'\0',sizeof(str));//将字符数组置空
sum = 0;
gets(str);//获取屏幕上的一行数据
for(i=0;str[i]!='\0';i++)
{
if(str[i]<32||str[i]>126)//32到126为可见字符,非可见字符即为汉子
sum++;
}
printf("%d\n",(sum+1)/2);
}
}