点击查看原题
cin,getline()可以连续读取包含空格的字符数组,直至遇见结束符。
ac的c++代码如下:
#include <iostream>
using namespace std;
int main()
{
int n;
cin >> n;
getchar();
int *a = new int[n];
int *e = new int[n];
int *I = new int[n];
int *o = new int[n];
int *u = new int[n];
for (int i = 0;i < n; i++)
{
a[i] = 0, e[i] = 0, I[i] = 0, o[i] = 0, u[i] = 0;
char p[101];
cin.getline(p,101);
int j = 0;
for (; j < 101&&p[j]!='\0'; j++)
{
if (p[j] == 'a')
a[i]++;
if (p[j] == 'e')
e[i]++;
if (p[j] == 'i')
I[i]++;
if (p[j] == 'o')
o[i]++;
if (p[j] == 'u')
u[i]++;
}
}
for (int i = 0; i < n; i++)
{
if (i + 1 < n)
cout << "a:" << a[i] << endl << "e:" << e[i] << endl << "i:" << I[i] << endl << "o:" << o[i] << endl << "u:" << u[i] << endl << endl;
else
cout << "a:" << a[i] << endl << "e:" << e[i] << endl << "i:" << I[i] << endl << "o:" << o[i] << endl << "u:" << u[i]<<endl;
}
delete a, e, I, o, u;
return 0;
}