|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 Anny黄 于 2015-6-3 22:44 编辑
我实在是不太明白这个程序的recurrence函数到底是怎么在【temp_result=recurrence(n-1)*n】这一步里面重复运行直到条件不成立后退出的。recurrence(n-1)*n后得出的值貌似没有保留吧,接着进行recurrence了不就只是重复的在(n-1)*n。走到了recurrence就又重复走了,值没有进行保留吧。还有我这编译器不知道为什么最近老是出现问题,能编译不能运行。帮忙看看怎么回事,谢谢了
代码如下- #include<stdio.h>
- long recurrence(int n);
- void main()
- {
- int n;
- long result;
- scanf("%d",&n);
- result=recurrence(n);
- printf("%d",result);
- }
- long recursion (int n)
- {
- long temp_result;
- if(n<0)
- {
- printf("n<0,input error\n");
- }
- else if(n==0||n==1)
- {
- temp_result=1;
- }
- else
- {
- temp_result=recurrence(n-1)*n;
- }
- return temp_result;
- }
复制代码
|
|