1. 循环语句介绍
C++中的循环语句用于重复执行一段代码,常用的循环语句有三种:for循环、while循环和do-while循环。这三种循环语句可以根据需要选择使用,但是它们都需要满足循环的三个要素:循环条件、循环体和循环控制语句。
1.1 for循环
C++中的for循环语法如下:
for (初始化; 循环条件; 循环控制语句) {
// 循环体
}
其中,初始化部分包含对循环变量的初始化,循环条件部分是一个逻辑表达式,循环控制语句用于控制循环变量的变化。
for循环适合循环次数已知或可以预估的情况,可以精确控制循环变量的范围和变化方式。比如,可以用for循环来遍历一个数组:
int arr[] = {1, 2, 3, 4, 5};
for (int i = 0; i < 5; i++) {
cout << arr[i] << " ";
}
// 输出结果:1 2 3 4 5
在这个例子中,初始化部分定义了一个int类型的循环变量i,并将其赋值为0;循环条件部分是i < 5,表示当i小于5时继续循环;循环控制语句是i++,表示每次循环结束时i的值增加1。
1.2 while循环
C++中的while循环语法如下:
while (循环条件) {
// 循环体
}
其中,while关键字后面的括号中是循环条件,只有在循环条件为true时才会执行循环体。循环体执行完成后,再次判断循环条件,如果为true则继续执行,否则结束循环。
while循环适合循环次数不确定的情况,比如循环直到用户输入了一个指定字符:
char ch;
cout << "请输入字符q退出程序:" << endl;
cin >> ch;
while (ch != 'q') {
cout << "请继续输入字符:" << endl;
cin >> ch;
}
在这个例子中,while循环的循环条件是ch != 'q',即只要用户没有输入字符q,就继续循环。因为循环条件与用户的输入有关,所以不知道循环次数。
1.3 do-while循环
C++中的do-while循环语法如下:
do {
// 循环体
} while (循环条件);
do-while循环与while循环相比,只有一个小区别:它是先执行一次循环体,然后再检查循环条件,如果循环条件为true,则继续执行循环体。否则,结束循环。
与while循环相比,do-while循环至少执行一次循环体,因为循环条件检查是在循环体执行完之后才开始的。下面是一个使用do-while循环的例子:
int n = 0;
do {
n++;
cout << n << endl;
} while (n < 3);
在这个例子中,do-while循环的循环体输出变量n的值,然后将n的值加1,循环条件是n < 3。因为初始值n为0,所以至少会执行一次循环体,最后输出结果是:
1
2
3
2. 循环语句中的控制语句
除了循环条件和循环体之外,循环语句中还可以包含一些控制语句,用于控制循环的跳出、继续或者跳转。常用的控制语句有break、continue和goto。
2.1 break语句
break语句用于跳出当前循环,执行下一条语句。当程序执行到break语句时,无论循环条件是否成立,都会立即跳出循环。
下面是一个使用break语句的例子:
int i = 0;
while (true) {
i++;
if (i == 3) {
break;
}
cout << i << endl;
}
在这个例子中,使用while循环死循环,循环体内部先将变量i的值加1,然后判断如果i的值等于3,就执行break语句,跳出循环。因此,最后输出结果是:
1
2
2.2 continue语句
continue语句用于跳过当前循环中的剩余语句,直接执行下一次循环。当程序执行到continue语句时,会立即停止当前循环的执行,返回到循环头部进行下一次循环。
下面是一个使用continue语句的例子:
int arr[] = {1, 2, 3, 4, 5};
for (int i = 0; i < 5; i++) {
if (i == 2) {
continue;
}
cout << arr[i] << " ";
}
// 输出结果:1 2 4 5
在这个例子中,使用for循环遍历数组arr,如果循环变量i的值等于2,就执行continue语句,跳过本次循环中后面的代码,直接进行下一次循环。因此,数字3在输出结果中被跳过了。
2.3 goto语句
goto语句用于跳转到程序中的指定行,不能跨越函数。goto语句被认为是一种不好的编程方式,因为它会导致程序的结构变得松散,影响代码的可读性和可维护性。
下面是一个使用goto语句的例子:
int i = 0;
loop:
i++;
cout << i << endl;
if (i < 5) {
goto loop;
}
在这个例子中,先定义变量i并赋值为0,然后使用goto语句跳转到loop标签处,执行循环体内部的代码。在循环体内,先输出变量i的值,然后判断如果i小于5,就继续执行循环体,否则跳出循环。因此,最后输出结果是:
1
2
3
4
5
3. 总结
C++中的循环语句是代码重复执行的常用方式,常用的循环语句有for循环、while循环和do-while循环。这三种循环语句可以根据需求选择使用,但是它们都需要满足循环的三个要素:循环条件、循环体和循环控制语句。
除了循环条件和循环体之外,循环语句中还可以包含一些控制语句,用于控制循环的跳出、继续或者跳转。常用的控制语句有break、continue和goto。
需要注意的是,循环语句中的控制语句使用不当,容易导致代码的可读性和可维护性降低。因此,在编写循环语句时一定要谨慎使用控制语句,确保代码的清晰、简洁、易读。