C语言求1到n的和(附带源码和解析)

在C语言中,使用 for 循环求 1 到 n 的和是一个常见的编程任务。这个任务不仅可以帮助初学者理解循环的基本概念,还能培养他们的逻辑思维能力。

要计算 1 到 n 的和,我们需要创建一个循环,从 1 开始,一直累加到 n。for 循环非常适合这种情况,因为我们知道确切的迭代次数。

下面是实现这个功能的完整 C 程序:

cpp 复制代码
/**
*  系统学习C语言 https://xiecoding.cn/c/
**/
#include <stdio.h>

int main() {
    int n, sum = 0;

    printf("请输入一个正整数 n:");
    scanf("%d", &n);

    for (int i = 1; i <= n; i++) {
        sum += i;
    }

    printf("1 到 %d 的和是:%d\n", n, sum);

    return 0;
}

让我们逐行分析这段代码,以便更好地理解它的工作原理:

首先,我们包含了 stdio.h 头文件,这是因为我们需要使用 printf 和 scanf 函数进行输入输出操作。在 main 函数中,我们声明了两个整型变量:n 用于存储用户输入的数字,sum 用于存储累加的和,初始值设为 0。

接下来,我们使用 printf 函数提示用户输入一个正整数,然后用 scanf 函数读取用户的输入并存储在 n 变量中。这里使用 %d 格式指定符来读取整数。

现在,我们来到了程序的核心部分 ------ for 循环,这个循环的结构如下:

cpp 复制代码
for (初始化; 条件; 更新) {
    循环体
}

在我们的程序中,for 循环的各个部分如下:

  • 初始化:int i = 1 声明并初始化了循环变量 i,从 1 开始。
  • 条件:i <= n 确保循环继续执行,直到 i 大于 n。
  • 更新:i++ 在每次循环结束时将 i 增加 1。
  • 循环体:sum += i 将当前的 i 值加到 sum 上。

这个循环会从 1 开始,依次将每个数加到 sum 上,直到达到 n。例如,如果 n 是 5,循环将执行 5 次,sum 的值将依次变为 1、3、6、10、15。

循环结束后,我们使用 printf 函数输出结果。%d 格式指定符用于打印整数值,我们分别打印了 n 和 sum 的值。

最后,return 0 表示程序正常结束。

让我们看一个具体的例子,假设用户输入 n = 5,程序的输出将会是:

请输入一个正整数 n:5

1 到 5 的和是:15

这个程序虽然简单,但它展示了几个重要的编程概念:变量声明和初始化、用户输入、循环结构、算术运算以及结果输出。通过理解和练习这样的基础程序,初学者可以逐步掌握更复杂的编程技巧。

相关推荐
_Narcissus_1 小时前
动态规划初探(含完整代码实现)
c语言·数据结构·c++·算法·动态规划·背包问题·最短路径
Cerman1 小时前
QEMU启动OVMF shell超时分析
c语言·windows·经验分享
_Narcissus_3 小时前
枚举和模拟算法笔记
c语言·数据结构·c++·笔记·算法·模拟·枚举
老当益壮梁奶奶4 小时前
Linux软件编程学习笔记(二)Linux文件IO编程入门:从fopen到fgetc
linux·c语言·c++·笔记·学习
sunoo-2294 小时前
C 语言文件 IO 全攻略:从基础函数到实战踩坑(BMP 读取 + 词典查询)
linux·c语言·前端·笔记·vscode·学习
LuminousCPP5 小时前
栈和队列专题(四):LeetCode 232. 用栈实现队列|双栈分工 + 按需迁移 + 摊还 O(1)
c语言·数据结构·笔记·算法·leetcode
流浪0016 小时前
C/C++ 后端筑基系列(一):C语言 —— 从基础到进阶系统指南
c语言
caimouse17 小时前
ReactOS 图形系统分析(51):元文件子系统 — metafile.c
c语言·开发语言
Canmag 兴隆磁性21 小时前
C 系列充磁机
c语言·开发语言·学习·永磁材料·充磁·退磁
_Narcissus_1 天前
排序算法总结表格
c语言·数据结构·c++·笔记·算法·排序算法·总结