C语言if语句while与for循环
if语句
什么是if语句
条件判断
如果… ,那就…
最基础的条件判断语句
基本格式
if后不需要加分号
1 | if (条件) |
赋值符号与比较符号
赋值:a = 1
比较:a == 1
if语句中用到的是 ==
什么是if - else语句
如果(if)… 就…
否则(else)…
基本格式
if后要紧接着else
1 | if (条件) |
if - else if语句
如果(if)… 就…
如果(else if)… 就…
此处可以多个else if
否则(else)…
理解
程序从上到下执行,进行if判断,如果都不满足,则会输出最后的else。
注意:条件一定是互相不包括的
if-else if与多个if的区别
if-else if: 如果判定成功则跳过下面的所有else if和else,直接输出结果。
多个if: 从上到下依次进行判定,上方的赋值可以被接下来的if接收。
if嵌套
从外层向内层逐层判断。
注意缩进。
很好理解这里就不展开了。
逻辑运算符
大小
| 符号 | 含义 |
|---|---|
< |
小于 |
> |
大于 |
== |
等于 |
<= |
小于等于 |
>= |
大于等于 |
与、或、非
| 符号 | 含义 |
|---|---|
&& |
与(两者同时成立) |
|| |
或(其中一个成立) |
! |
非(不成立) |
!= |
不等于 |
‘非’不经常用,经常用’不等于’
演示
1 | if (i == 5 && j == 5) |
while循环
一直循环执行,直到不满足条件。
格式
1 | while (循环条件) |
自增语句
- i++ : 先执行相应操作,再自增1
- ++i : 先自增1,再执行相应操作
1 | // 结果:a=0 b=1 |
for循环
注意:不强制要求定义计数器 —— 计数器只是for循环最常用的写法
格式
1 | for (初始化表达式; 条件表达式; 更新表达式) |
- 初始化表达式:仅在循环开始前执行 1 次
- 条件表达式:成立则执行循环
- 更新表达式:在每次循环体执行完毕后执行
- 计数器本质是:初始化子句定义变量、条件子句判断数值、更新子句自增 / 自减 —— 这只是三个子句的 “常用组合”,而非唯一组合。
示例
1 | for (int i = 0; i < 7; i++) |
注意事项
- 大括号内的程序作为循环执行的程序
- 如果没有大括号,只执行一行程序(尽量不要这么写)
- for循环内定义的计数器只有循环内能用
无限循环与break
无限循环
用一个永远成立的条件实现永不跳出的循环
如:while(1 < 2)
是单片机里必备的部分
常见表达形式:while(1)
break
可以使用break语句跳出循环
只能跳出一层循环
常用于跳出无限循环
普通循环不常用break跳出
普通循环应当用循环条件来判断
循环的嵌套
!程序从上到下依次执行!
当未跳出小循环时,不执行大循环。
大循环每次执行到小循环时,都会再次判断小循环成立条件。
do-while循环
先执行循环内的程序,再判断是否符合循环条件,若不符合条件就不进入第二次循环。
也就是说循环内代码不管符不符合循环条件,至少都会被执行一次。
单片机中不常用,认识即可。
注意最后的分号
示例
1 | scanf("%d", &i); |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 墨深的Blog!
评论







