Problem B: ASCII碼排序
Time Limit: 1 Sec Memory Limit: 64 MB
Description
輸入三個字符後,按各字符的ASCII碼從小到大的順序輸出這三個字符。
Input
輸入數據有多組,每組佔一行,有三個字符組成,之間無空格。
Output
對於每組輸入數據,輸出一行,字符中間用一個空格分開。
Sample Input
qwe
asd
zxc
Sample Output
e q w
a d s
c x z
HINT
%*c 可以忽略行尾多餘的換行符
參考答案:
#include<stdio.h>
int main()
{
char a,b,c,t;
int input;
input=scanf("%c%c%c",&a,&b,&c);
while(input!=EOF)
{
if(a>b) //保證a<=b
{
t=a;
a=b;
b=t;
}
if(a>c) //保證a<=c,這樣,a就最小了
{
t=a;
a=c;
c=t;
}
if(b>c) //對比a大的兩個字符,保證b<=c
{
t=b;
b=c;
c=t;
}
printf("%c %c %c\n",a,b,c);
scanf("%c",&a);//fflush(stdin);清除最後輸入的換行符的影響
input=scanf("%c%c%c",&a,&b,&c);
}
return 0;
}
編程軟件及學習視頻下載:點擊打開鏈接