cc的c++复习之路(视频教程在最后)
因为今年打算考一些竞赛,所以要复习一下之前学习过的知识
今天就复习多重循环
知所周众,循环一般是 for&int&while,一般来说用于做一些简单的循环操作,那我们把一段循环放入另一端内容中,就可以成为循环嵌套,例如
for (int i = 1; i <= n; i++) { //外层循环
for (int j = i; j <= m; j++) { //内层循环
cout << i << " " << j << endl;
}
}
我们都知道,循环中大括号里是循环体,也就是我们要做的事情,那么这件事情我们就要做n次,那我们来假设i=1,就能得出以下的结果
1 1
1 2
1 3
...
1 m
这个时候内层循环做完一遍,回到外层循环,外层循环开始进入下一步,i从1变成了2,就会输出
2 2 2 3 2 4 ... 2 m
这就是循环嵌套执行的过程。
嵌套注意事项
使用循环嵌套时,内层循环和外层循环的循环控制变量不能相同。
循环嵌套结构的书写,最好采用“右缩进”格式,以体现循环层次的关系。
尽量避免太多和太深的循环嵌套结构循环嵌套可以帮助我们解决很多问题,在 c++ 语言中经常被用于按行列方式输出数据。
多重循环并不限制循环语句的使用,可以两重循环都是for循环,也可以for和while混用。

我们来做一道题好了
请问这段程序运行后的结果是什么
#include <bits/stdc++.h>
using namespace std;
int main()
{
int i, b, k = 0;
for (i = 1; i <= 5; i++)
{
b = i % 2;
while (b-- >= 0)
k++;
}
cout << k << "," << b;
}
答案为 8,-2

作用域
不同的循环中,如果定义的值是循环内进行的定义,那么这个值(字母)就只在这一段循环内起作用,如果在别的循环内使用,并不会关联到这段循环中的同名称值,且需要重新进行定义。
