c语言有三大控制结构顺序结构、选择(分支)结构、循环结构
分支结构语句:
ifif~else
if~else if
switch
一、if语句
if语句有三种基本类型
(1)if(表达式)
语句作用:当表达式的值为真(非0),就执行语句
“表达式”:任意的C语言合法的表达式都可以
“语句”:
单语句:只有一条语句
复合语句:用 {} 把多条语句括起来eg:
int a=200, b=100;if(a<b)
{ // 出现的括号一定要成双成对
a = 250; // 代码缩进 一般缩进大小(四个空格)是一个 tab
printf("%a\n",a);
}编程建议:不管if后面是单语句,还是复合语句,请先写 {},再到里面补充语句
具有良好编程风格(2)if(表达式)
语句1
else
语句2作用:当表达式的值为真(非0)时,就执行语句1,否则就执行语句2
(3)if(表达式1)
语句1
else if(表达式2)
语句2
...
else if(表达式n)
语句n
else
语句n+1if~else if:用来把整个的条件域分多个连续的区间讨论
(4)if语句的嵌套:“条件里面分条件”
if()
if() 语句
else 语句
else
if() 语句
else 语句else匹配问题:
else 总是与它上面的最近的、未匹配(同级)的if语句匹配
二、switch语句(开关语句)
形式:
switch(表达式)
{
case 常量表达式1:
语句1
case 常量表达式2:
语句2
break;
...
case 常量表达式n:
语句n
default:
语句m
}(1)”表达式“的值必须为整数值(整型、字符型、枚举),即可以列举的值
(2)”常量表达式“的值页必须为整数值,且每个 case 后面的常量表达式的值
必须不相同。
(3)判断顺序是上到下,当某个case后面的常量表达式的值与switch的表达式的值
相同时,就会开打”开关“,会执行冒号后面的语句,直到有break语句就会提前
结束switch语句。否则就会轮到下一个case,且不会比较常量表达式的值就直
接执行冒号后面的语句。直到所有语句执行完毕。
(4)break 语句用来提前跳出switch语句。常用的用法时每个case后面都会有一个
break。
(5)当所有的case后面的常量表达式都不匹配,这时就会执行default后面的语句,
且也会打开”开关“。