ASCII码排序
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 141816 Accepted Submission(s): 58235
Problem Description
输入三个字符后,按各字符的ASCII码从小到大的顺序输出这三个字符。
Input
输入数据有多组,每组占一行,有三个字符组成,之间无空格。
Output
对于每组输入数据,输出一行,字符中间用一个空格分开。
Sample Input
qwe asd zxc
Sample Output
e q w a d s c x z
感觉代码还是写得很哆嗦……应该还可以再简化一下
#include<stdio.h>
int main(){
int a[100],i,j,t;
char zifu[3];
while(scanf("%s",zifu)!=EOF){ //已有 scanf("%s",zifu),无需另外再加
for(i=0;i<=1;i++){
for(j=0;j<=1;j++){
if(zifu[j]<zifu[j+1]){
t=zifu[j];
zifu[j]=zifu[j+1];
zifu[j+1]=t;
}
}
}
for(i=2;i>=0;i--){
if(i==0)printf("%c",zifu[i]); //单个字符打印
else printf("%c ",zifu[i]);
}
printf("\n");
}
return 0;
}