0. 概述
-
顺序结构:按照书写顺序
从上至下
执行每一条语句
-
分支结构:对
给定的条件
进行判断
,根据判断结果
来决定执行哪一段代码
-
循环结构
-
定义:在
给定条件
成立
的情况下,反复执行
某一段代码
-
组成
1. 控制变量:用来 标识 循环什么时候 继续, 什么时候 退出 2. 控件条件:循环 继续 和 退出 的主要依据 3. 循环体:重复执行的代码块 4. 操作控制变量模块:让 控制条件 趋近于 假
-
1. 分支结构
- if:像一棵树
分散
的树枝
- 概念:当
条件表达式
为真
时,就会执行if
后面大括号
中的内容 - 分类
- 单分支判断
int age = 19; if (age > 18) { printf("开网卡\n"); } if (age > 30) printf("迎娶白富美\n");
- 双分支判断
int age = 20; if (age > 18) { printf("开网卡\n"); } else { printf("喊你妈来\n"); } if (0) printf("A\n"); else printf("B\n");
- 多分支判断
int day = 6; if (day == 1) { printf("熟悉环境\n"); } else if (day == 2) { printf("熟悉同事\n"); } else if (day == 3) { printf("熟悉代码\n"); } else if (day == 4) { printf("编写代码\n"); } else if (day == 5) { printf("合并代码\n"); } else { printf("睡觉ing...\n"); }
- if 嵌套
int number = 6; if (number > 5) { if (number < 10) { printf("一个 5 ~ 10 之间的数\n"); } }
- 单分支判断
- 概念:当
- switch:常与
枚举
联用- 概念:匹配
整数值
,执行该整数值后面
的内容 - 形式
switch (表达式) { case 整数; 语句; break; case 整数; 语句; break; ... default; 语句; break; }
- 注意
1. default 可以省略 2. 结束 switch 语句 (1) 遇到 break (2) 执行到结束大括号 } 3. 只要满足一个 case,那么后面所有的 case 和 default 都会失效
- 概念:匹配
2. 循环结构
- while:侧重于
计算数值增量
- 概念:当
条件表达式
为真
时,就会执行while
后面大括号
中的内容 - 形式
while (条件表达式) { 语句块; }
- 概念:当
- do while:侧重于
用户输入校验
- 概念:
无论
条件表达式是否满足,do while 先执行一次
循环体 - 形式
do { 语句块; } while (条件表达式);
- 概念:
- for:侧重于
遍历一个集合
- 概念:当
控制条件
为真
时,就会执行循环体
- 形式
for (初始化控制变量; 控制条件; 操作控制变量模块) { 语句块; }
- 执行流程
(1) 执行 "一次" 初始化控制变量 操作 (2) 判断控制条件 "是否" 成立;若条件成立,就会执行循环体;若不成立,就结束循环 (3) 循环体执行完毕后,执行 "操作控制变量模块",然后再次判断条件,"重复" 上述过程
- 概念:当
3. 控制转移
- return:表示从
当前执行流
返回
到上层执行流
继续
执行 - break:会
立刻结束
整个控制流
的执行
- continue:让一个
循环体
立刻停止
本次循环
,重新开始
下次
循环