这个为什么输出的是乱码?
#include<stdio.h>int main(void)
{
int x,y,z,t;
printf("x,y,z:");
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,z=y,y=t;
}
printf("small to big:%d %d %d\n",x,y,z);
return 0;
}
输出
small to big:-625183232 32766 32766
你的输入应该有问题 是你输入数字的问题吧,你输入的数可能太大了或者太小了,不然应该没问题。 if(x>y)
{
t=x,x=y,y=t;
}
语句之间用;分号隔开
t=x,x=y,y=t;//楼主应注意=是赋值运算符,运算符两边的变量构成一条语句。既然是一条语句就应该用分号; 而不是用逗号 , scanf(%d %d %d )这样格式的,那么你输入应该也是1 2 3这样 不能一起输入 18574565396 发表于 2022-4-10 20:55
scanf(%d %d %d )这样格式的,那么你输入应该也是1 2 3这样 不能一起输入
是的
页:
[1]