0$房天下问答|一道递归题目$https://m.fang.com/ask/ask_1906405.html$https://static.soufunimg.com/common_m/m_public/201511/images/asksharedefault.png
packc/pages/ask/detail/detail?askid=1906405
-
一道递归题目
C语言 通过递归函数的定义,计算某非负整数n的阶乘并输出结果值。程序答案如下long fac(int n){long f;if(n==0)f=1;elsef=n*fac(n-1);return(f);}main(){int n;scanf("%d",&n);printf("%d!=%ld\n",n,fac(n));}各位达人们能不能告诉我为啥第五行是f=1。而不是直接跳出条件语句。f=1不是把1赋给f了吗。这样不是把之前的累乘结果都变回1了吗?为什么程序还能正确执行。为什么会是f=1?
更多
提问者:dragon8901
发布于2011-02-10
免责声明:问答内容均来源于互联网用户,房天下对其内容不负责任,如有版权或其他问题可以联系房天下进行删除。

关注成功