第三章 三大结构 | 分支结构
if语句
语句结构
if (condition1 || condition2) { // input the function } else if (condition3 && condition4){ // input the function } else { // input the function }
关系运算符
运算符 | 名称 | |
---|---|---|
< | 小于 | |
<= | 小于或等于 | |
> | 大于 | |
>= | 大于或等于 | |
== | 等于 | |
!= | 不等于 | |
&& | 表示“and” | |
倘若我在condition
的位置上变成赋值语句,那会怎么样。
当赋0
时,返回假;当赋除0
以外的其他值时,返回真。
注意
- 无论如何,都要写
{}
,否则就会只运行if
的下一行语句。 else
的归属权:如果没有{}
,else
只与最靠近它的,且没有else
的if
匹配。不看对齐。
嵌套判断
就像下面这样的
if (condition_1) { if (condition_2) { // to do } else { // to do } } else { // to do }
意思就是无论if
的判断如何,还得要再执行一个if
,那么这就是嵌套
else
总是和最近的if
相匹配,缩进也不能暗示相匹配。
我们用翁凯老师的写的例子来说明
#include <stdio.h> int main() { int gameover = 0,count = 10; if (gameover == 0) if ( count > 20) printf("player A win"); else printf("player B win"); return 0; }
我们认为gameover
为0
,且count
大于20
的时候palyer A
获胜。
但结果是
player B win
也就是说,else
被当做是if ( count > 20)
的else
所以,无论如何,在if
和else
的后面都要敲{}
。
级联判断
形如
if (condition1 || condition2) { // input the function } else if (condition3 && condition4){ // input the function } else { // input the function }
switch-case语句
语句结构
switch(表达式){ case 常量表达式: 语句1; break; case 常量表达式: 语句2; break; default: // default是在前面情况找不到任何的匹配之后才会运行 语句; break; }
如果不写break
会怎么样,就像下面的代码
#include <stdio.h> int main() { for(int i=0;i<3;i++){ switch (i) { case 1: printf("%d",i); case 2: printf("%d",i); default: printf("%d",i); } } }
会返回011122
注意
- 如果不写
break
;,就会导致继续执行,不会跳出,而是会连续执行,如果有defult
,则也会跑到defult
。case
只是一个“站牌”,竖起一个入口而已。 - 这个
break
;只能跳出switch-case
用switch-case
的好处就是不用像if-else
,if-else
语句那样逐一判断。
本文来自博客园,作者:Mryan2005,转载请注明原文链接:https://www.cnblogs.com/Mryan2005/p/17872802.html
分类:
计算机大全 / 我与C语言
标签:
c语言
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 25岁的心里话
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现