杭电OJ2030-汉字统计

来源:互联网 发布:软件 复制 绿色化 编辑:程序博客网 时间:2024/07/13 11:20
Problem Description
统计给定文本文件中汉字的个数。

Input
输入文件首先包含一个整数n,表示测试实例的个数,然后是n段文本。

Output
对于每一段文本,输出其中的汉字的个数,每个测试实例的输出占一行。
[Hint:]从汉字机内码的特点考虑~

Sample Input
2
WaHaHa! WaHaHa! 今年过节不说话要说只说普通话WaHaHa! WaHaHa!
马上就要期末考试了Are you ready?
 
Sample Output
14

9



我的代码:

#include <iostream>#include <string>using namespace std;int main(){int n,t;string s;cin>>n;getchar();while(n--){getline(cin,s);t=0;for(int i=0;i<=s.length();i++){if(s[i]<=256 && s[i]>=0)t++;}cout<<(s.length()-t+1)/2<<endl;}return 0;}


最开始的思路是统计除了ASCⅡ码0-256之外的字符。但是结果输出是0

然后才统计ASCⅡ码0-256内的字符,用s的长度减去,并且一个中文占两个字符,所以要除以二,要+1防止除2后被强转成int改变值的大小。

虽说是很简单的一道题,还是值得记下来。


0 0
原创粉丝点击