Fskingmax
2019-07-29 17:15
采纳率: 66.7%
浏览 548

C语言 递归函数 传参问题

#include

int x = 0;
int function(int num);

int main()
{
int num = 0;
int y = function(num);
printf("%d\n",num);

return 0;

}

int function(int num)
{
//printf("%d ",num);
//printf("%d ",x);
while(x<100)
{
x++;
num+=x;
function(num);
//printf("%d ",num);
//printf("%d ",x);

}

return num;

}

为什么最后会输出num的值为0

  • 写回答
  • 好问题 提建议
  • 追加酬金
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • threenewbee 2019-07-29 17:39
    已采纳
    #include <stdio.h>
    
    int x = 0;
    int function(int num);
    int main()
    {
    int num = 0;
    int y = function(num);
    printf("%d\n",y);
    return 0;
    }
    int function(int num)
    {
    //printf("%d ",num);
    //printf("%d ",x);
    if(x<100)
    {
    x++;
    num+=x;
    return function(num);
    //printf("%d ",num);
    //printf("%d ",x);
    }
    
    return num;
    }
    
    评论
    解决 无用
    打赏 举报
查看更多回答(1条)

相关推荐 更多相似问题