输入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
如果有不懂的地方可以在评论里面提出来,我会尽自己的能力去解答(^^)