有如下程序; #include using namespace std; void hey(____________,int&b){ int c;c=a;a=b;b=c; } int main(){

admin2021-06-10  18

问题 有如下程序;
    #include
    using namespace std;
    void hey(____________,int&b){
    int c;c=a;a=b;b=c;
    }
    int main(){
    int m=14,n=20;
    hey(m,n);
    cout<    return 0:
    }
    运行后的输出结果是“1414”,则横线处的语句应为(    )。

选项 A、int*a
B、int&a
C、int a
D、a

答案C

解析 题意main()函数中,首先定义整型变量m为14,n为20,然后调用hey()函数,传入m、n,然后输出时,m的值14不变,n的值为14;再看hey()函数中,通过临时变量c,将传入的两个参数a、b的值进行交换;再者,参数b是引用变量,所以b的值修改,导致实参n的值也被修改,由main()函数中m的值不变,n的值变为14,可知hey()函数中形参a(对应实参m)应该是一个普通变量,而不是引用类型或指针类型,所以选项A、B错误,c正确;另外对于参数,必须给出参数的类型,所以选项D错误.故本题答案为C选项。
转载请注明原文地址:https://kaotiyun.com/show/RSfp777K
0

最新回复(0)