mtwm.net
当前位置:首页 >> 编写一个递归函数计算从1加到100的和 >>

编写一个递归函数计算从1加到100的和

int fun(int x){if(x>1)return x+fun(x-1);elsereturn x;}void main(){int sum;sum=fun(100);printf("sum=%d\n",sum);} 扩展资料 编程语言中,函数Func(Type a,……)直接或间接调用函数本身,则该函数称为递归函数。递归函数不能定义为内联函数。 ...

以下程序代码通过,但仅供参考: '初始实参是i=100,total=0int sum(int i,int total){ if(i==1) return total+1; else return sum(i-1,total+i);}

当然是x,想想该函数的递归路径。x+(x-1)+((x-1)-1)+.....+2+1。百科一下递归函数,很多解释。

int sum(int s) { if(s > 2) { s = sum(s-1) + s ; } else { s = s + 1 ; } return s ; } 这是java的,不过其他语言大同小异 1、有自我调用 2、有出口 3、有返回值 基本上递归就写好了

public class Test { public static void main(String[] args) { System.out.println(dg(100)); } static int dg(int i) { int sum; if (i == 1) return 1; else sum = i + dg(i - 1); return sum; } }

/*还没下班!喔,好冷啊!手都冻僵了!*/ #include int n=0;//递加后的结果,初始化为0。 int fun( int x) { n= x+n; x--; if(x

public class Test { /*创建类*/public static void main(String[] args) {System.out.println(dg(100));}static int dg(int i) { /*定义变量 */int sum;if (i == 1) /*假设条件*/return 1;elsesum = i + dg(i - 1); /*1~100的和的表达式*/retur...

for(i=0;i=1;j++) 这里的问题。你得看清楚你要的条件是什么。 这里是死循环. i=1这个返回值是i的值,即是1.所以永远为真。 退不出循环。

就是递归的意思啊,递归就是在一个函数中调用该函数; 你可以单步调试来理解一下。 我觉得可以这样写,可能会好理解一些 #include int sum(int n);int main(){ printf("%d\n",sum(100)); return 0;}int sum(int n){ int y = 0; if(n==1) { y = 1...

关于递归,你可以这样想: 不去管这个函数是怎样实现的,你先记住这个函数的目的是什么。 比如sum函数,你只需要知道: sum(n)的功能是求1~n的和; sum(n-1)的功能是求1~n-1的和; sum(n-2)的功能是求1~n-2的和; ... ... sum(1)的功能是求1~1的...

网站首页 | 网站地图
All rights reserved Powered by www.mtwm.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com