统计元音(stringstream的-应用)

时间:2022-05-23 02:15:44
Problem Description
统计每个元音字母在字符串中出现的次数。
 
Input
输入数据首先包括一个整数n,表示测试实例的个数,然后是n行长度不超过100的字符串。
 
Output
对于每个测试实例输出5行,格式如下:
a:num1
e:num2
i:num3
o:num4
u:num5
多个测试实例之间由一个空行隔开。

请特别注意:最后一块输出后面没有空行:)

 
Sample Input
2
aeiou
my name is ignatius
 
Sample Output
a:1
e:1
i:1
o:1
u:1
 
a:2
e:1
i:3
o:0
u:1
           话说“请特别注意:最后一块输出后面没有空行”到底怎样擦算啊?我去
 #include<iostream>
#include<iomanip>
//#include<bits/stdc++.h>
#include<cstdio>
#include<cmath>
#include<sstream>
#define PI 3.14159265358979
#define LL long long
#define eps 0.00000001
#define LL long long
using namespace std;
int main()
{
//freopen("input.txt","r",stdin);
char c[];
int T;
cin>>T;
getchar();//吸收回车
while(T--)
{
gets(c);
stringstream ss(c);//复制
string s;int sum1=,sum2=,sum3=,sum4=,sum5=;
while(ss>>s)//ss->s
{
int l=s.size();
for(int i=;i<l;++i)
{
if(s[i]=='a') ++sum1;
if(s[i]=='e') ++sum2;
if(s[i]=='i') ++sum3;
if(s[i]=='o') ++sum4;
if(s[i]=='u') ++sum5;
}
}
cout<<"a:"<<sum1<<endl;
cout<<"e:"<<sum2<<endl;
cout<<"i:"<<sum3<<endl;
cout<<"o:"<<sum4<<endl;
if(T!=) cout<<"u:"<<sum5<<endl<<endl;
else cout<<"u:"<<sum5<<endl;
}
}