#include<stdio.h>
#include<conio.h>
int add(int n);
void main()
{
int n, ans;
clrscr();
printf("Enter Number:");
scanf("%d", &n);
ans = add(n);
printf("%d", ans);
getch();
}
int add(int n)
{
if (n==0)
{
return 0;
} else {
return n + add(n-1);
}
}
我有一些怀疑有这种类型的返回语句的相关递归程序。任何人都可以用适当的方式解释我。 我不能理解那件事,如果我写的时候返回0当n == 0那么它为什么从else返回值。为什么答案不是0.我很困惑,在return语句中。
Plz帮助我。 提前感谢您。添加数字使用递归在C
首先被解雇了,你说的C,那你说C++。并且不要告诉我你正在以这种方式实际地格式化你的代码? –
你为什么要用递归函数呢? –
_“我不能理解那件事,如果我写的时候返回0当n == 0”_那么,递归需要在某个点停止,不是? –