C语言 使用递归函数计算1到n之和
生活随笔
收集整理的這篇文章主要介紹了
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之和的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: C语言 二进制文件读取和写入
- 下一篇: C语言 递归求阶乘和