HDU-2000 ASCII码排序(语法练习题)

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码排序,输出排序后的字符,空格分开。

程序说明:

  仅用三目运算符得出大小排序。(可优化,未给出优化结果)

扫描二维码关注公众号,回复: 4394917 查看本文章

程序实现:

#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;
    }
}

猜你喜欢

转载自blog.csdn.net/weixin_43939327/article/details/84845851
今日推荐