问答详情
源自:5-7 递归函数(一)

求大神指教,输出结果是正确的。但是代码不同,有什么区别?哪个更好?

#include <stdio.h>
/* 定义获取单词数量的函数 */
int getWordNumber(int 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;
}


提问者:慕雪9417517 2016-12-08 13:41

个回答

  • 慕粉4285392
    2016-12-17 09:41:06

    也没分哪个好与不好,这看个人习惯,只不过递归看起来更加高级而已。而且你的那个代码写在原先的框架上显得有些多余,你那个代码根本用不上形参,也不用另设函数,直接写在main函数里就可以了。

  • 慕雪9417517
    2016-12-08 15:22:05

    好在哪里?不用递归的那种,不是更好理解嘛?

  • 魂星语
    2016-12-08 15:18:35

    用递归的好些!