问题 单项选择题

下列程序的运行结果是( )。
#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。

单项选择题 A1型题
问答题 简答题