ASCII码排序

2018-05-28  本文已影响0人  jie202

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()

{

char a,b,c,temp;

while((scanf("%c%c%c%*c",&a,&b,&c)))

{

if(a>b) {

temp=a;a=b;b=temp;}

if(a>c){

temp=a;a=c;c=temp;}

if(b>c) {

temp=b;b=c;c=temp;}

printf("%c%c%c\n",a,b,c);

}

return 0;

}

总结:%*c可以跳过任何一个输入的值,比如这道题,输完三个字符时,再敲回车的话,就可以过滤掉回车的值,如果不写这个的话,后面数的字母就会被覆盖掉。

所以,继续读取值的时候,abc变量里面就储存的是\n F D 然后E就会排到下一轮。

上一篇下一篇

猜你喜欢

热点阅读