A-A+

使用VC++6.0打开考生文件夹下的源程序文件2.cpp。阅读下列函数说明和代码。 函数so

2022-08-06 02:35:48 问答库 阅读 174 次

问题详情

使用VC++6.0打开考生文件夹下的源程序文件2.cpp。阅读下列函数说明和代码。
函数sort(int&m,int&n,int&1)实现将3个整数m,n,1由大到小输出。m最大,1最小。程序实现时,可以把最大的数放到m上,先将m与n进行比较,如果m<n,则将m与n的值进行交换,然后再用m与1进行比较,如果m<1,则将m与1的值进行交换,这样能使m最大,然后再将n与1进行比较,若n<1,则将n与1的值互换,互换后1最小。
将函数sort(int&m,int&n,int&1)补充完整,实现3个数的排序。
注意:请勿改动主函数。
试题程序:
include<iostream.h>
voidsort(int8Lm,int&n,int&1)
{
}
intmain
{
intx=9:
inty=13;
intz=-3:
sort(X,y,z);
cout<<x<<,<<y<<,<<z<<endl;
return0;
}请帮忙给出正确答案和分析,谢谢!

参考答案

正确答案:

intt;
if(m<n)
{t=m;m=n;n=t;}//*交换x,y的值*/
if(m<1)
{t=m;m=1;1=t;}//*交换x,z的值*/
if(n<1)
{t=n;n=1;1=t;)/*交换z,y的值*/
【解析】由审题分析可知,3次比较便可将m、n、1排序。先将m与n进行比较,如果m<n,则将m与n的值进行交换,然后再用m与1进行比较,如果m<1,则将m与1的值进行交换,这样能使m最大。然后再将n与1进行比较,若n<1,则将n与1的值互换,互换后则1最小,这样就得到m最大,1最小的排序结果。在sort函数内用3个if语句比较即可,条件成立则进行交换。

考点:函数,源程序