有如下程序: #inc1ude<iostream> using namespace std; void f1(int&x){x++} void f2(int x){++x;} int main(){ int

admin2020-04-07  19

问题 有如下程序:
    #inc1ude<iostream>
    using namespace std;
    void f1(int&x){x++}
    void f2(int x){++x;}
    int main(){
    int x=10,y=12;
    f1(x);
    f2(y);
    cout<<x+y<<end1;
    return 0;
    }
    运行这个程序的输出结果是(     )。

选项 A、22
B、23
C、24
D、25

答案B

解析 在函数f1(int&x){x++;}中,是对变量x的引用,所以当在main函数中执行“f1(x);”语句后,变量x的值等于11,而在函数void f2(int x){++x;}中,对变量x的传递调用,在main函数中执行“f2(y);”语句后,变量y的值仍然等于12,所以输出x+y的值等于23。
转载请注明原文地址:https://jikaoti.com/ti/mDA0FFFM
0

最新回复(0)