首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> C語言 >> 關於C語言

C語言習題:三整數由小到大排序輸出

     編輯:關於C語言

演算法邏輯

三兩兩比較交換,確保 x ≤ y ≤ z:

  1. x > y → 交換 x,y (x 變較小)
  2. x > z → 交換 x,z (x 成最小)
  3. y > z → 交換 y,z (y ≤ z)

程式碼實作

#include <stdio.h>

int main(void) {
    int x, y, z, t;
    scanf("%d %d %d", &x, &y, &z);

    if (x > y) { t = x; x = y; y = t; }
    if (x > z) { t = x; x = z; z = t; }
    if (y > z) { t = y; y = z; z = t; }

    printf("Small to big: %d %d %d\n", x, y, z);
    return 0;
}

執行範例

Input:  3 1 2
Output: Small to big: 1 2 3

延伸思考

  • 改用陣列 + 排序函數 (qsort) 更通用
  • 輸入驗證:檢查 scanf 回傳值
  • 擴展至 N 個數:改用選擇排序/快速排序

簡單交換排序邏輯,適合初學者理解比較與交換基本操作。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved