下列程序的运行结果是( )。 #include<iostream.h> int x=5; int fun(int A) { int C; C=X*a; return C; } void main()

admin2010-12-16  20

问题 下列程序的运行结果是(    )。    #include<iostream.h>    int x=5;    int fun(int A) {    int C;    C=X*a;    return C;    }    void main()    {    int x=3,a=4;    x=x+fun(a);    cout<<"x="<<x<<endl;    }   

选项 A、x=15     
B、x=17
C、x=23     
D、x=25

答案C

解析  由主函数main入手,首先x被赋值为3,a被赋值为4。然后调用fun函数,参数为4,所以在fun函数中的a=4.而主程序中的x作用域是由它定义开始到cout输出,在fun函数中无效。而在fun函数定义首的变量。作用域是整个程序,所以fun函数中的x值为5,这样c的值就为20。在主函数中的x+fun(a)中的x为靠近这条语句的x定义,即3,所以最后x的值为20+3=23。
转载请注明原文地址:https://kaotiyun.com/show/XEVp777K
0

最新回复(0)