news 2026/7/27 7:40:50

C 语言循环与自增运算符组合对比分析

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
C 语言循环与自增运算符组合对比分析

一、实验说明

初始变量统一:int i = 5; int n = 0;
i:循环条件变量
n:统计循环体执行次数
核心规则:
后置自增 i++:先取值判断,后变量自增
前置自增 ++i:先变量自增,后取值判断
for / while:先判断条件,再执行循环体
do-while:先执行循环体,再判断条件(循环体至少执行 1 次)

二、四组代码及详细执行流程

案例 1:for 循环 + 后置自增 i++

int i = 5; int n = 0; for(; i < 10; i++) { n++; }

执行流程(先判断,后执行)
判断 5<10 成立 → 执行 n=1,i=6
判断 6<10 成立 → 执行 n=2,i=7
判断 7<10 成立 → 执行 n=3,i=8
判断 8<10 成立 → 执行 n=4,i=9
判断 9<10 成立 → 执行 n=5,i=10
判断 10<10 不成立,循环结束
执行次数:5 次,最终 n=5


案例 2:while 循环 + 前置自增 ++i

int i = 5; int n = 0; while(++i < 10) { n++; }

执行流程(先判断,后执行):
++i=6,判断 6<10 成立 → 执行 n=1
++i=7,判断 7<10 成立 → 执行 n=2
++i=8,判断 8<10 成立 → 执行 n=3
++i=9,判断 9<10 成立 → 执行 n=4
++i=10,判断 10<10 不成立,循环结束
执行次数:4 次,最终 n=4

案例 3:do-while 循环 + 后置自增 i++

int i = 5; int n = 0; do { n++; }while(i++ < 10);

执行流程(先执行循环体,再判断条件):
执行循环体:n=1 → 判断 5<10 成立,i 自增为 6
执行循环体:n=2 → 判断 6<10 成立,i 自增为 7
执行循环体:n=3 → 判断 7<10 成立,i 自增为 8
执行循环体:n=4 → 判断 8<10 成立,i 自增为 9
执行循环体:n=5 → 判断 9<10 成立,i 自增为 10
执行循环体:n=6 → 判断 10<10 不成立,i 自增为 11,循环结束
执行次数:6 次,最终 n=6

案例 4:do-while 循环 + 前置自增 ++i

int i = 5; int n = 0; do { n++; }while(++i < 10);

执行流程(先执行循环体,再判断条件):
执行循环体:n=1 → ++i=6,判断 6<10 成立
执行循环体:n=2 → ++i=7,判断 7<10 成立
执行循环体:n=3 → ++i=8,判断 8<10 成立
执行循环体:n=4 → ++i=9,判断 9<10 成立
执行循环体:n=5 → ++i=10,判断 10<10 不成立,循环结束
执行次数:5 次,最终 n=5

三、结果汇总表

循环类型自增方式循环执行次数
for后置i++5
while前置++i4
do-while后置i++6
do-while前置++i5

四、总结

执行顺序差异:

  • for 和 while 先判条件再执行代码;
  • do-while 必定先执行一次循环体,再做条件判断。

自增规则差异:

  • 前置自增会先改变变量值,更容易让条件失效,减少循环次数;
  • 后置自增先用原值判断,变量延后自增。


实操提醒:循环次数受循环结构和自增写法共同影响,分析代码必须严格遵循执行顺序,不能主观臆断。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/27 7:40:07

Linux进程控制:从基础概念到实战技巧

1. 进程控制基础概念在Linux系统中&#xff0c;进程是程序执行的基本单位。理解进程控制是系统管理和程序开发的核心技能之一。每次我们在终端输入命令时&#xff0c;系统都会创建一个新的进程来执行这个命令。比如运行ls -l查看目录内容时&#xff0c;系统就会启动一个专门处理…

作者头像 李华
网站建设 2026/7/27 7:39:50

7.20-7.26学习笔记

目录 一、软件包管理 1.在 Rocky Linux 上使用 dnf 安装 nginx 2.在 Rocky Linux 上使用 rpm 查询 nginx 安装的文件列表 3.在 Ubuntu 上使用 apt 安装 nginx 4.配置 Rocky使用阿里源 Rocky方法一 Rocky方法二 Rocky替换阿里EPEL源 5.配置Ubuntu使用清华源 6.dnf ins…

作者头像 李华
网站建设 2026/7/27 7:39:42

LLM结构化输出对回答多样性的影响与平衡策略

在实际 AI 应用开发中&#xff0c;我们越来越依赖大语言模型&#xff08;LLM&#xff09;生成结构化的数据输出&#xff0c;比如 JSON 或 XML 格式。这种需求在构建 API 接口、数据提取工具或自动化工作流时尤为常见。开发者通常认为&#xff0c;强制模型输出固定格式&#xff…

作者头像 李华
网站建设 2026/7/27 7:39:34

TMS320DM6467T中断控制器与EMIF实战:从原理到调试避坑指南

1. 项目概述与核心价值在嵌入式系统&#xff0c;尤其是像TMS320DM6467T这类面向音视频处理、通信网关的高性能数字信号处理器&#xff08;DSP&#xff09;设计中&#xff0c;中断控制器和外部存储器接口&#xff08;EMIF&#xff09;是决定系统实时性、稳定性和整体性能的两大基…

作者头像 李华
网站建设 2026/7/27 7:38:46

Netty从入门到精通3

第3章 Reactor 线程模型:从单线程到主从多线程的演进 学习目标 能手绘三种 Reactor 模型(单线程、多线程、主从多线程)的架构图,并标注各组件职责 说清 EventLoop 与 Channel 的绑定机制:next() 选择策略、注册流程、线程安全保证 完成 Netty 4.2 MultiThreadIoEventLoop…

作者头像 李华
网站建设 2026/7/27 7:37:11

基于YOLOv8的猪只行为智能识别系统开发实践

1. 项目概述&#xff1a;猪只行为智能识别的技术实现在现代化养殖场中&#xff0c;猪只行为的精准监测一直是困扰从业者的难题。传统的人工观察方式不仅耗时耗力&#xff0c;还存在主观性强、数据难以量化等问题。作为一名长期从事农业AI落地的工程师&#xff0c;我最近完成了一…

作者头像 李华