问题及代码:
/*
*Copyright (c)2014,烟台大学计算机与控制工程学院
*All rights reserved.
*文件名称:求n!的值_.cpp
*作 者:白云飞
*完成日期:2014年11月17日
*版 本 号:v1.0
*
*问题描述:求n!的值。
*程序输出:n!。
*/
#include<iostream>
using namespace std;
int fac(int n);//声明自定义函数
int main()//主函数
{
int n;//声明变量
cout<<"请输入一个数:"<<endl;
cin>>n;
cout<<n<<"!="<<fac(n)<<endl;//调用自定义函数,输出n!的值
return 0;
}
int fac(int n)//自定义函数
{
int f;//声明变量
if (n==0||n==1) f=1;//判断语句
else f=n*fac(n-1);
return (f);//返回f的值
}
运行结果:
知识点总结:
函数的递归调用
学习心得:
用递归的方法求n!的阶乘,即从1开始,乘2再乘3。。。。。。一直到n,比起其他方法简单,易理解。