使用VC6打开考生文件夹下的源程序文件modi 1.cpp,该程序运行时有错,请改正其中的错误,使程序正常运行,并使程序输出的结果为: Max is 7 提示:max()函数实现找出两个数中的最大值,并作为函数值返回。 注意:错误的语句在/

admin2020-10-21  31

问题 使用VC6打开考生文件夹下的源程序文件modi 1.cpp,该程序运行时有错,请改正其中的错误,使程序正常运行,并使程序输出的结果为:
    Max is 7
    提示:max()函数实现找出两个数中的最大值,并作为函数值返回。
注意:错误的语句在//********error********的下面,修改该语句即可。
    1    #include
    2  using namespace std ;
    3    //********error********
    4    int max(int a,int b)
    5  {
    6    if(a    7    {
    8    int t=a ;
    9    a=b ;
    1 0    b=t ;
    11    }
    12    return b;
    13    }
    14  int mein()
    15    {
    16    int m=一3 ;
    17    int n=7;
    18    //********error********
    19    max(-3,n);
    20    cout<<"Max is”<    21    return 0 ;
    22    }

选项

答案(1)int max(int &a,int &b) (2)matx(m,n);

解析 函数参数传递形式有多种:将变量名作为实参和形参、传递变量的指针和传送引用方式,将变量名作为实参和形参方式,传递是单向的,在函数执行过程中形参的值发生变化不会传回实参,而指针和引用方式在函数执行过程中形参会影响实参。函数max返回最大值,而在主函数内并没有使用其返回值,而是输出m值,可知在max函数类已将最大值存放在m里,因此max函数采用的是传递引用方式。
    [解题思路]
    (1)由审题分析可知max函数采用的是传送引用方式传递参数,因此第1个标识下应该为int max(int&a,int&b)。
    (2)调用max时,传递引用时直接使用变量名即可,第2个标识下应改为“。max(m,n)”。
转载请注明原文地址:https://jikaoti.com/ti/nAl0FFFM
0

最新回复(0)