问题 单项选择题

下列程序段的执行结果为( )。
#include<iostream>
using namespace std;
class example
int n;
public:
example(int i)n=i;
void add()s+=n;
static int s;
void pr()
cout<<s<<endl;


int example::s=0;
int fuc(char *x);
int main()
example x(2),y(3),z(4);
x. add();
y. add();
z.pr();
return 0;

A.2

B.3

C.5

D.6

答案

参考答案:C

解析: s为静态数据成员,其初始值为0。a,b,c为定义的3个对象,其各自的私有成员n为2,3,4。执行 x.add();语句后,s=2;再执行y.add();后,s=5;最后执行输出语句 z.pr(),即输出s的值5。

填空题
填空题