⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 例8.8.txt

📁 谭浩强的C语言书中的代码
💻 TXT
字号:
  例 8.8用递归方法求n!。
求n!可以用递推方法,即从1开始,乘2,再乘3……
一直乘到n。这种方法容易理解,也容易实现。递推法的特点是从一个已知的事实出发,按一定规律推出下一个事实,再从这个新的已知的事实出发,再向下推出一个新的事实……这是和递归不同的。
求n!··也可以用递归方法,即5!等于4!×5,而4!=3!×4…1!=1。可用下面的递归公式表示:
 n!=1(n=0,1)
n·(n-1)!(n>1)
有了例7.7的基础,很容易写出本题的程序:
float  fac(int n)
       float f;
       if(n<0){ printf("n<0,dataerror!");f=-1;}
       else if(n==0‖n==1) f=1;
       else  f=fac(n-1)*n;
       return(f);
        main()
       int n;
       float y;
       printf("input a integer number:");
       scanf("%d",&n);
       y=fac(n);
       printf("%d!=%15.0f",n,y);
  运行情况如下:
input a integer number:10

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -