问题
问答题
请编写两个函数void sort(int &x,&y)和void sort(int x,int y,int z),实现对2个和3个元素的排序并在屏幕上输出排序结果 (数字之间使用跳格)。
注意:部分源程序已存放在文件test2_2.cpp中。
请勿修改主函数main和其他函数中的任何内容,仅在函数的花括号中填写若干语句。
输出结果如下:
3 4
2 3 4
文件test2_2.cpp的内容如下:
#include<iostream.h>
void sort(int &x,int &y)
/**1**/
void sort(int x,int y,int z)
/**2**/
void main()
int a=4,b=3,c=2;
sort(a,b);
sort(a,b,C);
答案
参考答案:
(A)
void sort(int &X,int &y)
{
int t;
if (x>y)
{
t=X;
x=y;
y=t;
}
cout<<x<<’\t’<<y<<endl;
}
(B)
void sort(int x,int y,iht z)
{
int t;
if(x>y){ t=x; x=y; y=t;)
if(x>z){ t=x; x=Z; z=t;)
if(y>z){ t=y; y=z; z=t;)
cout<<x<<’\t’<<y<<’\t’<<z<<endl;
}
解析:
本题考查考生对函数重载与引用调用的掌握。这里的重载是使用不同的参数个数,引用调用的形参使用&符号,实参直接调用;if括号中的语句为真时,执行花括号中的语句,“<<”是流输出操作,输出到屏幕上。