解题思路:1.先遍历输入的字符串,找出a,e,o,i,u字符,并进行存储。2.然后对已存储的数组进行排序。3.最后通过for循环进行输出。
注意事项:进行步骤一时,不要用while((c=getchar())!='\n'),进行字符处理,否则会出现程序超时现象。
参考代码:
#include<stdio.h>
#include<string.h>
int main()
{
char c,temp;
char str1[100],str2[50];
int i,j,n=0,m=0;
gets(str1);
n=strlen(str1);
for(i=0;i<n;i++)
{
if(str1[i]=='a'||str1[i]=='e'||str1[i]=='i'||str1[i]=='o'||str1[i]=='u')
{
str2[m++]=str1[i];
}
}
for(i=1;i<m;i++)
for(j=0;j<m-i;j++)
{
if(str2[j]>str2[j+1])
{
temp=str2[j];
str2[j]=str2[j+1];
str2[j+1]=temp;
}
}
for(i=0;i<m;i++)
printf("%c",str2[i]);
return 0;
}
0.0分
2 人评分
C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:
一点编程也不会写的:零基础C语言学练课程
解决困扰你多年的C语言疑难杂症特性的C语言进阶课程
从零到写出一个爬虫的Python编程课程
只会语法写不出代码?手把手带你写100个编程真题的编程百练课程
信息学奥赛或C++选手的 必学C++课程
蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程
手把手讲解近五年真题的蓝桥杯辅导课程
发表评论 取消回复