C语言分支语句
一、if语句
1.语法形式
(1). if(表达式)
语句
当表达式成立(为真)时,语句执行,否则语句不执行
int main()
{
if (2)
printf("执行");
}
//在C语言中非零值表示为真,即可执行语句,零表示假,语句不执行
2.代码样例
例子:输入一个整数,判断其是否为奇数
int main()
{
int num = 0;
scanf_s("%d", &num);
if (num % 2 == 1)
printf("%d为奇数\n", num);
return 0;
}
二、if-else语句
1.语法形式
(1). if(表达式)
语句1
else
语句2
对表达式进行判断,表达式为真,执行语句1,否则,执行语句2
2.代码样例
#include <stdio.h>
int main() {
int b;
scanf_s("%d", &b);
if (b) printf("成功执行语句1");
else printf("表达式为假,执行语句2");
}
三、多判断语句的分支(if-elseif-else)
1.语法形式
(1). if(表达式)
语句1
else if(表达式)
语句2
……
else
语句n
按照顺序执行表达式直到表达式为真,若所有表达式都为假,即执行语句n
2.代码样例
#include <stdio.h>
int main() {
int b;
scanf_s("%d", &b);
if (b > 5) printf("b>5");
else if (b > 4) printf("b>4");
else if (b > 3) printf("b>3");
else printf("b<=3");
}
输出结果:
四、switch开关语句
1.语法形式
(1). switch(expression){
case value1: 语句1;break;
case value2: 语句2;break;
case value3: 语句3;break;
……
default : 语句n
}
根据expression不同的值,执行相应的case分支语句,若无相应的值,则执行default分值
ex:1.switch语句是一种特殊形式的if…else结构,可判断条件有多个结果情况
2.expression必须是整形表达式
3.value必须是整形常量表达式
2.代码样例
int main() {
int n = 0;
scanf_s("%d", &n);
switch (n % 3)
{
case 0: printf("%d为3的倍数", n); break;
case 1: printf("余数是1"); break;
case 2: printf("余数是2"); break;
}
}
//case语句之后需要加上break才可以跳出switch循环,否则将会按顺序执行
3.switch语句中的case和default
(1).当switch语句中所有case都没有相对应expression的值后,执行default语句
(2).default语句在switch中只能最后执行,与所在的顺序无关
但是按照代码书写习惯,通常将default语句放在最后处理