元音排序

房东的猫 提交于 2019-12-10 07:29:32

元音排序

问题描述:有一字符串,里面可能包含英文字母(大写、小写)、数字、特殊字符,现在需要实现一函数,将此字符串中的元音字母挑选出来,存入另一个字符串中,并对字符串中的字母进行从小到大的排序(小写的元音字母在前,大写的元音字母在后,依次有序)。

说明:(1)元音字母是a, e, i, o, u, A, E, I, O, U。(2)筛选出来的元音字母,不需要剔重。最终输出的字符串,小写元音字母排在前面,大写元音字母排在后面,依次有序。

【输入】字符串。

【输出】排好序之后的元音字符串。

输入:"Abort!May Be Some Errors In Out System. "

输出:“aeeeoouAEIO”

#include<stdio.h>
#include<string.h>

char Univocalic[]="aeiouAEIOU";

int main(){
	char str[200];gets(str);
	int len=strlen(str);
	int count[10],counter=0;
	for(int i=0;i<10;i++)count[i]=0;
	for(int i=0;i<len;i++){
		char *p=strchr(Univocalic,str[i]);
		if(p==NULL)continue;
		count[p-Univocalic]++;
	}
	while(counter<10){
		while(count[counter]--)printf("%c",Univocalic[counter]);
		counter++;
	}
	printf("\n");
	return 0;
}
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!