首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #include using namespace std; class Sample { friend long fun(Sample s); public: Sample(long a){x=
有如下程序: #include using namespace std; class Sample { friend long fun(Sample s); public: Sample(long a){x=
admin
2020-04-07
14
问题
有如下程序:
#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
解析
此题考查的是友元函数和递归函数。因为fun函数是Sample类的友元函数,所以fun函数可以直接访问Sample类对象的私有成员x。主函数调用fun函数,构造参数为0~5。当n小于2时,fun函数返回1,其余返回值为n*fun(n-1)。n取0~5的值时fun(n)依次为1,1,2,6,24,120,累加结果为154。
转载请注明原文地址:https://jikaoti.com/ti/0tA0FFFM
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下列关于栈的描述中错误的是()。
下列程序中画线处应填入的语句是classBase{public:voidfun(){cout<<"Baseoffun"<<end1;}};
有如下程序:#include<iostream>usingnamespacestd;classBase1{public:Base1(intD){cout<<d;}~Base1(){}};
对于模板定义关键字class和typename说法不正确的是
派生类中的成员不能直接访问基类中的______成员。
下列叙述中正确的是()。
类A是类B的友元,类B是类C的友元,则下列说法正确的是
在函数定义前加上关键字“inline”,表示该函数被定义为()。
下列符号中能够作为C++标识符的是()。
随机试题
梅奥认为,现代社会中,________是“压迫的强有力的代理人”。
组织决策的阶段有()
遇到这种情况的路口怎样通过?
急性肾小球肾炎最主要的临床表现是
局部麻醉不包括
德勒公司是一家研发和制造大型游乐设施的企业。从风险管理基本流程来看,下列各项中,属于该公司为分析其所面临的运营风险需要收集的重要初始信息有()。
我党第一次独立自主解决党内重大问题的会议是()。
中小学常用的教学原则有哪些?
下列属于公安机关治安行政管理权的是()。
(72)istheprocessofobtainingthestakeholdrs’formalacceptanceofthecompletedprojectscope.Verifyingthescopeincludes
最新回复
(
0
)