问题 问答题

请编写两个函数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); }

答案

参考答案:

解析:(1) void sort(int &X,int &y) { int t; if (x>y) { t=X; x=y; y=t; } cout<<x<<’\t’<<y<<endl; } (2) 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括号中的语句为真时,执行花括号中的语句,“<<”是流输出操作,输出到屏幕上。

单项选择题 B型题
选择题