第二期训练白银组第五题

Sum Problem

Time Limit: 1000/1000 MS
32768/32768 K

Problem Description

统计给定文本文件中汉字的个数。

Input

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

Output

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

Sample Input

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

Sample Output

14
9

问题链接:汉字统计

问题简述:

输入字母,如果全是大写或者首字母是小写而其他为大写,则大写换小写,小写换大写,如果不是以上两种情况则不作处理。

问题分析:

汉字在字符串中是以两个负的字符形式存储
  
程序说明:

先用
  string str2;
getline(cin, str2);
抵消掉cin>>n;
用int length = str1.length();计算长度
if (str1[i] < 0)
{
sum++;
}
计算汉字数目

AC通过的C语言程序如下:

#include<iostream>
#include<string>
using namespace std;
int main()
{
	int n;
	cin >> n;
	string str2;
	getline(cin, str2);
	while (n--)
	{
		int sum=0;
		string str1;
		getline(cin, str1);
		int length = str1.length();
	for(int i=0;i<length;i++)
	{
		if (str1[i] < 0)
		{
			sum++;
		}

	}
	cout << sum / 2 << endl;
	}
	
}

猜你喜欢

转载自blog.csdn.net/weixin_44003969/article/details/85010242