日志10
for循环
1. 基本概念与语法
for循环是C++中一种常用的循环结构,用于在已知循环次数的情况下重复执行一段代码。它的语法格式如下:
for (初始化表达式; 条件表达式; 更新表达式) {
// 循环体语句
}
初始化表达式:用于初始化循环控制变量,这个表达式只在循环开始时执行一次。例如,可以在这里定义一个整型变量并赋初值,如int i = 0;。
条件表达式:是一个布尔表达式,用于判断循环是否继续执行。只要这个表达式的值为true,循环就会继续。例如,i < 10表示只要i的值小于10,循环就会执行。
更新表达式:在每次循环体执行完之后执行,用于更新循环控制变量。例如,i++会使i的值每次增加1。
2. 执行流程
首先执行初始化表达式。
然后判断条件表达式的值,如果为false,则直接跳过循环体,循环结束;如果为true,则执行循环体中的语句。
循环体执行完后,执行更新表达式,然后再次判断条件表达式的值,如此反复,直到条件表达式的值为false。
3. 例子:计算1到10的整数之和:
#include <iostream>
using namespace std;
int main() {
int sum = 0;
for (int i = 1; i <= 10; i++) {
sum += i;
}
cout << "1到10的整数之和为:" << sum << endl;
return 0;
}
在这个例子中,初始化表达式int i = 1定义了循环控制变量i并初始化为1。条件表达式i <= 10确保循环会执行10次。更新表达式i++使i在每次循环后增加1。循环体sum += i;用于将i的值累加到sum中。
4. 嵌套for循环
for循环可以嵌套使用,用于处理二维或多维数据结构等情况。
例如,打印九九乘法表:
#include <iostream>
using namespace std;
int main() {
for (int i = 1; i <= 9; i++) {
for (int j = 1; j <= i; j++) {
cout << j << "×" << i << "=" << i * j << "\t";
}
cout << endl;
}
return 0;
}
注释:外层for循环控制行数(从1到9),内层for循环控制每行乘法算式的个数(从1到当前行数)。通过嵌套的for循环可以很方便地生成九九乘法表的输出格式。
5. for循环的变化形式
省略部分表达式:for循环的初始化表达式、条件表达式和更新表达式都可以省略,但分号不能省略。例如,当已经在循环外初始化了变量,且更新变量的操作在循环体内部进行时,可以省略初始化表达式和更新表达式。不过这种情况要注意避免出现死循环。
使用逗号表达式:在初始化表达式和更新表达式中可以使用逗号表达式来执行多个操作。例如,for (int i = 0, j = 10; i < j; i++, j--),这里同时初始化了两个变量i和j,并且在每次循环后分别对i进行递增和对j进行递减操作。