首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #include using namespace std; class Sample { friend long fun(Sample s); public: Sample(lo
有如下程序: #include using namespace std; class Sample { friend long fun(Sample s); public: Sample(lo
admin
2020-11-11
17
问题
有如下程序:
#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
解析
此题考查的是友元函数和递归函数。因为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://kaotiyun.com/show/tayp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
在E—R图中,用来表示实体联系的图形是()。
请使用VC6或使用【答题】菜单打开考生目录proj3下的工程文件proj3,此工程中包含一个源程序文件proj3.cpp,补充编劓C++程序proj3.cpp,其功能是读取文本文件in.dat中的全部内容,将文本存放到doc类的对象myDoc中。然后将my
使用VC6打开考生文件夹proj3下的工程proj3,其中声明了MyString类,它是一个用于表示字符串的类。成员函数reverse将字符串反转,例如“abcde”反转后就成了“edcba”。请补充完整函数reverse。在main函数中给出了一个测试数
下列关于函数的叙述中,正确的是()。
当使用fstream流类定义一个流对象并打开一个磁盘文件时,文件的隐含打开方式为()。
下面程序的运行结果为()。#include<iostream.h>classA{public:A(){cout<<"1";}~A(){cout<<"2";}};classB:publicA{public:B(){cout
对类成员访问权限的控制,是通过设置成员的访问控制属性实现的,下列不是访问控制属性的是()。
使用VC6打开考生文件件下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补允完整。(1)重载运算符int,请在注释∥********1********后添加适当的语句。(2)重载运算符“
关于面向对象的程序设计方法,下列说法正确的是
下列关于模板的叙述中,错误的是( )。
随机试题
在疾病进行期突然出现核右移,提示【】
下列何方治疗支饮
男,出生3天,肛门闭锁,腹胀、呕吐,尿液澄清,应做的必需检查为
下列哪些组织激素分泌细胞和所分泌的激素组合是正确的
男性,50岁。发热、贫血、消瘦3个月阵发性右下腹痛转为持续性,腹泻粘液血便,右下腹触及包块,诊断上可能性最大的是
按照发放贷款时有无担保为标准,贷款分为()。
私人国际资本流动主要分为( )。
2001年7月,民政部在山东青岛召开全国社区建设工作会议,明确了全面推进社区建设的工作任务是()。
下列_______说法是错误的?
Isxpositive?(1)x2-1=0(2)x3+1=0
最新回复
(
0
)