前言
大家好!今天小编带大家认识C语言的分支语句,C语言中分支语句包括if语句和switch语句.下面我将从以下几个方面来介绍这两个分支语句.
1.分支语句的语法形式
2.用分支语句实现代码
正文
介绍之前先介绍一下C语言中表示真假的知识点(下面会遇到):在C语言中0表示假,非0表示真.
一.if语句
1.if语句的语法形式第一种
1 if(表达式)
2 语句
若表达式为真,则执行语句,表达式为假,则结束语句.
代码示例:输入一个整数,判断是否为偶数
#include <stdio.h>
int main()
{
int num = 0;
scanf("%d",&num);
if(num % 2 == 0)
printf("%d 是偶数\n",num);
return 0;
}
2.if的语法形式第二种
1 if(表达式)
2 语句1
3 else
4 语句2
如:上面的代码可以改为,输入一个整数,判断其是否为奇数,若为奇数则打印奇数,否则打印偶数
#include <stdio.h>
int main()
{
int num = 0;
scanf("%d", &num);
if (num % 2 != 0)
printf("%d是奇数", num);
else
printf("%d是偶数", num);
return 0;
}
3.分支包含的语句
if和else默认只有一条语句,若要包含多条语句,则需要用{ }括起来,此{ }所包含的内容称为代码块或复合语句.
如以下代码:
#include <stdio.h>
int main()
{
int age = 0;
scanf("%d", &age);
if (age > 18)
{
printf("成年了\n");
printf("可以谈恋爱");
}
else
{
printf("未成年\n");
printf("不可以谈恋爱");
}
return 0;
}
4.if语句的嵌套
嵌套,顾名思义就是一个包含一个,在if语句中有if嵌套if,else嵌套if,比如下面两个代码.
else嵌套if
#include <stdio.h>
int main()
{
int i = 0;
//输入
scanf("%d", &i);
if (i == 0)
printf("输入数字是0\n");
else
{
if (i > 0)
{
printf("输入数字是正数\n");
}
else
{
printf("输入数字是负数\n");
}
}
return 0;
}
if嵌套if
#include <stdio.h>
int main()
{
int i = 0;
//输入
scanf("%d", &i);
if (i > 0)
{
if (i % 2 == 0)
printf("%d 是偶数", i);
else
printf("%d 是奇数\n", i);
}
else
printf("%d 是0或负数");
return 0;
}
二.switch语句
1.switch语句是除if语句外的第二种分支语句,其语法形式如下:
1 switch (表达式)
2 {
case value1 : 语句
3 case value2 : 语句
4 case value3 : 语句
5 default : 语句
6 }
在switch语句中程序会根据表达式的不同值,执行相应的case分支,若找不到相应的值,则执行default分支,即结束运行
注意:
1.switch语句中表达式必须是整型表达式
2.case后面的值也必须是整型常量表达式
3.写代码时case和后面的数字之间必须有空格(若没有空格,编译器会将case和其后面的常量作为一个整体,在代码运行时编译器就会报错)
4.每一个case语句执行完后,若想跳出循环,须在case后加一个break
2.switch语句中case和default的顺序
对于case和default的顺序C语言没有严格的要求,只要它们的顺序满足实际要求即可,只是为了方便阅读代码,我们一般将default放在case后面
3.switch中break的作用
在switch语句中break起跳出循环的作用,并且break起到真正实现分支的作用,比如以下两个代码就可以很好的体现break的作用
在第一个代码中没有break,因此程序从第一个语句执行一直到最后一个语句完,而第二个代码中有break,这会让代码执行完一个语句后就跳出switch语句.
4.switch中的default
在switch语句中我们可能会遇到此种情况,即switch后面的表达式的值没有相应的case与之相匹配,这时我们有两种办法:
1.不做处理
2.在switch语句中加入default子句
比如用代码打印星期一至星期日时,若输入值不是1-7中的值时,就执行default语句.代码如下:
对于switch和break子句,不一定非要用,具体要根据实际情况看需不需要用
总结
以上就是小编总结的C语言的分支语句,感谢阅读,若有错误还请多多指教,大家一起讨论