c语言 求三个数的大小并排列出来

来源:百度知道 编辑:UC知道 时间:2024/05/16 08:40:15
这是小弟编的程序新手上路希望大家帮忙啊;这个程序可以运行但是不能出结果,输出的顺序跟输入的顺序没有变化
#include<stdio.h>
void main()
{
int max(int x,int y);
int a,b,c;
scanf("%d %d %d",&a,&b,&c);
max(a,b)
max(b,c)
max(a,c);
printf("%d %d %d",a,b,c);

}
int max(int x,int y)
{
int z;
if(x>y)x=x;
else z=x;
x=y;
y=z;
return(z);
}

#include<stdio.h>
void main()
{
int max(int &x,int &y);
int a,b,c;
scanf("%d %d %d",&a,&b,&c);
max(a,b);//
max(b,c);//别丢了;
max(a,c);
printf("%d %d %d",a,b,c);

}
int max(int &x,int &y)//数据要返回,要么引用,要么指针
{
int z;
if(x<=y)//if不一定非要和else搭配着用。而且,复合语句要加{}
{
z=x;
x=y;
y=z;
}
return(z);
}

#include<stdio.h>
void swap(int* x,int* y)
{
int temp;
if(*x<*y)
{
temp=*x;
*x=*y;
*y=temp;
}
}
void main()
{
int a,b,c,max;
scanf("%d %d %d",&a,&b,&c);
swap(&a,&b);
swap(&a,&c);
swap(&b,&c);
printf("%d %d %d\nmax=%d\n",a,b,c,a);
}