news 2026/4/16 12:54:05

C++流程控制

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
C++流程控制

一、流程控制的核心概念

C++ 的流程控制分为三大类(结构化程序设计的核心):

  • 顺序结构:代码从上到下逐行执行(默认逻辑);
  • 分支结构:根据条件执行不同代码(if/switch);
  • 循环结构:重复执行某段代码(for/while/do-while)。

二、分支结构(条件判断)

1. if 语句(灵活的多条件判断)

核心语法(单 / 双 / 多分支):

cpp

运行

// 单分支 if (条件表达式) { 代码块; // 条件为真时执行 } // 双分支 if (条件表达式) { 代码块1; } else { 代码块2; } // 多分支 if (条件1) { 代码块1; } else if (条件2) { 代码块2; } else { 代码块3; // 所有条件不满足时执行 }

关键规则

  • 条件表达式必须用()包裹,代码块用{}界定(即使单行也建议写,避免逻辑错误);
  • 条件表达式返回布尔值(true/false),非布尔值会自动转换(0 为 false,非 0 为 true);
  • 多分支中匹配到第一个真条件后,后续分支不再执行

实战示例(成绩等级判断):

cpp

运行

#include <iostream> using namespace std; int main() { int score = 85; if (score >= 90) { cout << "优秀" << endl; } else if (score >= 80) { cout << "良好" << endl; // 执行此分支 } else if (score >= 60) { cout << "及格" << endl; } else { cout << "不及格" << endl; } return 0; }
2. switch 语句(固定值匹配)

适合多值等值判断(如菜单选择、状态匹配),比多层 if 更简洁:

cpp

运行

#include <iostream> using namespace std; int main() { int choice = 2; switch (choice) { // 只能是整型/字符型/枚举型 case 1: // 匹配choice=1 cout << "选择功能1" << endl; break; // 跳出switch,避免穿透 case 2: cout << "选择功能2" << endl; // 执行此分支 break; default: // 无匹配值时执行(可选) cout << "无效选择" << endl; } return 0; }

关键规则

  • switch后的表达式只能是整型 / 字符型(如 int、char),不能是浮点型;
  • case后必须是常量(不能是变量),break是必写项(否则会 “case 穿透”,执行后续所有 case);
  • default可选,位置不限(建议放最后)。

三、循环结构(重复执行)

1. for 循环(已知循环次数)

核心语法

cpp

运行

for (初始化表达式; 条件表达式; 更新表达式) { 循环体; // 条件为真时执行 }

执行逻辑:初始化 → 判断条件 → 执行循环体 → 更新表达式 → 再次判断条件(直到条件为假)。

实战示例(计算 1-100 的和):

cpp

运行

#include <iostream> using namespace std; int main() { int sum = 0; for (int i = 1; i <= 100; i++) { // i从1到100,每次+1 sum += i; // 累加 } cout << "1-100的和:" << sum << endl; // 输出5050 return 0; }
2. while 循环(未知循环次数,先判断后执行)

核心语法

cpp

运行

while (条件表达式) { 循环体; }

实战示例(猜数字游戏):

cpp

运行

#include <iostream> using namespace std; int main() { int target = 7, guess; cout << "猜数字(1-10):"; while (cin >> guess && guess != target) { // 输入≠7则继续循环 cout << "猜错了,再试一次:"; } cout << "猜对了!" << endl; return 0; }
3. do-while 循环(至少执行一次,先执行后判断)

核心语法

cpp

运行

do { 循环体; } while (条件表达式); // 末尾必须加;

实战示例(确保至少输入一次):

cpp

运行

#include <iostream> using namespace std; int main() { int num; do { cout << "输入一个正数:"; cin >> num; } while (num <= 0); // 输入≤0则重新输入 cout << "你输入的正数是:" << num << endl; return 0; }

四、循环控制辅助语句

  1. break:立即跳出当前循环 /switch,执行后续代码;
  2. continue:跳过本次循环剩余代码,直接进入下一次循环判断;
  3. goto(不推荐):跳转到指定标签位置,易导致代码混乱,仅应急使用。

示例(break/continue)

cpp

运行

#include <iostream> using namespace std; int main() { for (int i = 1; i <= 5; i++) { if (i == 3) continue; // 跳过i=3,直接i++ if (i == 5) break; // 跳出循环 cout << i << " "; // 输出:1 2 4 } return 0; }

总结

  1. C++ 分支结构:if适合灵活条件判断,switch适合固定值匹配(注意 break 防穿透);
  2. C++ 循环结构:for已知循环次数,while未知次数(先判断),do-while至少执行一次;
  3. 循环控制:break跳出循环,continue跳过本次循环,尽量避免 goto。
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/16 9:20:34

Qwen2.5-0.5B部署在K8s上可行吗?容器编排实战

Qwen2.5-0.5B部署在K8s上可行吗&#xff1f;容器编排实战 1. 引言&#xff1a;为什么要在K8s上运行Qwen2.5-0.5B&#xff1f; 你有没有想过&#xff0c;一个参数量只有0.5B的AI模型&#xff0c;能不能在生产环境中稳定提供服务&#xff1f;尤其是在资源受限的边缘节点或测试集…

作者头像 李华
网站建设 2026/4/16 9:20:56

Z-Image-Turbo显存不足怎么办?16GB显卡高效部署案例详解

Z-Image-Turbo显存不足怎么办&#xff1f;16GB显卡高效部署案例详解 Z-Image-Turbo是阿里巴巴通义实验室开源的高效AI图像生成模型&#xff0c;作为Z-Image的蒸馏版本&#xff0c;它在保持高质量图像输出的同时大幅降低了资源消耗。该模型仅需8步即可完成图像生成&#xff0c;…

作者头像 李华
网站建设 2026/4/16 9:25:28

[Web自动化] 爬虫基础

9.1 爬虫基础 9.1.1 爬虫原理 爬虫&#xff08;Web Scraper 或 Web Crawler&#xff09;是一种自动化程序&#xff0c;它的核心任务是自动浏览互联网&#xff0c;通过模拟人类用户的行为&#xff08;如发送HTTP请求、解析HTML代码&#xff09;来抓取网页上的信息。爬虫可以根据…

作者头像 李华
网站建设 2026/4/16 10:57:15

Llama3-8B疫苗接种提醒:健康管理系统实战指南

Llama3-8B疫苗接种提醒&#xff1a;健康管理系统实战指南 1. 为什么用Llama3-8B做健康提醒系统&#xff1f; 你有没有遇到过这些情况&#xff1a; 家里老人记不清下一次该打什么疫苗&#xff1b;孩子的免疫规划表密密麻麻&#xff0c;翻来翻去总怕漏掉一针&#xff1b;社区医…

作者头像 李华
网站建设 2026/4/14 23:35:32

Qwen大模型儿童向改造:从通用到专用的部署转型实战

Qwen大模型儿童向改造&#xff1a;从通用到专用的部署转型实战 你有没有试过让AI画一只“戴着蝴蝶结的粉色小兔子&#xff0c;坐在彩虹云朵上吃棉花糖”&#xff1f;不是冷冰冰的写实风格&#xff0c;也不是抽象难懂的艺术表达&#xff0c;而是真正让孩子眼睛一亮、伸手想摸一…

作者头像 李华
网站建设 2026/4/16 2:57:58

原圈科技领航AI营销2026年顶尖系统榜单与获客秘籍[特殊字符] 核心摘要

在AI营销领域&#xff0c;原圈科技被普遍视为提供全链路一体化解决方案的代表。其系统通过打通从市场洞察、内容生成到销售转化的完整闭环&#xff0c;在实现营销自动化方面表现突出。本文将深度剖析其技术优势与商业价值&#xff0c;并为企业选择合适的AI营销体系提供专业评估…

作者头像 李华