40.递归函数(一)
当碰到一个条件的时候都会再重复的从头再来,在c语言中就可以使用递归函数。
递归函数就是一个函数在他的函数体内调用它自身。执行递归函数将反复调用其自身,每调用一次就进入新的一层。
例如:计算n的阶乘可以使用以下代码:
#include<stdio.h>
int factorial(int n){
int result;
if(n < 0)
{
printf("输入错误! \n");
return 0;
}
else if(n==0 || n==1)
{
result = 1;
}
else
{
result = factorial(n-1)*n;
}
return result;
}
int main(){
int n = 5;
printf("%d的阶乘=%d, n, factorial(n));
return 0;
}
yu那个结果为:5的阶乘=120
任务
小明为了学好英语,需要每天记单词,第一天记1个,第二天记2个以此类推,到第十天的时候小明一共记住了多少个单词?
#include<stdio.h>
int getWordNumber(int n)
{
if(n == 1)
{
return 1;
}
else
{
return getWordNumber(n-1)+n;
}
}
int main()
{
int num = getWordNumber(10)
printf("小明第10天记了;%d个单词。\n", num);
return 0;
}
输出的结果是:小明第10天记了:55个单词。