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

c++之循环

目录

C++循环结构完全解析:从基础到实战应用

一、for循环结构

二、while循环结构

三、do-while循环结构

四、范围for循环(C++11)

五、循环控制语句


C++循环结构完全解析:从基础到实战应用

循环结构是编程语言的核心控制结构之一,本文将深入讲解C++中的四种循环方式,并提供多个实用代码示例。


一、for循环结构

for循环是最常用的确定性循环结构,其基本格式为: $$ \text{for}(初始化表达式; 条件表达式; 更新表达式) $$

示例1:基础计数循环

#include <iostream>
using namespace std;int main() {for(int i = 1; i <= 5; ++i) {cout << "当前数值:" << i << endl;}return 0;
}

输出结果:

当前数值:1
当前数值:2
当前数值:3
当前数值:4
当前数值:5

示例2:复合条件循环

#include <iostream>
using namespace std;int main() {for(int a=0, b=10; a < b; a+=2, b-=1) {cout << "a=" << a << ", b=" << b << endl;}return 0;
}

输出结果:

a=0, b=10
a=2, b=9
a=4, b=8


二、while循环结构

while循环适用于不确定循环次数的场景,先判断后执行。

示例1:输入验证

#include <iostream>
using namespace std;int main() {int password;cout << "请输入密码(123456):";cin >> password;while(password != 123456) {cout << "密码错误,请重新输入:";cin >> password;}cout << "登录成功!" << endl;return 0;
}

示例2:数据过滤

#include <iostream>
using namespace std;int main() {int num = 1024;while(num > 2) {num /= 2;cout << num << " ";}return 0;
}

输出结果:

512 256 128 64 32 16 8 4 2 


三、do-while循环结构

至少执行一次循环体,适合需要先执行后判断的场景。

示例1:菜单系统

#include <iostream>
using namespace std;int main() {char choice;do {cout << "\n1. 开始游戏\n2. 设置\n3. 退出\n请选择:";cin >> choice;switch(choice) {case '1': cout << "游戏开始!"; break;case '2': cout << "进入设置"; break;case '3': cout << "再见!"; break;default: cout << "无效选项";}} while(choice != '3');return 0;
}

示例2:数学计算

#include <iostream>
using namespace std;int main() {int n, sum = 0;cout << "输入正整数:";cin >> n;do {sum += n%10;n /= 10;} while(n > 0);cout << "各位数字之和:" << sum;return 0;
}


四、范围for循环(C++11)

专为遍历容器设计的简化循环结构。

示例1:数组遍历

#include <iostream>
using namespace std;int main() {int nums[] = {2, 4, 6, 8, 10};for(int num : nums) {cout << num * 2 << " ";}return 0;
}

输出结果:

4 8 12 16 20 

示例2:字符串处理

#include <iostream>
#include <string>
using namespace std;int main() {string msg = "Hello";for(char &c : msg) {c = toupper(c);}cout << msg; // 输出:HELLOreturn 0;
}


五、循环控制语句
  1. break:立即终止当前循环
  2. continue:跳过本次循环剩余代码
  3. 循环嵌套:最多支持256层嵌套(视编译器而定)

实践建议:

  • 优先选择for循环处理确定次数的场景
  • 使用while循环处理不确定次数的迭代
  • 需要至少执行一次时使用do-while
  • 范围for循环最适合容器遍历

掌握这些循环结构的特性,能够显著提升代码效率和可读性。建议通过实际项目练习不同循环结构的组合应用,加深对循环控制的理解。

http://www.lryc.cn/news/2396540.html

相关文章:

  • python h5py 读取mat文件的<HDF5 object reference> 问题
  • linux命令 systemctl 和 supervisord 区别及用法解读
  • Spring Boot + MyBatis 实现的简单用户管理项目的完整目录结构示例
  • NodeJS全栈开发面试题讲解——P5前端能力(React/Vue + API调用)
  • [001]从操作系统层面看锁的逻辑
  • 初识 Pytest:测试世界的智能助手
  • stm32 + ads1292心率检测报警设置上下限
  • 项目练习:element ui 的icon放在button的右侧
  • 性能诊断工具AWR配置策略与报告内容解析
  • Tailwind CSS 实战,基于 Kooboo 构建 AI 对话框页面(三):实现暗黑模式主题切换
  • OleDbParameter.Value 与 DataTable.Rows.Item.Value 的性能对比
  • Unity3D ET框架游戏脚本系统解析
  • 函数的定义、调用、值传递、声明、非安全函数
  • MySQL 8.0 OCP 英文题库解析(十一)
  • 机器学习算法-k-means
  • ADQ36-2通道2.5G,4通道5G采样PXIE
  • LLM:decoder-only 思考
  • 数字创新智慧园区建设及运维方案
  • 【科研绘图系列】R语言绘制森林图(forest plot)
  • Springcloud Alibaba自定义负载均衡详解
  • 深度学习---负样本训练
  • SpringAI+DeepSeek大模型应用开发实战
  • 【Python Cookbook】文件与 IO(一)
  • STM32 HAL库函数学习 GPIO篇
  • 如何以 9 种方式将照片从 iPhone 传输到笔记本电脑
  • 根据jvm源码剖析类加载机制
  • Mixly1.0/2.0/3.0 (windows系统) 安装教程及使用常见问题解决
  • DDS通信中间件——DDS-TSN规范
  • JWT安全:弱签名测试.【实现越权绕过.】
  • MATLAB实现井字棋