当前位置: 首页 > news >正文

C语言中的for循环,看这一篇就够了!

新手友好,五分钟入门

一、为什么需要循环?

假设你要打印100次 "Hello",难道要写100行 printf?

循环就是用来解决这种“重复劳动”的。


二、for循环的语法

for (初始化; 条件; 更新) { 循环体语句; }

三个部分各司其职

部分作用执行时机
初始化设置循环变量的初始值循环开始前执行一次
条件判断是否继续循环每次循环开始前检查,为真则执行,为假则退出
更新改变循环变量的值每次循环体执行后执行

三、执行流程图解

① 初始化 ↓ ② 条件判断 → 假 → 结束循环 ↓ 真 ③ 执行循环体 ↓ ④ 更新 ↑ 回到②

四、举个栗子

打印 1 到 5:

#include <stdio.h> int main() { for (int i = 1; i <= 5; i++) { printf("%d ", i); } return 0; }

输出: 1 2 3 4 5

拆解执行

int i = 1 → 初始化,i=1

i <= 5 → 1<=5 为真,打印1

i++ → i变为2

i <= 5 → 2<=5 为真,打印2

… 直到 i=6,条件为假,退出


五、灵活使用(省略部分)

三个部分都可以省略,但分号不能少:

// 省略初始化(已在外部定义) int i = 1; for (; i <= 5; i++) { ... } // 省略更新(在循环体内做) for (int i = 1; i <= 5; ) { printf("%d ", i); i++; } // 省略条件(死循环) for (;;) { printf("无限打印\n"); }

六、常见陷阱

分号误写:for (i=1; i<=5; i++); 后面多了分号,循环体成了空语句。

条件写反:i >= 0 容易死循环,注意边界。

变量作用域:在 for 内定义的 int i,循环外无法使用。


七、嵌套循环 —— 打印九九乘法表

for (int i = 1; i <= 9; i++) { for (int j = 1; j <= i; j++) { printf("%d*%d=%-2d ", j, i, i * j); } printf("\n"); }

外层控制行,内层控制列,轻松搞定!


总结

要点记忆口诀
先初始化,再判断,执行完更新赋条改(赋值→条件→改变)
条件为真继续,为假退出真干活,假停手
灵活省略,但别乱用省略有风险,新手慎用

for循环是C语言最常用的循环结构,掌握它,你的代码效率将大幅提升!

快去敲代码试试吧

http://www.cnnetsun.cn/news/3292770.html

相关文章:

  • 终极指南:如何用GBFR Logs伤害统计工具优化《碧蓝幻想:Relink》团队输出
  • 多肽定制品纯度选择
  • PostgreSQL 19 Beta 值得测吗?并行 Autovacuum、REPACK 到 WAIT FOR LSN 看生产影响
  • 5分钟搞定华硕笔记本矩阵屏:用G-Helper打造专属动画与GIF播放效果
  • GTAIV.EFLC.FusionFix终极指南:如何让《侠盗猎车手4》焕发新生
  • 云固件 v1.6.23942 混合模式部署:3步完成UEFI+GPT本地硬盘引导集成
  • [CirclePupilAnimation节点]原理解析与实际应用
  • Neo4j Cypher 5.x 实战:3类复杂路径查询与性能调优对比
  • 3an推客超全常见问题答疑|电商运营新手必备实操指南
  • 为什么Playnite是游戏玩家的终极统一启动器?3步打造你的专属游戏中心
  • 直接序列扩频系统同步实战:滑动相关器捕获与延迟锁相环跟踪的2个关键步骤
  • Skill 太多、太乱、还不安全?还不知道哪些是适合自己行业的skill?只安装一个可信路由 Skill 就够了
  • FPGA UART 串口通信:3种电平标准(TTL/RS232/RS485)对比与选型指南
  • STM32F103C8T6 智能输液系统实战:红外滴速检测与步进电机PID控制
  • Visual C++运行库一键修复:3分钟彻底解决Windows软件启动问题的终极方案
  • 112、数据增强技巧:如何构建高质量的超分训练数据集
  • 绿盟一面面经分享
  • Claude Code国内可用指南:Node.js环境+CCSwitch路由配置实战
  • ubuntu 20.04 ros1 noetic环境复现 lego-loam 过程出现 mapOptmization-7] process has died 问题解决(个人经验)
  • HAC++:3D高斯泼溅模型超百倍压缩算法原理与实战部署
  • UE日志系统全解析:从基础调试到高级性能优化实战
  • 具身智能领域常见机器人平台与数据格式
  • 【DeepSeek内容过滤机制深度解密】:20年AI安全专家首度公开3层过滤架构与实时拦截逻辑
  • Hadoop HDFS 与 Linux 本地文件系统操作对比:10 个核心命令的差异与实战
  • 2026免费数字人平台怎么选?试用入口、导出权限、商用边界、后续成本一次看懂
  • NetworkX 2.8.8 实战:Python 构建 ER/WS/BA 三大网络模型,5分钟生成可视化对比图
  • TLA2518与dsPIC33EP构建高精度数据采集系统
  • 高精度信号采集系统设计与AD7175-8应用实战
  • Chroma、Weaviate、Qdrant 3款向量数据库对比:RAG场景下的检索延迟与吞吐实测
  • OpenCore Legacy Patcher完整指南:5步让老Mac焕发新生的终极方案