輸入4個整數,要求按由小到大順序輸出,
可用if陳述句依次比較的方法排出其大小順序,
通常容易犯錯的地方在于
1.不明白abcd之間的大小邏輯關系(a需要和bcd進行比較,而b只需與cd比較,c僅與d比較,例如——a處的數比b處的大,那么ab的數進行交換,以此類推),
2.輸入過多,產生混亂,少敲或漏敲
下面是源代碼和結果展示
#include <stdio.h>
int main()
{
int a, b, c, d;
int max_num;
scanf_s("%d %d %d %d", &a, &b, &c, &d);
int tmp;
//找到最小的數
if (a > b) {
tmp = a; a = b; b = tmp; // a>b兩個資料交換,則給a存盤小的b
}
if (a > c) {
tmp = a; a = c; c = tmp;
}
if (a > d) {
tmp = a; a = d; d = tmp;
} //找到第二小的數,不需要和最小的數比較
if (b > c) {
tmp = b; b = c; c = tmp;
}
if (b > d) {
tmp = b; b = d; d = tmp;
} //找到第三小的資料,不需要和第一和第二小比較
if (c > d) {
tmp = c; c = d; d = tmp;
}
printf("%d %d %d %d\n", a, b, c, d);
return 0;
}
輸入3 4 2 6,排列后結果為2 3 4 6
如果有不懂的地方可以在評論里面提出來,我會盡自己的能力去解答(^^)
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/233154.html
標籤:其他
上一篇:Python 爬蟲逆向破解案例實戰 (一):微信公眾平臺js逆向改寫
下一篇:C++演算法競賽中常用的STL
