一.什么是分支语句?
首先我们来了解一下什么是分支语句,分支语句字面意思很好理解,就是给你几条路让你走,选择满足自身条件适合你自己的路。在C语言中分支语句分为两种,分别是if语句和while语句,下面我会给大家一一介绍。
1.if分支语句
if分支语句的逻辑很好理解,就像过年回家一样,买到了火车票坐火车回家,买到飞机票坐飞机回家,实在不行腿着回家。
1.//if语句语法
2.if(表达式)
3.{运行语句}
值得注意的是:当if里的表达式满足条件时才会执行里面的语句,下面我给大家写一段代码演示一下
#include<stdio.h>
int main ()
{
int a = 5;
if(a < 10)
{
printf("都多余了熬");
}
if(a > 10)
{
printf("别说熬");
}
return 0;
}
如果我们把表达式的判断语句写相同了会发生什么呢?
我们会发现编译器并没有报错,而是接下来继续执行,所以在写if语句的时候要细心一点
1.1if和else分支语句的介绍以及使用说明
上面在介绍if语句的时候提到过,if语句无非就是几种选择,总归要选择一个,那我们怎么实现呢?这时候就要用到else了,下面我来提供一段代码方便大家更好的理解,还是用现代最年轻将军的名言
#include<stdio.h>
int main()
{
int a = 11;
if (a < 10)
{
printf("我一个飞踢\n");
}
else
{
printf("抱拳了老铁们\n");
}
return 0;
}
这时候我们发现当a=11时并不满足a<10这个条件,所以我们会执行else的语句,也就是说我要么执行“我一个飞踢”要么执行“抱拳了老铁们”,满足哪个条件执行哪个。我们还可以运用&(并且)和||(或者)来丰富我们的判断语句
#include<stdio.h>
int main()
{
int b = 20;
int a = 11;
if (a > 10&&b==20)
{
printf("我一个飞踢\n");
}
else
{
printf("抱拳了老铁们\n");
}
return 0;
}
&(并且)代表着两个条件都必须满足 ||(或者)只满足其中一个就可以
int main()
{
int b = 20;
int a = 11;
if (a > 10||b>20)
{
printf("我一个飞踢\n");
}
else
{
printf("抱拳了老铁们\n");
}
return 0;
}
2.1if和else的两种书写方法
讲完了上述的内容,只是其中一种if和else的用法。大家肯定好奇,那我要多重判断怎么办,那我就给大家引入另一种if和else的用法,直接给老铁们上代码!
include<stdio.h>
int main()
{
if(表达式)
{语句}
else if(表达式)
{语句}
else
{语句}
return 0;
}
.......
在这里我们可以看出if语句有很多分支,就给了我们更多来优化代码的机会,当然上述代码只写了三个分支,如果大家需要可以用else if()写更多的分支,但要注意的是最后一个分支是else来结束的。这里也给大家来几个例子:
#include<stdio.h>
int main()
{
int a = 11;
if (a < 10)
{
printf("我一个飞踢\n");
}
else if(a>10)
{
printf("抱拳了老铁们\n");
}
else if (a == 10)
{
printf("啥也不是");
}
else
{
printf("耶呼粘苞米了!");
}
return 0;
}
在这里判断了a是大于10的所以输出了“抱拳了老铁”。学到了这里相信大家对C语言中的if语句有了一定的了解,那我们接下来就进入我们另一个分支语句,switch分支语句。
2. switch分支语句
switch分支语句与if分支语句的用法有很大的区别,但是本质都是分支语句,分支语句本就是体现我们生活中做各种各样选择的语句,所以switch分支语句大家也可以理解为做出的选择,如果满足我的条件就会做出相应的选择。废话不多说,直接上代码!
int main()
{
switch(表达式)
{
case 情况1:
语句;
case 情况2:
语句;
case 情况3:
语句;
}
return 0;
}
include<stdio.h>
int main()
{
int i = 0;
switch (i)
{
case 1:
printf("篮球");
break;
case 2:
printf("唱跳");
break;
case 3:
printf("rap");
break;
case 0:
printf("小黑子");
break;
}
return 0;
}
需要注意的是switch分支语句中的判断是表达式的返回值,这里我的i是等于0的所以它会执行case 0:下面的语句。switch中的case是不要求顺序的可以在任意位置,如图所示。
2.1 switch分支语句中的break
在介绍switch分支语句的时候大家有没有发现,我在每一个情况的语句下都加了一个break,先不介绍为什么加break我们来看一下如果不加会发生什么吧,直接上代码!
int main()
{
int i = 1;
switch (i)
{
case 1:
printf("篮球\n");
case 2:
printf("唱跳\n");
case 3:
printf("rap\n");
case 0:
printf("小黑子\n");
}
return 0;
}
为了方便大家观察代码输出信息,我把i的值改成了1。这里我们发现当switch分支语句中没有break的时候,他会在执行完符合条件的语句之后继续往后执行,把下面的程序全都执行一遍,直到switch情况全部执行完毕,因为我刚才把case 0:放在后面,当i等于0的时候直接执行case 0:的语句,case 0:下面没有情况了所以只打印了case 0:的语句,这也就是为什么我把i的值改成了1。所以大家在写switch语句的时候千万别忘了break哦。
2.2 switch中的default
default大家可以理解成if语句里面的else,当我以上情况都不符合时,就会执行default的语句,这里直接给老铁们上代码!
int main()
{
int i = 5;
switch (i)
{
case 1:
printf("篮球");
break;
case 2:
printf("唱跳");
break;
case 3:
printf("rap");
break;
case 0:
printf("小黑子");
break;
default:
printf("坤坤");
break;
}
return 0;
}
这里我们发现i=5了,下面的哪种情况都不符合,所以我会执行default语句。值得注意的是,default语句也是可以在任意位置,可以在第一个随你喜欢,但是default也要加break不然如果default在第一个的话语句执行完了还会接着往下执行的
总结
通过这篇文章相信大家对C语言中的分支语句有了一个大概的了解,其实分支语句就是为了解决我们生活中面临的种种选择,只是用代码来体现出来了,我们在生活中会做出这样那样的选择,例如:我这个月的生活费只剩一百块钱了,但距离下个月发生活费还有十天,我该如何度过这十天,是天天出泡面,还是一个馒头分两天吃,这样的选择。最后烂笔头不如动手敲,希望大家看完这篇文章自己动手实践一下,祝愿天下学子学有所成!