首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi2.cpp。请完成以下函数: int factorial(int n):求出n的阶乘,必须使用递归调用。 如果n小于1则返回0。 注意:不能修改函数的其他部分。 1 #include<
使用VC6打开考生文件夹下的源程序文件modi2.cpp。请完成以下函数: int factorial(int n):求出n的阶乘,必须使用递归调用。 如果n小于1则返回0。 注意:不能修改函数的其他部分。 1 #include<
admin
2019-01-19
110
问题
使用VC6打开考生文件夹下的源程序文件modi2.cpp。请完成以下函数:
int factorial(int n):求出n的阶乘,必须使用递归调用。
如果n小于1则返回0。
注意:不能修改函数的其他部分。
1 #include<iostream.h>
2 #include<ctype.h>
3 int factorial(int n)
4 {
5
6 }
7 void main()
8 {
9 cout<<factoria1(1)<<end1;
10 cout<<factoria1(5)<<end1;
11 cout<<factoria1(0)<<end1;
12 return;
13 }
选项
答案
1 if(n<1) 2 { 3 return 0; 4 } 5 else if(n==1) 6 { 7 return 1; 8 } 9 else 10 { 11 return n*factorial(n-1); 12 }
解析
factorial(int n)求出n的阶乘,要求使用递归调用。递归调用是指在调用一个函数的过程中直接或间接地调用该函数本身,n的阶乘计算公式为:n!=n×(n-1)×(n-2)……2×1,即n!=n×(n-1)!,因此factorial(intn)的递归过程为:return n*factorial(n-1)。
(1)先考虑最简单的情况,n为1(或小于1)时返回值应该为1,即factorial(1)=1,这是递归结束条件,如果n大于1则递归调用自己。
(2)n>1时,此时递归函数调用自己,即factorial(n)=n*factorial(n-1),此时的函数的返回值是n*factorial(n-1),如此来实现递归调用。
转载请注明原文地址:https://kaotiyun.com/show/lgAp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
完全不考虑程序的内部结构和内部特征,而只是根据程序功能导出测试用例的测试方法是
以下不能正确创建输出文件对象并使其与磁盘文件相关联的语句是()。
下列叙述中正确的是()。
下面程序的输出是main(){intx=100,a=10,b=20,ok1=5,ok2=0;if(a<B)if(b!=15)if(!okl)x=1;else
若已定义:inta[]={0,1,2,3,4,5,6,7,8,9},*p=a,i;其中0≤i≤9,则对a数组元素不正确的引用是
以下叙述中不正确的是
下面关于数组的描述错误的是
有以下程序段:intk=0;while(k=1)k++;while循环执行的次数是()。
关于关键字class和typename,下列说法中正确的是
下面的符号中不属于C++关键字的是()
随机试题
A.职业健康促进的策略B.职业健康促进的原则C.职业健康促进的策略D.职业健康促进的领域E.职业健康促进的特点投资少、见效大、可持续发展是
A.致力于人的行为改变的科学B.为人的行为改变提供环境支持C.通常采用劝导、咨询、同伴教育等方法促进行为改变D.采用培训、发放宣传品、电视播敖健康知识E.受传者接受信息后产生的行为变化属于群体行为干预的方法是
嗜铬细胞瘤者可见原发性甲状旁腺功能亢进症患者可见
男性,65岁,突发意识障碍,伴有右侧偏瘫。颅脑CT:左基底节区高密度病灶。入院后突然出现左瞳大于右瞳,昏迷加深。此病人最可能出现了
下列有关有限合伙人的表述中,不符合《合伙企业法》规定的有:()
建设项目业主可以自行编制或委托()编制建设项目功能描述以及有关的要求和条件说明,投标人据此进行投标,编制设计建议书和设计文件,并根据设计进行工程报价。
第72届联合国大会于2017年9月12日13下午在纽约联合国总部开幕,本届联大的主题是()。
()适用于在各级各类学校和其他教育机构中专门从事教育教学工作的教师。
[*]
TheannualconsumptionofCoco-Colapercapitaintheregionalmarketsmentionedinthepassageranksinthefollowingorder.
最新回复
(
0
)