一:题目描述
输入三个字符后,按各字符的ASCII码从小到大的顺序输出这三个字符。
二:输入
输入数据有多组,每组占一行,由三个字符组成,之间无空格。
三:输出
对于每组输入数据,输出一行,字符中间用一个空格分开。
四:代码
# define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>void Swap(char* ch, char* ch1)
{
char swap = *ch;
*ch = *ch1;
*ch1 = swap;
}
int main()
{
char ch;
char ch1;
char ch2;
while(scanf("%c%c%c", &ch, &ch1, &ch2)!=EOF)//在while循环中以EOF作为文件结束标志,
//这种以EOF作为文件结束标志的文件,必须是文本文件。在文本文件中,数据都是以字符的ASCII代码值的形式存放。
//我们知道,ASCII代码值的范围是0~127,不可能出现 - 1,因此可以用EOF作为文件结束标志。
{
getchar();//用来吸收换行字符
if (ch > ch1)
{
Swap(&ch, &ch1);
}
if (ch > ch2)
{
Swap(&ch, &ch2);
}
if (ch1 > ch2)
{
Swap(&ch1, &ch2);
}
printf("%c %c %c\n", ch, ch1, ch2);
}
return 0;
}