【C++】统计一段话中字母、数字、空格、标点、其他和总共,程序

//输入一段话,以‘@’结尾,我们将统计字母、空格、数字、标点、其他、总数
#include <iostream>
#include <cctype>
int main()
{
	using namespace std;
	cout << "输入一段话,以‘@’结尾,我们将统计字母、空格、数字、标点、其他、总数" << endl;

	char ch;
	int space = 0;
	int digits = 0;
	int chars = 0;
	int punct = 0;
	int others = 0;
	int all = 0;

	cin.get(ch);
	while (ch !='@')
	{
		if (isalpha(ch))
			chars++;
		else if (isspace(ch))
			space++;
		else if (isdigit(ch))
			digits++;
		else if (ispunct(ch))
			punct++;
		else
			others++;
		all++;
		cin.get(ch);
	}

	cout << chars << "\t" << "字母" << endl;
	cout << space << "\t" << "空格" << endl;
	cout << digits << "\t" << "数字" << endl;
	cout << punct << "\t" << "标点" << endl;
	cout << others << "\t" << "其他" << endl;
	cout <<  "\t" <<all << "一共这么多个" << endl;

	system("pause");
	return 0;


}

注意:统计的空白字符包含 换行符

【C++】统计一段话中字母、数字、空格、标点、其他和总共,程序