东莞市做网站公司,网页设计师好吗,个人网站icp备案,jquery购物网站day15--计算阶乘小程序--2.19
习题概述
题目描述
求 n!#xff0c;也就是 123⋯n。
挑战#xff1a;尝试不使用循环语句#xff08;for、while#xff09;完成这个任务。
输入格式
第一行输入一个正整数 n。
输出格式
输出一个正整数#xff0c;表示 n! 代码部分 …day15--计算阶乘小程序--2.19
习题概述
题目描述
求 n!也就是 1×2×3⋯×n。
挑战尝试不使用循环语句for、while完成这个任务。
输入格式
第一行输入一个正整数 n。
输出格式
输出一个正整数表示 n! 代码部分
#includebits/stdc.h
using namespace std;int factorial(int n) //递归函数计算阶乘
{//0和 1的阶乘都为1if (n 0 || n 1) {return 1;} else {return n * factorial(n - 1);}
}
int main() {int n;cin n;if (n 0) {cout 输入的数应为正整数 endl;} else {int result factorial(n);cout result endl;}return 0;
}
心得体会
else { return n * factorial(n - 1); }如果输入的n不是0或1值相同需单独考虑则执行这部分代码。函数通过递归调用自身来计算 n的阶乘函数返回n乘以调用factorial(n-1)的结果即n与比n小1的数的阶乘的乘积。通过不断递归调用直到满足基准情况最终实现计算n的阶乘的目的。