C 语言基础教程

C 语言流程控制

C 语言函数

C 语言数组

C 语言指针

C 语言字符串

C 语言结构体

C 语言文件

C 其他

C 语言参考手册

C程序使用递归求自然数之和

C 语言编程实例大全

在此示例中,您将学习使用递归函数查找自然数之和。

要理解此示例,您应该了解以下C语言编程主题:

正数1、2、3 ...称为自然数。下面的程序从用户处获取一个正整数,然后计算得出给定数字的总和。

访问此页面可  使用循环查找自然数之和

使用递归的自然数之和

#include <stdio.h>
int addNumbers(int n);
int main() {
    int num;
    printf("输入一个正整数: ");
    scanf("%d", &num);
    printf("Sum = %d", addNumbers(num));
    return 0;
}

int addNumbers(int n) {
    if (n != 0)
        return n + addNumbers(n - 1);
    else
        return n;
}

输出结果

输入一个正整数: 20
Sum = 210

假设用户输入了20。

最初,从main()调用addNumbers(),并传入20作为参数。

数字20被添加到addNumbers(19)的结果中。

在下一个从addNumbers()到addNumbers()的函数调用中,将传递19,该值将添加到addNumbers(18)的结果中。 此过程一直持续到n等于0。

当n等于0时,没有递归调用。 这最终将整数和返回给main()函数。

C 语言编程实例大全