C语言-函数实现模块化设计-函数的递归调用

来源:互联网 发布:知乎周刊第一本 编辑:程序博客网 时间:2024/05/16 05:57

调用一个函数的过程中直接或间接调用这个函数的本身,称为函数的递归调用。

实现递归调用时,要注意循环的次数,这个时候就要用条件语句来约束递归调用的次数。
Example: 用函数递归调来实现求n!。(注意int的字节,int为四个字节,因此输入的n最大不能超过13)
#include<stdio.h>int main(){int fac(int n);                    //声明子函数facint n,y;printf("input an integer number:");scanf("%d",&n);y=fac(n);                            //将子函数的计算值赋给yprintf("%d!=%d\n",n,y);return 0;}int fac(int n){int f;if(n<0)printf("n<0,data error!");else if(n==0||n==1)              //排除n=1和n=0的情况f=1;else f=fac(n-1)*n;                //n*(n-1)·······成此阶乘return(f);                           //返回子函数值
 
原创粉丝点击