有如下程序: #include using namespace std; class Sample { friend long fun(Sample s); public: Sample(long a) { x = a; } private: long

admin2015-07-22  49

问题 有如下程序:
#include
using namespace std;
class Sample {
friend long fun(Sample s);
public:
Sample(long a) { x = a; }
private:
long x;
};
long fun(Sample s) {
if (s.x < 2) return 1;
return s.x * fun(Sample(s.x-1));
}
int main()
{
int sum = 0;
for (int i=0; i<6; i++)
{ sum += fun(Sample(i)); }
cout << sum;
return 0;
}
执行这个程序的输出结果是(    )。

选项 A、120
B、16
C、154
D、34

答案C

解析 本题考查默认构造函数,当i=0、1时,fun(Sample(i))为1;当i=2时,fun(Sample(i))为2;当i=3时,fun(Sample(i))为6;当i=4时,fun(Sample(i))为24;当i=5时,fun(Sample(i))为120。所以总和为154。
转载请注明原文地址:https://jikaoti.com/ti/9EE0FFFM
0

最新回复(0)