主要问题是没有加括号问题导致的,如果不加括号,默认情况下,if下面的第一条程序会在if语句中,后面的会在if外面执行,所以,就会出现与你预期结果不符。
当if中有多条语句的时候,花括号是不能够忽略的。
#include <stdio.h>
#include <stdlib.h>
int main() {
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=z;
z=x;
x=t;
}
if(y>z) {
t=y;
y=z;
z=t;
}
printf("%d %d %d",x,y,z);
return 0;
}
你把if后面的语句用大括号括起来看看
if后面如果不加大括号的话,默认第一句是if的执行语句,所以你这题应该在if后加大括号