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

掌握while循环:从入门到精通

一、什么是 while 循环?

作用:满足条件就重复执行一段代码,直到条件不成立为止。

生活例子:

  • 只要没写完作业,就继续写
  • 只要钱没花完,就继续花
  • 只要数字 < 10,就一直加

二、while 基本语法

while (循环条件) { // 循环体:要重复执行的代码 // 必须有:让条件趋向不成立的语句 }

执行流程:

  1. 先判断条件
  2. 条件为真 → 执行循环体
  3. 再回去判断条件
  4. 条件为假 → 退出循环

三、最简单示例:从 1 打印到 5

#include <iostream> using namespace std; int main() { // 循环变量初始化 int i = 1; // 循环条件 while (i <= 5) { cout << "i = " << i << endl; // 让循环趋向结束(非常重要) i++; } system("pause"); return 0; }

运行结果:

i = 1 i = 2 i = 3 i = 4 i = 5 请按任意键继续...

四、什么是死循环?怎么避免?

1. 死循环

条件永远成立,程序停不下来:

while (true) { cout << "一直跑..." << endl; }

2. 新手最容易写出死循环

忘记写i++,条件永远成立:

int i = 1; while (i <= 5) { cout << i; // 没有 i++ → 死循环! }

3. 如何强制停止死循环?

VS Code 终端里按:Ctrl + C


五、案例:计算 1~100 的和

#include <iostream> using namespace std; int main() { int i = 1; int sum = 0; while (i <= 100) { sum += i; i++; } cout << "1~100 的和 = " << sum << endl; system("pause"); return 0; }

运行结果:

1~100 的和 = 5050 请按任意键继续...

六、break 关键字:立刻跳出循环

满足某个条件时,直接结束循环:

int i = 1; while (i <= 10) { if (i == 6) { // 直接跳出 while break; } cout << i << endl; i++; }

输出:1 2 3 4 5


七、continue 关键字:跳过本次,继续下一次

int i = 0; while (i < 5) { i++; if (i == 3) { // 跳过本次循环后面的代码 continue; } cout << i << endl; }

输出:1 2 4 5


八、新手必踩 3 个坑

  1. 忘记更新循环变量→ 死循环
  2. 循环条件写反(比如i >= 5)→ 一次都不执行
  3. while 后多加分号→ 死循环或逻辑错误
    while (i < 5); // 错误!分号会让循环体为空 { ... }

九、今日重点总结

  1. while (条件) { 循环体 }:条件为真就重复执行
  2. 必须有让条件趋向假的语句(如 i++)
  3. 死循环:条件永远成立,用 Ctrl+C 停止
  4. break:直接跳出循环
  5. continue:跳过本次,继续下一次
http://www.cnnetsun.cn/news/1722272.html

相关文章:

  • Cylinder3D目标检测环境配置、Cylinder3D目标检测模型代跑训练、Cylinder3D目标检测模型改进创新Cylinder3D目标检测环境配置:Windows、Ubuntu、Cen
  • 别再手动调API了!用SpringBoot+微信小程序,30分钟搞定一个属于你的AI聊天机器人(附完整源码)
  • next-redux-wrapper源码解读:深入理解其工作原理
  • 如何利用Gumbo-parser提升自动化测试效率:终极指南 [特殊字符]
  • DepotDownloader核心功能解析:从App下载到工作坊内容获取的完整指南
  • 终极Materialize数据保护指南:轻松实现合规与隐私保护
  • 5分钟掌握B站视频精华:BiliTools AI总结功能完全指南
  • 突破Windows 11性能瓶颈:Win11Debloat系统优化工具革新体验
  • umamusume-localify本地化工具与效能调优技术指南
  • 5倍效率提升:Topit如何重新定义macOS窗口管理
  • 2025届毕业生推荐的六大降AI率助手推荐
  • 终极罗技鼠标宏配置指南:告别压枪困扰,轻松掌握精准射击技巧
  • 如何优雅地将B站视频变为个人离线收藏?
  • DeepSeek-Coder-V2完全指南:从环境搭建到代码生成实战
  • 动漫手办销售|基于springboot + vue动漫手办销售管理系统(源码+数据库+文档)
  • 终极指南:MFE-starter如何让Angular与React和平共存的实战方案
  • 实战指南:基于本地openclaw与快马ai,快速构建文档问答应用
  • OpCore-Simplify:黑苹果EFI配置效率提升90%的智能工具
  • 如何用GHelper解决华硕笔记本合盖休眠的终极烦恼
  • 微服务架构下,如何用 OAuth2.0 动态注册优雅管理上千个客户端?
  • Seldon Core 2批量推理完整指南:处理大规模离线预测的终极方案
  • BigDL-2.x DLlib深度指南:用Spark DataFrames构建分布式深度学习应用
  • 如何用Xournal++解决数字笔记三大痛点?超实用指南
  • TCPCopy状态机实现:如何模拟完整TCP协议栈进行实时流量复制
  • HY-Motion 1.0保姆级教程:一句话生成3D人体动作,动画制作从未如此简单
  • pe_to_shellcode实战演练:从PE转换到进程注入的完整流程
  • Batocera.linux故障排除手册:常见问题解决方案大全
  • STEP3-VL-10B实战:一张图片搞定文字提取、物体计数、逻辑推理和GUI分析
  • TradingAgents-CN终极指南:3步搭建你的AI量化投资分析系统
  • Path of Building终极指南:从Build规划到精准计算的完整解决方案