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

admin2017-12-14  30

问题 有如下程序:
    #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<    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/Ndt0FFFM
0

最新回复(0)