- 下面是题目及输入输出格式要求:
- 解题思路
定义字符串数组s[100]和字符数组c[5]。c[5]中分别存储a,e,i,o,u五个元音字母。然后通过switch控制结构,分别统计字符串数组中每个元音字母的个数。再按照给定格式进行输出。
- 解决代码
#include<stdio.h> #include<string.h> int main() { int n; scanf("%d",&n); char s[100]; char c[5]={'a','e','i','o','u'}; getchar(); //为了把输入中每行末尾的换行符吸收掉 while(n--) { gets(s); int num[5]={0}; //用来统计五个对应元音的计数数组 for(int i=0;i<strlen(s);i++) { switch(s[i]){ case 'a': num[0]++;break; case 'e': num[1]++;break; case 'i': num[2]++;break; case 'o': num[3]++;break; case 'u': num[4]++;break; default: break; } } //end for() //printf("a:%d e:%d i:%d o:%d u:%d ",num[0],num[1],num[2],num[3],num[4]); for(int i=0;i<5;i++) { printf("%c:%d ",c[i],num[i]); } if(n>0) printf(" "); } return 0; }