流程控制
一般分为:顺序结构、分支结构与循环结构
任何一个程序都可以是这三种结构的组合。
在介绍之前,需要补充几个知识点:
首先就是构造的条件:
1.C语言提供了6种关系运算符:
(1) 关系运算符的优先级低千算术运算符。
(2) 关系运算符的优先级高千赋值运算符。
C语言中关系运算符的结果只有2种:0和1。
0代表假,1代表真。
在C语言中不存在布尔类型,关系运算的结果用整型类型保存。
2.逻辑运算
与:&&
规则:一假则假
表达式1 && 表达式2
或:||
规则:一真则真
表达式1||表达式2
非:!
规则:真假相对
!(表达式)
&&和||具有截断特性(短路特性)
当表达式1为假时,&&操作就不再进行下去,||也相似。
下面图片是一张逻辑运算的真值表
接下来,介绍一下if语句
形式1:
if (表达式) //表达式 做判断的条件
{
语句
}//复合语句
含义:
首先,判断 "表达式"?
若表达式为真,则执行语句,
语句执行完,表示if语句结束,程序继续往下
若表达式为假,不执行语句,表示if语句结束,程序继续往下
形式2:
if (表达式)
{
语句1
}else
{
语句2
}
含义:
首先 判断"表达式"
若为真:
执行 ”语句1"
语句1 执行完,表示if语句结束,程序继续往下
若为假:
执行 ”语句2"
语句2 执行完,表示if语句结束,程序继续往下
形式3: 多分支语句
if (表达式1) //注意: 不能加分号
{
语句1
}else if (表达式2) //注意: 不能加分号
{
语句2;
}else if (表达式3)//注意: 不能加分号
{
语句3;
}else if (表达式n)//注意: 不能加分号
{
}else
{
}
含义:
判断 "表达式1"
真
执行 "语句1" 语句1 执行完,表示if语句结束,程序继续往下
假
判断"表达式2"
真
执行 "语句2" 语句2 执行完,表示if语句结束,程序继续往下
假
判断"表达式3"
真
执行 "语句3" 语句3 执行完,表示if语句结束,程序继续往下
假
...
判断"表达式n"
真
执行 "语句n" 语句n 执行完,表示if语句结束,程序继续往下
假
执行 else后面语句 ,执行完,程序继续往下
注意:
1.不存在单独的else语句 ,else出现一定有一个if与之对应
2.else 与 if匹配规则
一定从最里面开始匹配
else 与 最近 前面一个if匹配
条件运算
表达式1 ? 表达式2 : 表达式3
含义:
表达式1 ? --是真 还是 假
真 ,执行表达式2
假 ,执行表达式3
switch语句
switch(表达式) //整型表达式
{
case 常量表达式: //1+b不行
语句;
break;
case 常量表达式:
语句;
break;
case 常量表达式:
语句;
break;
default: //默认
语句;
break;
}
含义:
求解 "表达式"
根据 结果 ,匹配下面case后面的值
匹配上后,
则执行对应case下的语句,
直到遇到了break 或者是switch 右} (花括号)
注意:
1.switch 后表达式需要是一个整型表达式
2.case后面是,常量表达式,不能出现变量