美文网首页
HDU - 2000 ASCII码排序

HDU - 2000 ASCII码排序

作者: 一座城_WanG | 来源:发表于2018-12-07 20:29 被阅读0次

    输入三个字符后,按各字符的ASCII码从小到大的顺序输出这三个字符。
    Input
    输入数据有多组,每组占一行,有三个字符组成,之间无空格。
    Output
    对于每组输入数据,输出一行,字符中间用一个空格分开。
    Sample Input
    qwe
    asd
    zxc
    Sample Output
    e q w
    a d s
    c x z

    问题链接(https://vjudge.net/problem/hdu-2000)

    问题简述:输入三个字符,根据ASCALL码值的大小来对各字符进行从小到大的排序

    问题分析:由于涉及到排序问题,有多种思路可走:1,可以通过选择排序;2,可以通过冒泡排序,3,可以通过IF语句的应用来进行排序。将最大的字符及最小的字符找出来

    程序分析:定义一个函数paixu将最大的字符及最小的字符找出来;并在主函数中进行函数调用
    AC通过的代码如下

    #include<iostream>
    using namespace std;
    void paixu(char*p)
    {
        if(p[0]<p[1])
            {
                int t=p[1];
                p[1]=p[0];
                p[0] = t;
            }//p[0]大
        if (p[0] < p[2])
        {
            int t = p[2];
            p[2] = p[0];
            p[0] = t;
        }//p[0]最大
        if (p[2] > p[0])
        {
            int t = p[0];
            p[0] = p[2];
            p[2] = t;
        }//现在p[2]小
        if (p[2] > p[1])
        {
            int t = p[1];
            p[1] = p[2];
            p[2] = t;
        }//现在p[2]最小
        cout << p[2];
        for (int i = 1; i >=0; i--)
        {
            cout << " " << p[i] ;
        }
        cout << endl;
    }
    int main()
    {
        char p[3] = { 0 };
        while (cin >> p[0]>>p[1]>>p[2])
        {
            paixu(p);
        }
    }
    

    相关文章

      网友评论

          本文标题:HDU - 2000 ASCII码排序

          本文链接:https://www.haomeiwen.com/subject/bapxhqtx.html