1. 程式人生 > >ASCII碼排序 HDU - 2000(語言訓練題)

ASCII碼排序 HDU - 2000(語言訓練題)

輸入三個字元後,按各字元的ASCII碼從小到大的順序輸出這三個字元。

    Input
    輸入資料有多組,每組佔一行,有三個字元組成,之間無空格。

    Output
    對於每組輸入資料,輸出一行,字元中間用一個空格分開。

    Sample Input
    qwe
    asd
    zxc

    Sample Output
    e q w
    a d s
    c x z

題目分析:
題目要求可以輸入一行然後輸出一行,然後我理解錯題意,以為是要以多行三列的形式輸入,然後再輸出結果。題目關鍵是執行一個比較後可以繼續進行下一次比較而不會從操作介面退出,所以要想一個方法,使程式能一直的輸入。
程式說明:


把cin>>a>>b>>c當成while的引數,因為cin遇到輸入終止時會返回一個0,而while遇到0會退出迴圈。
程式實現:

#include "pch.h"
#include <iostream>
using namespace std;
int main()
{
 char a, b, c;
 while (cin >> a >> b >> c)
 {
  char temp;
  if (a > b)
  {
   temp = a;
   a = b;
   b = temp;
  }
  if
(b > c) { temp = b; b = c; c = temp; } if(a > b) { temp = a; a = b; b = temp; } cout<<a<<" "<<b<<" "<<c<<endl; } }