第2课:C++ for循环

首页 C++课程 入门课程 第1课 第2课

循环结构简介

在编程中,循环结构用于重复执行一段代码,直到满足特定条件为止。C++提供了几种循环结构,其中for循环是最常用的一种,特别适合已知循环次数的情况。

学习目标

  • 理解for循环的基本概念
  • 掌握for循环的语法结构
  • 学会使用for循环解决实际问题
  • 理解循环的执行流程

for循环的语法

for循环的语法结构如下:

for (// 初始化表达式
     // 条件表达式
     // 更新表达式) {
    // 循环体:要重复执行的代码
}

更具体的形式:

for (int i = 0; i < 10; i++) {
    // 循环体代码
}

for循环的执行流程

  1. 执行初始化表达式(只执行一次)
  2. 检查条件表达式:
    • 如果条件为真,执行循环体
    • 如果条件为假,退出循环
  3. 执行更新表达式
  4. 回到步骤2,继续循环

for循环示例

示例1:输出1到10的数字

让我们编写一个程序,使用for循环输出1到10的数字:

#include <iostream>

using namespace std;

int main() {
    for (int i = 1; i <= 10; i++) {
        cout << i << " ";
    }
    cout << endl;
    return 0;
}

程序输出:

1 2 3 4 5 6 7 8 9 10

示例2:计算1到100的和

使用for循环计算1到100的整数和:

#include <iostream>

using namespace std;

int main() {
    int sum = 0;
    
    for (int i = 1; i <= 100; i++) {
        sum += i;  // 等同于 sum = sum + i;
    }
    
    cout << "1到100的和是:" << sum << endl;
    return 0;
}

程序输出:

1到100的和是:5050

示例3:输出乘法表

使用嵌套for循环输出9x9乘法表:

#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 << " ";
        }
        cout << endl;
    }
    return 0;
}

for循环的变体

变体1:省略初始化表达式

如果变量已经在循环外初始化,可以省略初始化表达式:

#include <iostream>

using namespace std;

int main() {
    int i = 0;
    for (; i < 5; i++) {
        cout << i << endl;
    }
    return 0;
}

变体2:省略更新表达式

更新表达式也可以在循环体内执行:

#include <iostream>

using namespace std;

int main() {
    for (int i = 0; i < 5;) {
        cout << i << endl;
        i++;  // 在循环体内更新变量
    }
    return 0;
}

变体3:无限循环

如果省略条件表达式,循环将无限执行:

#include <iostream>

using namespace std;

int main() {
    int count = 0;
    for (;;) {  // 无限循环
        cout << "循环次数:" << count << endl;
        count++;
        if (count >= 5) {
            break;  // 使用break语句退出循环
        }
    }
    return 0;
}

课后练习

完成以下练习,巩固所学知识:

练习1

编写一个C++程序,使用for循环输出1到50中所有的偶数。

输入样例:
无输入
输出样例:
2 4 6 8 10 12 14 16 18 20 22 24 26 28 30 32 34 36 38 40 42 44 46 48 50

练习2

编写一个C++程序,使用for循环计算1到100中所有奇数的和。

输入样例:
无输入
输出样例:
1到100中所有奇数的和是:2500

练习3

编写一个C++程序,使用for循环输出以下图案:

输入样例:
无输入
输出样例:
* ** *** **** *****

提示

  • 使用取模运算符%来判断一个数是奇数还是偶数
  • 嵌套循环可以用来创建复杂的图案
  • 注意循环变量的初始化和条件判断
  • 可以使用cout多次输出同一个字符来创建图案
返回课程列表 下一课