慕先生2405816
2018-03-10 08:59
循环结构不是while do-while for这些吗
#include <stdio.h>
/* 定义获取单词数量的函数 */
int getWordNumber(int n)
{ int num;
if(n == 1)
{
return 1; //第一天只会1个单词
}
else{num=getWordNumber(n-1)+n;/*getWordNumber( n)=getWordNumber(n-1)+n*/
return num; //到第天会的单词数量
}
}
int main()
{
int num = getWordNumber(10); //获取会了的单词数量
printf("小明第10天记了:%d个单词。\n", num);
return 0;
}递归就是调用他本身,调到跳出递归
我的理解是:递归,它调用了本身,在例题中输入的是n,
故执行sayHallo(n);
return的是sayHallo(n-1)*n等等的关系,它也return了本身,
所以还要执行一次sayHallo(n-1);
return的是sayHallo(n-2)*(n-1),
所以还要执行一次sayHallo(n-2);
return的是sayHallo(n-3)*(n-2),.........................................
C语言入门
926210 学习 · 20797 问题
相似问题