您的位置:首页 > 其它

指针——统计元音字母

2014-08-22 13:57 197 查看
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 <stdio.h>
#include <stdlib.h>
#include"string.h"
int main()
{
int n,m,i,k,b[5]={0};
char a[120]={'\0'},*p=a,x;
scanf("%d",&m);
scanf("%c",&x);
for (k=1;k<m;k++)
{
gets(a);
n=strlen(a);
for(i=0;i<n;i++)
{
switch(*(p+i))
{
case 'a':b[0]+=1;break;
case 'e':b[1]+=1;break;
case 'i':b[2]+=1;break;
case 'o':b[3]+=1;break;
case 'u':b[4]+=1;break;
}
}
for (i=0;i<5;i++)
{
if(i==0)printf("a:");
else if(i==1)printf("e:");
else if(i==2)printf("i:");
else if(i==3)printf("o:");
else if(i==4)printf("u:");
printf("%d\n",b[i]);
b[i]=0;
}
putchar('\n');
}
gets(a);
n=strlen(a);
for(i=0;i<n;i++)
{
switch(*(p+i))
{
case 'a':b[0]+=1;break;
case 'e':b[1]+=1;break;
case 'i':b[2]+=1;break;
case 'o':b[3]+=1;break;
case 'u':b[4]+=1;break;
}
}
for (i=0;i<5;i++)
{
if(i==0)
{printf("a:");printf("%d\n",b[i]);}
else if(i==1)
{printf("e:");printf("%d\n",b[i]);}
else if(i==2)
{printf("i:");printf("%d\n",b[i]);}
else if(i==3)
{printf("o:");printf("%d\n",b[i]);}
else if(i==4)
{printf("u:");printf("%d",b[i]);}
}
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: