HDU-2000 ASCII碼排序(語法練習題)
阿新 • • 發佈:2018-12-06
ASCII碼排序
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)
Total Submission(s): 236447 Accepted Submission(s): 93141
Problem Description
輸入三個字元後,按各字元的ASCII碼從小到大的順序輸出這三個字元。
Input
輸入資料有多組,每組佔一行,有三個字元組成,之間無空格。
Output
對於每組輸入資料,輸出一行,字元中間用一個空格分開。
Sample Input
qwe
asd
zxc
Sample Output
e q w
a d s
c x z
Author
lcy
Source
C語言程式設計練習(一)
Recommend
JGShining
題目分析:
輸入字串,拆解為三個字元,按照ASCII碼排序,輸出排序後的字元,空格分開。
程式說明:
僅用三目運算子得出大小排序。(可優化,未給出優化結果)
程式實現:
#include<iostream>
#include<string>
using namespace std;
int main()
{
string str;
while (cin>>str)
{
int a=str[0],b=str[1],c=str[2];
cout<<(char)((a<b?a:b)<c?(a<b?a:b):c)<<' '<<(char)(a>((a<b?a:b)<c?(a<b?a:b):c)?(a<((a>b?a:b)>c?(a>b?a:b):c)?a:(b>c?b:c)):(b>c?c:b))<<' '<<(char)((a>b?a:b)> c?(a>b?a:b):c)<<endl;
}
}