C++ Break、Continue 和 数组操作详解

C++ Break 和 Continue

break 语句还可以用来跳出循环。

在以下示例中,当 i 等于 4 时跳出循环:

cpp 复制代码
for (int i = 0; i < 10; i++) {
  if (i == 4) {
    break;
  }
  cout << i << "\n";
}

C++ Continue

以下示例跳过了值为 4 的情况:

cpp 复制代码
for (int i = 0; i < 10; i++) {
  if (i == 4) {
    continue;
  }
  cout << i << "\n";
}

在 While 循环中使用 Break 和 Continue

你也可以在 while 循环中使用 breakcontinue

Break 示例

cpp 复制代码
int i = 0;
while (i < 10) {
  cout << i << "\n";
  i++;
  if (i == 4) {
    break;
  }
}

Continue 示例

cpp 复制代码
int i = 0;
while (i < 10) {
  if (i == 4) {
    i++;
    continue;
  }
  cout << i << "\n";
  i++;
}

C++ 数组

数组用于在单个变量中存储多个值,而不是为每个值声明单独的变量。

要声明数组,请定义变量类型,指定数组名称,后跟方括号,并指定它应该存储的元素数:

cpp 复制代码
string cars[4];

我们现在声明了一个变量,它保存了一个包含四个字符串的数组。要向其中插入值,我们可以使用数组文字 - 将值放在逗号分隔的列表中,放在花括号内:

cpp 复制代码
string cars[4] = {"Volvo", "BMW", "Ford", "Mazda"};

要创建一个包含三个整数的数组,你可以这样写:

cpp 复制代码
int myNum[3] = {10, 20, 30};

访问数组的元素

通过在方括号 [] 内引用索引号来访问数组元素。

该语句访问 cars 中的第一个元素的值:

示例

cpp 复制代码
string cars[4] = {"Volvo", "BMW", "Ford", "Mazda"};
cout << cars[0];
// 输出 Volvo

注意: 数组索引从 0 开始:[0] 是第一个元素。[1] 是第二个元素,依此类推。

更改数组元素

要更改特定元素的值,请引用索引号:

cpp 复制代码
cars[0] = "Opel";

示例

cpp 复制代码
string cars[4] = {"Volvo", "BMW", "Ford", "Mazda"};
cars[0] = "Opel";
cout << cars[0];
// 现在输出 Opel 而不是 Volvo

遍历数组

你可以使用 for 循环遍历数组元素。

以下示例输出 cars 数组中的所有元素:

示例

cpp 复制代码
string cars[5] = {"Volvo", "BMW", "Ford", "Mazda", "Tesla"};
for (int i = 0; i < 5; i++) {
  cout << cars[i] << "\n";
}

这个示例输出每个元素的索引和其值:

示例

cpp 复制代码
string cars[5] = {"Volvo", "BMW", "Ford", "Mazda", "Tesla"};
for (int i = 0; i < 5; i++) {
  cout << i << " = " << cars[i] << "\n";
}

这个示例展示了如何遍历一个整数数组:

示例

cpp 复制代码
int myNumbers[5] = {10, 20, 30, 40, 50};
for (int i = 0; i < 5; i++) {
  cout << myNumbers[i] << "\n";
}

foreach 循环

还有一个"foreach 循环"(在 C++ 版本 11(2011)中引入),它专门用于遍历数组中的元素:

语法

cpp 复制代码
for (类型 变量名 : 数组名) {
  // 要执行的代码块
}

以下示例使用了"foreach 循环"输出数组中的所有元素:

示例

cpp 复制代码
int myNumbers[5] = {10, 20, 30, 40, 50};
for (int i : myNumbers) {
  cout << i << "\n";
}

省略数组大小

在 C++ 中,你不必指定数组的大小。编译器足够智能,可以根据插入的值的数量确定数组的大小:

cpp 复制代码
string cars[] = {"Volvo", "BMW", "Ford"}; // 三个数组元素

上面的示例等同于:

cpp 复制代码
string cars[3] = {"Volvo", "BMW", "Ford"}; // 也是三个数组元素

然而,最后一种方法被认为是"良好的做法",因为它将减少程序中错误的几率。

省略声明中的元素

还可以在不在声明时指定元素的情况下声明一个数组,并在以后添加它们:

示例

cpp 复制代码
string cars[5];
cars[0] = "Volvo";
cars[1] = "BMW";
// ...

最后

为了方便其他设备和平台的小伙伴观看往期文章:

微信公众号搜索:Let us Coding,关注后即可获取最新文章推送

看完如果觉得有帮助,欢迎点赞、收藏、关注

相关推荐
重庆小透明5 分钟前
力扣刷题记录【1】146.LRU缓存
java·后端·学习·算法·leetcode·缓存
博观而约取30 分钟前
Django 数据迁移全解析:makemigrations & migrate 常见错误与解决方案
后端·python·django
然我1 小时前
别再只用 base64!HTML5 的 Blob 才是二进制处理的王者,面试常考
前端·面试·html
小小小小王王王1 小时前
求猪肉价格最大值
数据结构·c++·算法
寻月隐君1 小时前
Rust 异步编程实践:从 Tokio 基础到阻塞任务处理模式
后端·rust·github
GO兔1 小时前
开篇:GORM入门——Go语言的ORM王者
开发语言·后端·golang·go
Sincerelyplz1 小时前
【Temproal】快速了解Temproal的核心概念以及使用
笔记·后端·开源
爱上语文1 小时前
Redis基础(6):SpringDataRedis
数据库·redis·后端
Lemon程序馆1 小时前
速通 GO 垃圾回收机制
后端·go
Aurora_NeAr2 小时前
Spark SQL架构及高级用法
大数据·后端·spark