麻烦老师检查,另外递归出口还不太理解,请老师再解释一下,谢谢
来源:4-2 编程练习
叫我丽红
2021-05-28 11:06:49
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>递归</title>
</head>
<body>
<script>
//定义一个函数
function sum(n){
// 如果n为1,则累加为1,返回1停止
if ( n== 1) return 1;
// 1-100的和可看作 n + sum(n-1)的和
return n + sum(n-1);
}
var result = sum(100);
document.write(result);
</script>
</body>
</html>
1回答
好帮手慕然然
2021-05-28
同学你好,代码实现没问题,关于递归出口:也就是递归终止的边界条件。
以此代码为例:代码中递归结束的条件为n == 1,当递归体【return n + sum(n - 1)】不断调用sum函数时,其中的n也会不断执行(n-1)直到n变为1,满足 n == 1的条件,此时执行return 1语句,不再执行return n + sum(n - 1),则递归结束。
祝学习愉快!
相似问题