问题及代码:
/*
*Copyright (C) 2014,烟台大学计算机学院
*All rights reserved.
*文件名称 :mian.cpp
*作 者 :李楠
*完成日期 :2014年12月17日
*版 本 号 :v1.0
*
*问题描述 :设计一个程序,输入3个整数,将其从大到小的顺序输出,要求:
1.排序功能通过函数实现,3个整数用3个变量,不必定义数组。
2.写出两个版本的函数,一个采用传地址的方法,另一个采用引用类型作参数
*输入描述 :三个整数
*程序输出 :三个整数
*/
#include <iostream>
using namespace std;
void sort(int &x, int &y, int&z);
void lsort(int *x, int *y, int*z);
int main()
{
int a,b,c;
cin>>a>>b>>c;
sort(a,b,c);
cout<<a<<" "<<b<<" "<<c<<endl;
lsort(&a,&b,&c);
cout<<a<<" "<<b<<" "<<c<<endl;
return 0;
}
void sort(int &x, int &y, int&z)
{
int t;
if (x<y)
{
t = x;
x = y;
y = t;
}
if (y<z)
{
t = y;
y = z;
z = t;
}
if (x<y)
{
t = x;
x = y;
y = t;
}
}
void lsort(int *x, int *y, int*z)
{
int t;
if (*x<*y)
{
t = *x;
*x = *y;
*y = t;
}
if (*y<*z)
{
t = *y;
*y = *z;
*z = t;
}
if (*x<*y)
{
t = *x;
*x = *y;
*y = t;
}
}
运行结果:
知识点总结:
进一步学习了引用,发现引用比指针容易理解,而且不容易出错~
指针……唉唉唉……