这里打印出来的数字不是应该按从小到大排列吗为什么会出错

img

img


if语句内嵌套elseif也没有错吧 没有报错也没有警告求解答 !!

if
else if
else
是满足前面的一个,后面的就不会执行了
如果if条件满足,else if 和 else里面的语句不会执行,所以这里只是交换了a大于b时a和b的值

if问题,正确代码如下:

//
// @author: 冲哥
// @date: 2021/5/7 13:37
// @description: 实现对这3个整数由小到大进行排序
#include 
 
int main() {
    int num1, num2, num3, temp;
    printf("请输入3个整数:\n");
    scanf_s("%d,%d,%d", &num1, &num2, &num3);
    if (num1 > num2) {
        temp = num1;
        num1 = num2;
        num2 = temp;
    }
    if (num1 > num3) {
        temp = num1;
        num1 = num3;
        num3 = temp;
    }
    if (num2 > num3) {
        temp = num2;
        num2 = num3;
        num3 = temp;
    }
    printf("排序后的顺序为:");
    printf("%d,%d,%d\n", num1, num2, num3);
    return 0;
}