杭電2030 漢字統計

因爲不知道所要輸入的一行字符串會有多長則不能通過定義一個字符數組來接受所輸入的一行字符,可以通過e=getchar())!='\n'語句來不停的接收字符,並且邊接收邊判斷if(e<0)如果小於0則表明接收的是一個漢字的一半(漢字佔兩個字符),然後計數器加一,最終漢字的個數是計數器值得意半!!

Problem Description
統計給定文本文件中漢字的個數。
 Input
輸入文件首先包含一個整數n,表示測試實例的個數,然後是n段文本。
 Output
對於每一段文本,輸出其中的漢字的個數,每個測試實例的輸出佔一行。
[Hint:]從漢字機內碼的特點考慮~
Sample Input
2 WaHaHa! WaHaHa! 今年過節不說話要說只說普通話WaHaHa! WaHaHa! 馬上就要期末考試了Are you ready?
 Sample Output
14 9

代碼:

#include<stdio.h>

int main()
{
 int n;
 scanf("%d",&n);
 getchar();
 while(n--)
 {
  char e;
  int sum=0;
  while((e=getchar())!='\n')
  {
   if(e<0)
      sum++;
  }
  printf("%d\n",sum/2);
 }
 return 0;
}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章