首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用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
93
问题
使用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全国计算机二级
相关试题推荐
下列程序的执行结果为______。#include<iostream.h>voidmain(){cout.fill(‘*’);tout.width(10);cout<<“hello”<<endl;)
设有定义:classperson{intnum;charname[10];public:voidinit(intn,char*m)};personstd[30]则以下叙述不正确的是(
下面程序的运行结果为()。#include<iostream.h>voidmain(){chara=‘3’;switch(A){case’3’:cout<<“3”;case’2’:cou
下面关于C++语言的描述错误的是
向一个栈顶指针为HS的链式栈中插入一个s所指的结点时,则执行
若要在程序文件中进行标准输入输出操作,则必须在开始的#include命令中使用头文件______。
在深度为6的满二叉树中,叶子结点的个数为
线性表L=(a1,a2,a3,…ai,…an),下列说法正确的是
数据结构分为线性结构和非线性结构,带链的队列属于______。
随机试题
简述形象思维的内涵及特征。
生存分析中的生存时间
对于一级评价项目,小时浓度应至少获取当地()小时浓度值。
某企业消防部门通过对下辖某综合楼防火分区的面积、防火分隔完整性进行检查来核实该楼防火分区的划分的合理性,下列不属于确定防火分区面积大小因素的是()
甲为加人A合伙企业需要一笔资金,于2003年3月5日向乙借款5万元,双方以书面合同约定:借款期限为2年;借款年利率为6%,2年应付利息由乙预先在借款本金中一次扣除;借款期满时甲一次偿还全部借款。丙为甲的保证人,与乙签订保证合同,约定丙承担一般保证责任,保证
以下关于全身反应教学法理论基础的说法,不恰当的是()。
我国推进新型城镇化必须坚持以人的城镇化为核心,其主体形态是乡镇。()
若用8位机器码表示十进制整数一127,则其原码表示为(1),补码表示为(2)。(2)
在VFP6.0数据表中,用于存放图像、声音等多媒体对象的数据类型是______。
Inasweltering(闷热的)summerinNewYorkCitybackin1999,YolandaBaldwinwaseightmonthspregnantwithherfirstchild.She
最新回复
(
0
)