c语言循环选择控制语句,C语言入门学习:循环以及循环控制语句

循环语句是编程中最基础的知识,但在编程中又是最重要的部分。基本上每一个稍微复杂点的程序都会运用到循环,如果你不会使用循环,你就不可能对一些复杂麻烦的算法进行运算。所以学习循环是必不可少的,下面会对循环类型和循环控制语句进行代码的解释。

循环

顾名思义就是把一段代码就行循环,直到程序的结果与你在循环中设定的条件相符合。

下面是循环语句最简单的流程图:

d7075c6b778dbddc36b10402301dbab1.png

而循环中也分为了几种类型:

1.while循环

2.for循环

3.do..while循环

4.嵌套循环

下面我们会一一的进行解释。

while循环

概念:只要所设定的条件为真,C语言中while循环就会一直重复执行while循环中的代码。

模板:

while(判断条件)

{

代码;

}

代码可以是一行也可以是多行,判断条件可以使任意的表达式,当为任意非零值时都为 true。当条件为 true 时执行循环。当判断条件为false时,程序会继续执行while循环后面的语句。

要注意的是,如果在第一次判断的时候判断条件就为false,则while中的代码一次也不会循环。

流程图:

f9042fc5a709f3134d12ffdeb92ef4c3.png

实例以及结果:

59b242093d2d8c6b30387e688971ecf0.png

for循环

for循环允许您编写一个执行指定次数的循环控制结构。

流程图:

0f389a4eecdbca8df645ac6e4d48e8b5.png

模板:

for ( init; 条件; increment )

{

代码;

}

对for( init; 条件; increment )解释

首先,init先会被执行,而且就这一次。你可以在这里初始化你要的循环变量。这里也可以空白,只要有分号就行。然后,就去判断条件,如果条件为真,就执行for中的代码。如果为假,就跳出for循环,执行循环外下面的语句。在执行完一次循环主体之后,会来到increment语句,increment允许你进行变量的更新(也可以留空)。最后将会再一次判断条件,如果为真,就执行循环,如果为假,循环终止。

实例以及结果:

c28916040d17757794220a36026bd2b5.png

do...while循环

流程图:

0e6b5657c0d964b643c405129ab4b2c5.png

do...while的特点是在语句的最后面对条件进行判断,和while不同的是do...while一定会保证循环能执行一次。

模板:

do

{

代码;

}while( 判断条件 );

实例以及结果:

98d39ec8504755544a11c23368797aab.png

嵌套循环

嵌套循环不仅仅只是同类循环可以嵌套,不同类例如:for也可以和while嵌套。下面说的都是同类型的嵌套。

for嵌套

模板:

02b3f5696ba746b1441729c40fdd66f3.png

实例:

25821eae4221d44d8c7692b16df10709.png

continue和do...while

模板:

7f0dead2665f3baa2f830e1e315aadd0.png

循环控制语句

控制语句有:break、continue和goto;

break

如果break出现在循环中,当程序执行到break时,将会直接终止循环。

如果是在嵌套循环中出现,只会终止它所在的循环。

实例:

3b7f26187468855cfc10ae2a3fae2e9f.png

在上图中,本来的循环的结果应该是到19才会结束,但是在if中出现了break,所以while循环会被终止,所以输出结果只到15。

continue

如果continue出现在循环中,当程序运行到它的时候,并不是如同for一样直接终止循环。而是跳过continue以下的代码,进行下一次的循环。对于 for 循环,continue 语句执行后自增语句仍然会执行。对于 while 和 do...while 循环,continue 语句会重新执行条件判断语句。

实例:

8c4cad72d21bed92733cd41b69bd63fa.png

图中的输出结果中缺少了15,因为在while循环中,当a=15的时候,continue将会执行并且跳过下面的代码进入到下一次循环。所以a=15的值并没有被打印在屏幕上。

goto

程序在执行的时候,如果读到goto,会无条件的转移到函数内被标记的语句。

在所有的编程语言中,goto都是不建议使用的,因为goto会使得程序的控制流难以控制。使程序更加复杂。

模板:

goto label;(label可以是任意的标识符)

..

.

label: statement;

实例:

8b7551b7704f5c3f8d670d3ed8cb5b06.png

无限循环

如果条件永远为真,则程序会无限循环。

#includeintmain(){for(;;){printf("This loop will run forever.\\n");}return0;}

循环对于编程十分重要,判断条件的错误或者语句的错误就会导致程序的出错。另外要说的是,如果你的循环中没有添加{},循环会默认循环下面的第一句,直到循环结束。所以平时要养成书写代码的规范,以免造成不必要的错误。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值