/*
*Copyright (c) 2014 ,烟台大学计算机学院
*All right reserved.
*文件名称:求最大公约数.cpp
*作 者:王伟诚
*完成日期:2014年12月17日
*版 本 号:1.0
*
*问题描述:输入3个数 从小到大排序
*问题输出:排序好的3个数
*/
地址传值法
#include <iostream>
using namespace std;
int bj(int *a,int *b,int *c);
int main()
{
int a,b,c;
cin>>a>>b>>c;
bj(&a,&b,&c);
cout<<a<<b<<c;
return 0;
}
int bj(int*a,int *b,int *c)
{
if(*a>*b)
{
int t;
t=*a;
*a=*b;
*b=t;
if(*b>*c)
{
int i;
i=*b;
*b=*c;
*c=i;
if(*a>*b)
{
int j;
j=*a;
*a=*b;
*b=j;
}
}
}
else if(*b>*c)
{
int i;
i=*b;
*b=*c;
*c=i;
if(*a>*b)
{
int j;
j=*a;
*a=*b;
*b=j;
}
}
}
引用法
#include <iostream>
using namespace std;
int bj(int &x,int &y,int &z);
int main()
{
int a,b,c;
cin>>a>>b>>c;
bj(a,b,c);
cout<<a<<b<<c;
return 0;
}
int bj(int &x,int &y,int &z)
{
if(x>y)
{
int t;
t=x;
x=y;
y=t;
if(y>z)
{
int i;
i=y;
y=z;
z=i;
if(x>y)
{
int j;
j=x;
x=y;
y=j;
}
}
}
else if(y>z)
{
int i;
i=y;
y=z;
z=i;
if(x>y)
{
int j;
j=x;
x=y;
y=j;
}
}
}