比较前两个字符的大小,用三变量交换法将小的放前面,大的放后面。
再分别比较第三个字符与第一个字符、第二个字符的大小。
最后直接输出结果。
//ASCII排序
#include<iostream>
using namespace std;
int main ()
{
char str[4];
while(cin>>str)
{
char temp;
if(str[0]>str[1])//三变量交换法
{
temp=str[1];
str[1]=str[0];
str[0]=temp;
}
if(str[0]<str[2])
{
if(str[2]<str[1])
cout<<str[0]<<' '<<str[2]<<' '<<str[1]<<endl; //直接输出
else
cout<<str[0]<<' '<<str[1]<<' '<<str[2]<<endl;
}
else
cout<<str[2]<<' '<<str[0]<<' '<<str[1]<<endl;
}
return 0;
}
![ACM-2000-ASKII排序 - lilac14jiajia - scnu-陈嘉慧](http://img0.ph.126.net/lCTFPT3Mu343bL75xvPwVQ==/1850697971972581170.jpg)