C語言三個數從小到大排序/輸出

2020-07-16 10:04:28
任意輸入 3 個整數,程式設計實現對這 3 個整數由小到大進行排序。

實現過程:

(1)定義資料型別,本範例中 a、b、c、t 均為基本整型。

(2) 使用輸入函數獲得任意 3 個值賦給 a、b、c。

(3) 使用 if 語句進行條件判斷,如果 a 大於 b,則借助於中間變數 t 互換 a 與 b 值, 依此類推比較 a 與 c、b 與 c,最終結果即為 a、b、c 的升序排列。

(4) 使用輸出函數將 a、b、c 的值依次輸出。

(5) 程式的程式碼如下:
#include <stdio.h>
int main()
{
    int a,b,c,t;    /*定義4個基本整型變數a、b、c、t*/
    printf("Please input a,b,c:n");    /*雙引號內的普通字元原樣輸出並換行*/
    scanf("%d,%d,%d",&a,&b,&c);    /*輸入任意3個數*/
    if(a>b)    /*如果a大於b,借助中間變數t實現a與b值的互換*/
    {
        t = a;
        a = b;
        b = t;
    }
    if(a>c)    /*如果a大於c,借助中間變景t實現a與c值的互換*/
    {
        t = a;
        a = c;
        c = t;
    }
    if(b>c)    /*如果b大於c,借助中間變數t實現b與c值的互換*/
    {
        t = b;
        b = c;
        c = t;
    }
    printf("The order of the number is:n");
    printf("%d,%d,%d",a,b,c);    /*輸出函數順序輸出a、b、c的值*/
    return 0;
}

執行結果:

Please input a,b,c:
5,3,9
The order of the number is:
3,5,9

腳下留神:

本範例使用 scanf("%d%d%d",&a,&b,&c); 從鍵盤中獲得任意 3 個數。在輸入資料時,在兩個資料之間以一個或多個空格間隔,也可以用 Enter 健、Tab 鍵,不能用逗號作為兩個資料間的分隔符。 如果用格式輸入函數 scanf("%d,%d,%d",&a,&b,&c) 輸入資料,兩個資料之間要用“,”做間隔。