标题:关于递归函数的问题,n个不懂
取消只看楼主
简体字01
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:86
专家分:137
注 册:2012-3-4
结帖率:100%
已结贴  问题点数:20 回复次数:4 
关于递归函数的问题,n个不懂
如在下面这个函数中,输入4,是怎么得出结果是4的?  (关于递归函数都不太明白,谢谢解答,感激不尽)
#include<stdio.h>
int number(int y)
{
    int num;
    if(y<4&&y>0)
        num=y;
    else num=number(y-1)+y-3;
    return num;
}
int main()
{
    int n,count;
    do
    {
        printf("YEAR: ");
        scanf("%d",&n);
        count=number(n);
        printf("%d\n",count);
    }while(n);
    return 0;  
}
搜索更多相关主题的帖子: 问题 return number count 
2012-04-21 14:13
简体字01
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:86
专家分:137
注 册:2012-3-4
得分:0 
回复 2楼 liuhoukai
程序没问题,就想知道是怎么样实现的,就比如说4吧。
2012-04-21 14:43
简体字01
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:86
专家分:137
注 册:2012-3-4
得分:0 
回复 5楼 ab1034982749
恩恩,明白了,谢谢哈。
2012-04-21 15:41
简体字01
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:86
专家分:137
注 册:2012-3-4
得分:0 
回复 5楼 ab1034982749
再请教一下,为什么输入0的时候,printf那句不会实现呢?不是先执行循环内部,再才判断n是否为0的吗?
2012-04-21 21:47
简体字01
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:86
专家分:137
注 册:2012-3-4
得分:0 
回复 7楼 wandon8989
麻烦你说详细点。
2012-04-21 21:47



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-366285-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.560157 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved