当前位置: 代码迷 >> C语言 >> 这题为何是012345.
  详细解决方案

这题为何是012345.

热度:205   发布时间:2007-08-14 16:37:41.0
这题为何是012345.

这题的答案为何为012345.
main()
{int w=5;fun(w);printf("\n");}
fun(int k)
{if(k>0)fun(k-1);
printf("%d",k);
}


----------------解决方案--------------------------------------------------------
递归函数,其实程序已经调用了6次 fun(int)

最先调用,最后返回(有点像堆栈),返回后再执行下一条语句

就说到这,你自己好好想想,自己想明白了才有提高

----------------解决方案--------------------------------------------------------

不用事先声明fun么?


----------------解决方案--------------------------------------------------------

这是哪一年写的代码?


----------------解决方案--------------------------------------------------------
递归...
----------------解决方案--------------------------------------------------------
答案对的啊
----------------解决方案--------------------------------------------------------

先fun(0)
输出0


----------------解决方案--------------------------------------------------------
应该先声明fun()函数,再调用。
----------------解决方案--------------------------------------------------------


main()
{
int w=5;
fun(w);
printf("\n");
getch();
}

fun(int k)
{
if(k>0)
fun(k-1);
printf("%d",k);
}

这样写在Wind-TC中是可编译,可运行!


----------------解决方案--------------------------------------------------------

多谢大家了.我懂了.


----------------解决方案--------------------------------------------------------
  相关解决方案