汉字统计


题目描述
 
    
统计给定文本文件中汉字的个数。
 
输入描述
 
    
每组测试数据包含一段文本。
 
输出描述
 
    
对于每一段文本,输出其中的汉字的个数,每个测试实例的输出占一行。 [提示:]从汉字机内码的特点考虑~
 
输入样例
 
    
WaHaHa! WaHaHa! 今年过节不说话要说只说普通话WaHaHa! WaHaHa!
 
输出样例
 
    
14
 

这类简单问题,不多说,还记得我们的口号是什么吗?暴力,暴力,暴力解决

//暴力可以直接解决的
#include
#include

void hw(char a[10000])    //直接用一个子函数解决战斗
{
 int sum=0;
 int l=strlen(a);    //计算长度
 for(int i=0;i {
  if(a[i]<0||a[i]>126)  //ascll码不在1-126之内的直接++
  sum++;
}
 printf("%d\n",sum/2);      //因为一个汉字是由两个字节来储存的,因此除以2
}
int main()
{
 char a[10000];     //老朽怕麻烦,直接定义一个非常大的储存空间,
 gets(a);      /*因为输入的数据中包含空格,因此用scanf("%s",&a);这个语句的话就会不包含空格,
 因此使用gets(a);语句,表示将输入的数据全部储存在字符数组a中,回车结束*/
 hw(a);       //调用函数
 return 0;
}
/*问题很简单,因此有很多的方法解决,我的只是一种,不一定是简单的,但是一定是可以看的懂的,如果可以的话加一个关注,
随便评论一下都是给我的赞同,有好方法也可以评论回复我,谢谢,加个关注吧 */

你可能感兴趣的:(C/C++语言基础题目)