C语言入门(6):分支语句

前情回顾

在之前的博客中我们简单的讲了一下printf函数和scanf函数的用法以及运算符的使用,在能够掌握这些功能以后,基础的输入—运算—打印结构,已经逐渐无法满足我们编写程序的需求,那么在这一期博客,我们来详细讲一下C语言当中我们会用到基础架构以及与其对应的代码格式。

这里是嘉峪关的苏洵的C语言学习心得,让我们开始今天的学习。

1.分支

知周所众,就像我们之前博客C语言入门(4):命名,输入(scanf)和打印(printf)中所说的那样,当我们输入一个值的时候,程序能够根据这个值的不同,反馈出来不同的内容才是众多app吸引我们的意义所在。

在这个时候,我们引入了分支函数,它能让程序这个本来从头到尾的河流出现不同的分支,给原本死气沉沉的程序注入一分活力。接下来我们来详细讲一下C语言当中,到底有哪些函数能够实现分支,以及他们的特点和格式分别是什么。

1.1 if语句

if函数,顾名思义,就是一个表示“如果”含义的语句。同学们,对于“如果”我们经常听老师说这是一个条件语句。而条件语句的句式一般分为两个部分,一个部分是条件,另一部分是结果。

举个例子:如果我有百万粉丝,我就每天发一篇博客。

在这里我有百万粉丝就是一个条件,如果这个条件完成了,那么我就会输出每天发一篇博客这个结果,反之如果我没有百万粉丝,那么自然什么都没有。

程序也是同理:


int fans=1000000;

if(fans=1000000)

{

printf("每天发一篇博客");

}


像上面,我们先是定义了一个变量——fans(粉丝),然后接着我们用fans的数量进行判断,括号里的就是条件,如果我们有一百万粉丝,那么就执行大括号里的程序,反之则不执行。

那么有同学就要问了,那如果我想把失败的结果也输出一个反馈是不是还要写一个if语句呢?当然不是的,这个时候我们就要用到else语句了,让我们接着看。

1.2 else语句

很多时候就像我们所说的那样,就算失败了你也要给我个回应嘛,这个时候我们就要用到else语句了。

还是刚才那个例子:如果我有百万粉丝,我就每天发一篇博客,不然我就一星期发一篇。

如果把这个换成C语言来说的话


int fans=1000000;

if(fans=1000000)

{

printf("每天发一篇博客");

}

else

{

printf("一星期发一篇");

}


大家可以发现在这里,不然后面的内容被放在了else后面的大括号里面,这个就是else的写法。当if()里的内容成立的时候就打印if后面的大括号里的内容,不然就打印else后面大括号里的内容。但是需要注意的是,有的时候你不只有一个if,而每个else语句遵循的是就近原理,是听从最近的一个if语句。

当然很多时候事情并不会这么简单。一件事情也不能单纯的分为成功或者失败。所以这个时候我们就要用到else if语句。

1.3 else if语句

某种意义上else if语句就是else 和 if的结合体,它的作用是在if判定失败以后给失败的值再次判定筛选,还是刚刚的例子:

如果我有百万粉丝,我就每天发一篇博客,不然我就一星期发一篇。但是如果我有10万粉丝,我就三天发一篇。


int fans=1000000;

if(fans=1000000)

{

printf("每天发一篇博客");

}

else if(fans=100000)

{

printf("我三天发一篇");

}

else

{

printf("一星期发一篇");

}


像是这样,括号里的是条件,而大括号里的是条件满足后需要执行的内容,其实else if和if的用法及其相近,但是与else不同,一个if后面可以跟着多个if语句,但是只能有一个else语句。

1.4 switch语句

switch语句可以说是另一种版本的if语句,不过用switch语句能够更加方便的实现多个分支,switch语句的实现方法是这样的:


switch(执行语句)

{

case  结果判断:

     执行语句;

     break;

}


同学们可能看不懂上面我写的,我打个比方,我想知道今天是星期几

我可以这么写


switch(day)

{

case  1:

     printf("星期一");

     break;

case  2:

     printf("星期二");

     break;

case  3:

     printf("星期三");

     break;

case  4:

     printf("星期四");

     break;

case  5:

     printf("星期五");

     break;

case  6:

     printf("星期六");

     break;

case  7:

     printf("星期天");

     break;

}


当switch后面括号输出结果后,这个结果会在下面所有case历数一遍,直到找到匹配的值,或者到最后一个。而break的作用是在历数到需要的答案,执行后跳出历数,不然即使你已经知道今天是星期一,程序还是会从1匹配到7,而不是匹配到1以后就跳出。

那么到这里,我们基本上已经清楚分支语句的用法。这期博客也进入尾声。

我是嘉峪关的苏洵,一个致力于将自己学习C语言程序心得分享给更多人的程序小白,感谢大家看到这里,我们下一期博客再见,在下一期博客当中,我会详细介绍C语言当中的循环语句,如果感兴趣的话可以点点关注,让我们一起学习C语言。

每日摘抄


对于未来真正的慷慨,

是把一切都献给现在。

阿贝尔-加缪《反抗者》


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值