C语言之分支循环语句

 一、什么是语句?

C语言的语句可以分为五类

1.表达式语句

2.函数调用语句

3.控制语句

4.复合语句

5.空语句

控制语句用于控制程序执行流程,用来实现程序的各种结构方式

C语言有9钟控制语句,可分为三类:

1.条件判断语句(也叫分支语句):if语句,switch语句

2.循环语句:for语句,while语句,do  while语句

3.转向语句:break语句,continue语句,return语句,goto语句

二、分支语句(选择语句)

2.1if()语句

在我们的excel的函数中就有一种叫做if的函数,if(条件,表达式1,表达式二),条件成立的时候执行表达式1,条件不成立则执行表达式二,并且if函数可以嵌套使用。于if语句而言,也可以实现嵌套使用。

2.1.1if语句的语法结构

1 if(表达式)

2 语句

表达式为真(成立),语句执行,反之,语句不执行

else的匹配:else总是和他离得最近的if匹配。

2.1.2if嵌套

2.1.3复合语句

如果条件成立,要执行多条语句,那么就可以使用复合语句,这里一对{}就是一个代码块

举个例子

2.2switch语句

switch语句也是一种分支语句,常用于多分支情况

switch还有一种叫法叫做开关函数,因为他的执行流程就像是一排开关,找到条件符合的开关,就打开开关,如果不想把每个开关都开一遍,只开其中某个开关,就可以在开关后面使用break来中断,如果没有条件符合的开关,也可以使用break;switch语句中的break是跳出函数,不继续执行该case后面的语句(case下面会介绍)

2.2.1switch的语法

switch语句支持嵌套使用,和if类似,case执行语句是可以是另外一个switch的语句。

在switch()语句中,搭配break;使用才能实现真正的分支。

2.2.2 default子句

如果表达的值与所有的case标签的值都不匹配,这时候所有的case语句都会跳过,什么也不会发生,如果我们需要在所有case标签都没匹配值的情况下给出一些提示的话,就可以使用default,default可以用在任何一个case标签可以出现的位置,也可以在开头,最后也可以,当switch表达式的值不匹配所有case标签的值时,default子句后面的语句就会执行,因此每个switch语句中只能出现一条default子句。

我们在写代码的时候,最好在每个switch语句中写入一条default子句,并且在子句后面加上一个break:

三、循环语句

学习完if语句后我们就能知道当条件满足时,if后面的语句就可以执行,但只会执行一次。生活中的很多事情都需要我们反反复复的判断和尝试,那在程序中我们要如何实现呢?

这时候就要用到我们的循环语句,C语言中的循环语句有while,do while,for三种循环语句。

3.1 while循环

while()里面的表达式是循环的终止条件,条件成立为真,不成立为假,非0为真,0为假。

终止循环也可以用break;来实现,使用循环语句的时候,可以使用复合语句来达到一段程序的目的。

例:

3.1.1 控制语句break;

遇到break;时跳出当前循环,而不是整个循环,当外层还有循环时不能跳出外层循环,只能终止包含break的循环,switch中的break则是跳出函数体,不继续执行该case后面的语句。循环中的break是用于永久终止循环的。

3.1.2 控制语句continue;

continue在while循环中的作用:用于终止本次循环,也就是本次循环中continue后边的代码不会再执行,而是直接转到while语句的判断部分,条件成立,继续循环,条件不成立就终止循环。

在上面的代码中,当i等于3的时候if语句条件成立,因此执行了continue--跳出本次循环,continue后面的代码就没有执行了。因此3没有打印出来,跳出本次循环后循环条件依然成立,还是继续执行循环直到循环条件不成立,循环才会终止。

3.2 do while循环

上面讲了while循环,现在又来一个do while循环,从命名来看就感觉这两个很像,事实也没错,这两个循环确实用法八九不离十,可以说他俩是亲戚。do while循环除了可以先执行一次程序,再判断要不要继续循环外,其余用法和while()差不多,因此不进行重复讲解

3.3 for循环

好像很多人都比较喜欢用for循环,当然,我也比较喜欢用for循环,那么我们就来学习一下。

3.3.1 语法结构

举个例子:打印1-10的数

大概就这么个意思,我也是初学,有不足的地方欢迎大家给予指正

文章存在借鉴,如有侵权请联系修改删除!

  • 50
    点赞
  • 35
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值