admin管理员组文章数量:1794759
C语言 使用递归函数计算1到n之和
#include <stdio.h> int sum( int n ); int main() { int n; puts("请输入正整数n:"); scanf("%d", &n); printf ("1到%d的和等于:%d\\n", n, sum(n)); return 0; } int sum( int n ){ if(n > 1){ return n + sum(n - 1); } else if(n <= 0){ // 当输入的 n 小于等于 0时,返回0. return 0; }else { // 当n != 1时结束递归循环 return 1; } }
运行结果:
例如: 当 n = 5时,sum函数第一次执行:
sum函数第二次执行: sum(5 - 1) = sum(4)
sum函数第三次执行: sum(4 - 1) = sum(3)
sum函数第四次执行: sum(3 - 1) = sum(2)
sum函数第五次执行: sum(2 - 1) = sum(1)
第五次返回结果:return 1 逐层往上返回, 第四次运行结束:(retrun 2 + 1) = return 3; 第三次运行结束:(return 3 + 2 + 1)= return 6; 第二次运行结束:(return 4 + 3 + 2 + 1)= return 10; 第一次运行结束:(return 5 + 4 + 3 + 2 + 1)= return 15;
最后程序结束 返回最后结果: 15
版权声明:本文标题:C语言 使用递归函数计算1到n之和 内容由林淑君副主任自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.xiehuijuan.com/baike/1686488615a73185.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论