递归函数(一)

来源:5-7 递归函数(一)

回首已是千年

2016-03-20 17:25

#include <stdio.h>

/* 定义获取单词数量的函数 */

int getWordNumber(n)

{   

    if(n == 1)

    {

        return 1;    //第一天只会1个单词

    }

    else{

        return getWordNumber(n-1)+n;       //到第天会的单词数量

    }

}

int main()

{

    int num = getWordNumber(10);     //获取会了的单词数量

    printf("小明第10天记了:%d个单词。\n", num);

    return 0;

}

结果为什么等于55?将10代入(n-1)+n不是等于19么怎么等于55?

写回答 关注

2回答

  • 慕九州1701935
    2016-05-04 18:59:42

    天下有奇族人姓计,长生不老。一日其孙问其父:吾之18代祖名何?其父不明,父问其父其父不明,父问其父其父不明,父问其父其父不明,父问其父...晌后,其18代祖回其子:你猜 然其回其子:你猜然其回其子:你猜然其回其子:你猜然其回其子:你猜……终,计姓末代孙知其18代祖名“你猜”此乃,递归


    作者:牛杰
    链接:http://www.zhihu.com/question/20507130/answer/92131905
    来源:知乎
    著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。


  • 爱潜水_小Charley
    2016-03-20 18:07:09

    10带入:getWordName(9)+10=getWordName(8)+9+10=......以此类推

    问这个问题说明你没理解递归

C语言入门

C语言入门视频教程,带你进入编程世界的必修课-C语言

926020 学习 · 20793 问题

查看课程

相似问题