https://vjudge.net/contest/274223#problem/I
这是一道要注意空格,并且使用ASCII码解决的问题哦
#include<cstring>
#include <iostream>
using namespace std;
int main()
{
int n;
cin >> n;
getchar();//用于清除输入n之后的空格,防止其掉入cin.getline;
int q, w, e, r, t; char a[100];//这里定义5个数来记住每次出现元音字母的次数
for (int i = 1; i <= n; i++)
{
cin.getline(a, 100);//利用get可以输入空格
q = w = e = r = t = 0;
for (int j = 0; j < strlen(a); j++)//用字符串函数计算字符串长度来决定循环次数
{
switch (a[j])//利用ASCII码来判断需要过滤出来的数
{
case 97:q++; break;
case 101:w++; break;
case 105:e++; break;
case 111:r++; break;
case 117:t++; break;
default: break;
}
}
cout << "a:" << q << endl;
cout << "e:" << w << endl;
cout << "i:" << e << endl;
cout << "o:" << r << endl;
cout << "u:" << t << endl;
if (i != n)//如果是最后一行,就不输出空格
cout << endl;
}
}