237 lines
3.9 KiB
Markdown
237 lines
3.9 KiB
Markdown
|
# 3. 程序基本语句
|
|||
|
|
|||
|
程序是由一条条“语句”组成的,每条语句都有其明确的功能,例如输入、输出、赋值、判断、循环等。掌握基本语句,是学会编写程序的第一步。
|
|||
|
|
|||
|
---
|
|||
|
|
|||
|
## 📥输入、输出与赋值语句
|
|||
|
|
|||
|
### 1. 输入语句
|
|||
|
|
|||
|
用于从用户输入中获取数据。
|
|||
|
|
|||
|
- **cin(C++)**
|
|||
|
```cpp
|
|||
|
int a;
|
|||
|
cin >> a; // 读取一个整数并存入变量 a 中
|
|||
|
```
|
|||
|
多个变量也可连续读取:
|
|||
|
```cpp
|
|||
|
int x, y;
|
|||
|
cin >> x >> y;
|
|||
|
```
|
|||
|
|
|||
|
- **scanf(C)**
|
|||
|
```c
|
|||
|
int a;
|
|||
|
scanf("%d", &a); // %d 表示读取一个整数
|
|||
|
```
|
|||
|
|
|||
|
多变量读取:
|
|||
|
```c
|
|||
|
int x, y;
|
|||
|
scanf("%d %d", &x, &y);
|
|||
|
```
|
|||
|
|
|||
|
### 2. 输出语句
|
|||
|
|
|||
|
用于将数据展示到终端(控制台)上。
|
|||
|
|
|||
|
- **cout(C++)**
|
|||
|
```cpp
|
|||
|
int a = 10;
|
|||
|
cout << "a = " << a << endl;
|
|||
|
```
|
|||
|
|
|||
|
- **printf(C)**
|
|||
|
```c
|
|||
|
int a = 10;
|
|||
|
printf("a = %d\n", a);
|
|||
|
```
|
|||
|
|
|||
|
### 3. 赋值语句
|
|||
|
|
|||
|
将右侧的值赋给左侧变量,是程序中最基本的操作之一。
|
|||
|
|
|||
|
```cpp
|
|||
|
int a;
|
|||
|
a = 5;
|
|||
|
a = a + 10; // 赋值时,先计算右边的值
|
|||
|
```
|
|||
|
|
|||
|
### 4. 复合语句
|
|||
|
|
|||
|
复合语句即“语句块”,由一对花括号 `{}` 包裹起来的多条语句,常用于条件或循环控制中:
|
|||
|
|
|||
|
```cpp
|
|||
|
{
|
|||
|
int a = 1;
|
|||
|
int b = 2;
|
|||
|
cout << a + b << endl;
|
|||
|
}
|
|||
|
```
|
|||
|
|
|||
|
---
|
|||
|
|
|||
|
## 🔀选择结构语句
|
|||
|
|
|||
|
程序根据条件不同,执行不同的操作路径,这类语句称为“选择结构”。
|
|||
|
|
|||
|
### 1. if 语句
|
|||
|
|
|||
|
用于根据条件判断是否执行某些语句。
|
|||
|
|
|||
|
```cpp
|
|||
|
if (a >= 60) {
|
|||
|
cout << "及格";
|
|||
|
} else {
|
|||
|
cout << "不及格";
|
|||
|
}
|
|||
|
```
|
|||
|
|
|||
|
#### 多条件判断
|
|||
|
|
|||
|
```cpp
|
|||
|
if (score >= 90) {
|
|||
|
cout << "优秀";
|
|||
|
} else if (score >= 80) {
|
|||
|
cout << "良好";
|
|||
|
} else {
|
|||
|
cout << "继续加油";
|
|||
|
}
|
|||
|
```
|
|||
|
|
|||
|
### 2. switch 语句
|
|||
|
|
|||
|
适用于“固定选项”的多分支判断。
|
|||
|
|
|||
|
```cpp
|
|||
|
int op = 2;
|
|||
|
switch (op) {
|
|||
|
case 1:
|
|||
|
cout << "选项1";
|
|||
|
break;
|
|||
|
case 2:
|
|||
|
cout << "选项2";
|
|||
|
break;
|
|||
|
default:
|
|||
|
cout << "无效选项";
|
|||
|
}
|
|||
|
```
|
|||
|
|
|||
|
### 3. 多层条件语句(嵌套)
|
|||
|
|
|||
|
```cpp
|
|||
|
if (x > 0) {
|
|||
|
if (x % 2 == 0) {
|
|||
|
cout << "正偶数";
|
|||
|
} else {
|
|||
|
cout << "正奇数";
|
|||
|
}
|
|||
|
} else {
|
|||
|
cout << "非正数";
|
|||
|
}
|
|||
|
```
|
|||
|
|
|||
|
---
|
|||
|
|
|||
|
## 🔁循环结构语句
|
|||
|
|
|||
|
循环语句用于让程序重复执行某些操作。
|
|||
|
|
|||
|
### 1. for 语句(已知次数)
|
|||
|
|
|||
|
```cpp
|
|||
|
for (int i = 1; i <= 5; i++) {
|
|||
|
cout << i << " ";
|
|||
|
}
|
|||
|
```
|
|||
|
|
|||
|
结构包含三部分:
|
|||
|
- 初始化:`int i = 1`
|
|||
|
- 条件判断:`i <= 5`
|
|||
|
- 更新表达式:`i++`
|
|||
|
|
|||
|
### 2. while 语句(先判断再执行)
|
|||
|
|
|||
|
```cpp
|
|||
|
int i = 1;
|
|||
|
while (i <= 5) {
|
|||
|
cout << i << " ";
|
|||
|
i++;
|
|||
|
}
|
|||
|
```
|
|||
|
|
|||
|
若初始条件不成立,则一次都不执行。
|
|||
|
|
|||
|
### 3. do while 语句(先执行后判断)
|
|||
|
|
|||
|
```cpp
|
|||
|
int i = 1;
|
|||
|
do {
|
|||
|
cout << i << " ";
|
|||
|
i++;
|
|||
|
} while (i <= 5);
|
|||
|
```
|
|||
|
|
|||
|
不管条件如何,至少执行一次。
|
|||
|
|
|||
|
---
|
|||
|
|
|||
|
## 🔃多层循环语句(嵌套循环)
|
|||
|
|
|||
|
循环内部再嵌套一个循环,称为“多层循环”,适用于图形输出、二维数组、表格处理等。
|
|||
|
|
|||
|
### 示例:打印矩形
|
|||
|
|
|||
|
```cpp
|
|||
|
for (int i = 1; i <= 3; i++) {
|
|||
|
for (int j = 1; j <= 5; j++) {
|
|||
|
cout << "* ";
|
|||
|
}
|
|||
|
cout << endl;
|
|||
|
}
|
|||
|
```
|
|||
|
|
|||
|
输出:
|
|||
|
|
|||
|
```
|
|||
|
* * * * *
|
|||
|
* * * * *
|
|||
|
* * * * *
|
|||
|
```
|
|||
|
|
|||
|
### 示例:九九乘法表
|
|||
|
|
|||
|
```cpp
|
|||
|
for (int i = 1; i <= 9; i++) {
|
|||
|
for (int j = 1; j <= i; j++) {
|
|||
|
cout << j << "*" << i << "=" << j*i << "\t";
|
|||
|
}
|
|||
|
cout << endl;
|
|||
|
}
|
|||
|
```
|
|||
|
|
|||
|
输出:
|
|||
|
|
|||
|
```
|
|||
|
1*1=1
|
|||
|
1*2=2 2*2=4
|
|||
|
1*3=3 2*3=6 3*3=9
|
|||
|
...
|
|||
|
```
|
|||
|
|
|||
|
---
|
|||
|
|
|||
|
## 🧩 小结表
|
|||
|
|
|||
|
| 功能类别 | 相关语句 | 描述 |
|
|||
|
|----------|-----------|------|
|
|||
|
| 输入语句 | `cin`, `scanf` | 从用户获取数据 |
|
|||
|
| 输出语句 | `cout`, `printf` | 向屏幕输出数据 |
|
|||
|
| 赋值语句 | `=` | 设置变量的值 |
|
|||
|
| 条件语句 | `if`, `switch`, 嵌套 `if` | 根据条件决定执行路径 |
|
|||
|
| 循环语句 | `for`, `while`, `do while` | 实现重复执行 |
|
|||
|
| 多层循环 | `for` 嵌套 `for` 等 | 实现二维结构处理 |
|
|||
|
|