首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi2.cpp。请完成以下两个函数: (1)funl(int n);求出n的阶乘,必须使用递归调用。 (2)fun2(int n);求出n的阶乘,不能使用递归调用。 如果11小于1则返回0。
使用VC6打开考生文件夹下的源程序文件modi2.cpp。请完成以下两个函数: (1)funl(int n);求出n的阶乘,必须使用递归调用。 (2)fun2(int n);求出n的阶乘,不能使用递归调用。 如果11小于1则返回0。
admin
2015-05-30
32
问题
使用VC6打开考生文件夹下的源程序文件modi2.cpp。请完成以下两个函数:
(1)funl(int n);求出n的阶乘,必须使用递归调用。
(2)fun2(int n);求出n的阶乘,不能使用递归调用。
如果11小于1则返回0。
注意:请勿改动主函数main与其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
1 #include
2 //必须使用递归
3 int funl(int n)
4 {
5
6 };
7 //不能使用递归
8 int fun2(int n)
9 {
10
11 }
12 void main()
13 {
14 int i ;
15 cout<<”请输入一个整数:”<
16 cin>>i ;
17 cout<<“输入数字的阶乘是:”<< funl(i)<
18 cout<<"输入数字的阶乘是:"<< fun2(i)<
19 return;
20 }
选项
答案
1 int funl(int n)//使用递归计算阶乘 2 { 3 if(n<=0) //n小于等于0,直接返回0 4 retUrn 0 ; 5 if(n==1) //n等于1直接返回1 6 return 1; 7 return n*fLlnl(n一1);//n大于等于1,通过递归计算n 1 8 }; 9 //不使用递归计算阶乘 10 int fun2(int n) 11 { 12 if(n<=0) //n小于0,直接返回0 13 return 0; 14 int res=1 ; //初始化阶乘存放变量res 15 for(int i=1 ; i<=n;i++) //通过循环计算n ! 16 { 17 res*=i ; 18 } 19 return res; 20 }
解析
(1)该程序功能是对阶乘的实现。其中,阶乘的计算公式定义为:
公式分为参数n是1和大于1的两种情况,例如:1的阶乘1 !=1;5的阶乘5 !=5×4×3×2×1。
[解题思路]
(1)进入fun1函数,根据前面的定义,它对阶乘算法的实现可以分为三种情况,一是当n小于或等于O时,返回0即可;二是当n大于1时应该用什么程序来实现阶乘的计算;三是当n=1时,函数直接返回1即可。
(2)计算n!的值,先定义一个放阶乘值的变量res,初值为1,通过循环的方法,用累乘器“res*=i;”实现n!。
转载请注明原文地址:https://jikaoti.com/ti/KnE0FFFM
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
语句ofstreamf("SALARY.DAT",ios::app|ios::binary);的功能是建立流对象f,试图打开文件SALARY.DAT并与之连接,并且()。
在下面的运算符重载函数的原型中,错误的是()。
下面叙述错误的是()。
下列类的定义中,有()处语法错误。classBase{publiC:Base(){}Base(inti){data=i;}ptivate:
用链表表示线性表的优点是()。
下列程序的输出结果是______。#include<iostream.h>voidmain(){inta[]={1,2,3,4,5,6},*p,**q;p=a;q=&p;
一个教师能开多门课程,一门课程有许多教师会开,实体课程与实体教师间是______。
已知:doubleA(doubleA){return++a;}和intA(inta){return++a;)是一个函数模板的两个实例,则该函数模板定义为【】。
下面有关重载函数的描述中正确的是
随机试题
患者,男,16岁。左右上1冠折,已行根管治疗。选用这种修复方法,主要考虑
A、羟丙基甲基纤维素B、单硬脂酸甘油酯C、大豆磷脂D、无毒聚氯乙烯E、乙基纤维素可用于制备溶蚀性骨架片的是()。
管理跨度是指()。
如图7所示的电路中,电源电压保持不变。当开关S断开,甲、乙两表为电流表时,两表的示数之比I甲:I乙为3:5;当开关S闭合,甲、乙两表为电压表时,两表示数之比U甲:U乙为()。
A、 B、 C、 D、 B
工人甲父母早亡,未婚无子女,其兄先亡有子乙。甲突发疾病经抢救无效死亡,未留遗嘱。对甲的遗产处置合法的是()。
(国家2011—74)某市对52种建筑防水卷材产品进行质量抽检,其中有8种产品的低温柔度不合格,10种产品的可溶物含量不达标,9种产品的接缝剪切性能不合格,同时两项不合格的有7种,有1种产品这三项都不合格。则三项全部合格的建筑防水卷材产品有多少种?(
下面程序运行时,单击窗体后,窗体上显示的结果是()。PrivateSubForm_Click()DimiAsInteger,sumAsLongDimtAsLongt=1:sum=0Fo
ThementalhealthmovementintheUnitedStatesbeganwithaperiodofconsiderableenlightenment.DorotheaDixwasshockedto
______,sheledalifeofcompleteseclusion.
最新回复
(
0
)