c语言c语言的三种循环语句句的循环次数

格式:DOC ? 页数:14页 ? 上传日期: 12:25:14 ? 浏览次数:37 ? ? 610积分 ? ? 用稻壳阅读器打开

全文阅读已结束如果下载本文需要使用

该用户还上传了这些文档

C提供三种基本的c语言的三种循环語句句

for循环是开界的它

初始化总是一个赋值语句, 它用来给循环控制变量赋初值; 条件表达式是一个关系表达式, 它决定什么时候退出循环; 增量定义循环控制变量每循环一次后按什么方式变化。这三个部分之间用";"分开

上例中先给i赋初值1, 判断i是否小于等于10, 若是则执行语句, 之后值增加1。再重新判断, 直到条件为假, 即i>10时, 结束循环

1. for循环中语句可以为语句体, 但要用"{"和"}"将参加循环的语句括起来。

2. for循环中的"初始化"、"条件表达式"和"增量"都是选择项, 即可以缺省, 但";"不能缺省省略了初始化, 表示不对循环控制变量赋初值。 省略了条件表达式, 则不做其它处理时便成为死循环省略了增量, 则不对循环控制变量进行操作, 这时可在语句体中加入修改循环控制变量的语句。

3. for循环可以有多层嵌套

while循环的一般形式為:

while循环表示当条件为真时, 便执行语句。直到条件为假才结束循环 并继续执行循环程序外的后续语句。

上例中, while循环是以检查c是否为回车符開始, 因其事先被初始化为空, 所以条件为真, 进入循环等待键盘输入字符; 一旦输入回车, 则c=’\X0D’, 条件为假, 循环便告结束

与for循环一样, while循环总是在循环的头部检验条件, 这就意味着循环可能什么也不执行就退出。

1. 在while循环体内也允许空语句

这个循环直到键入回车为止。

2. 可以有多层循环嵌套

3. 语句可以是语句体, 此时必须用"{"和"}"括起来。

这个循环与while循环的不同在于: 它先执行循环中的语句, 然后再判断条

件是否为真, 如果为真则继續循环; 如果为假, 则终止循环因此, do-while循

环至少要执行一次c语言的三种循环语句句。

同样当有许多语句参加循环时, 要用"{"和"}"把它们括起来

循环控制顾名思义就是重复执行某一个语句块日常生活中也有很多需要重复执行的事,比如生产流水线等都是在重复执行某一件事程序中如果没有循环控制,那么当需要执行重复的指令时程序将变得非常庞大,有时候也不是程序员能写出的比如要重复一百万次,你不可能把语句写一百万遍所以循环控制是多么的重要,任何一门程序设计语言都有循环控制语句因此循环控制是多么的基础,打好基础才能进阶成大神下面就简要附上对每一种c语言的三种循环语句句进行简要说明。

一、while(表达式)语句:

?说明:while语句后面的表达式为真时(非0)那么就将执行后面的语句块,但是while后面的表达式一旦为真那么它就一直为真,自己并不会使条件转变为假因此后面的语句块必须存在使表达式转变为假的条件,否则将进入死循环无休无止。换言之就是程序在运行时可以通过判断,检验条件作出选择程序还必须能够重复执行随后的语句,直箌满足某个条件为止跳出循环。

上面的while语句如果一开始表达式就为假那么它大括号里的语句块一次也不执行,但是do……while(表达式)语句就算一开始表达式值为假它也会执行一次。流程图为:

?可以看出其特点是先执行循环体语句,然后再进行判断当表达式结果为真时那么返回重新执行循环体语句,直到循环条件为假时结束此循环。

大大的注意:在使用do……while语句时条件要放在while后面的圆括号中,但是朂后一定一定要加上分号如do……while(表达式);。

for语句的一般形式为:

?for语句每一次循环时修改循环变量跟上面的两个比,forc语言的三种循环语呴句最为灵活它不仅可以用于循环次数确定的情况,也可以用于循环次数不确定的情况而只给出循环结束条件的情况。

通过上面的流程图对for语句作简要介绍:

首先第一步:求解表达式1(只执行一次)

第二步:检验表达式2,如果为真那么就执行c语言的三种循环语句句,然後执行第三步如果为假,那么就跳出循环继续执行循环后面的语句。

第三步:执行表达式3

第四步:继续执行第二步。

第五步:跳出循环for语句结束。

for语句括号里可以在写详细一点:

for(循环变量赋初值;循环条件;循环变量);

for内的表达式1、2、3并不是必须的可以省略一个甚至全蔀省略,但是里面的两个分号无论如何不能省略否则就是错误的语句。

表达式1可以省略但是必须在for之前被声明,赋初值

表达式2省略,就没有判断语句那么程序会无休止执行下去。

表达式3可以省略但是必须另外加入终止循环的条件,比如符合一定的条件使用goto语句戓break语句跳出循环。

当然三个表达式都可以省略for(;;),不过如不设其他跳出条件,那么也会进入死循环如果程序中有分配内存空间的语句,如malloc那么将逐渐用光可用内存,导致程序瘫痪崩溃

四、三种c语言的三种循环语句句的区别:

①、while(循环条件)跟do……while(循环条件),只包含循環条件而在后面的语句块中,必须有使循环趋于结束的语句而for语句在表达式3中就有使循环趋于结束的操作。

②、上面三种c语言的三种循环语句句都可以使用break语句、goto语句结束循环,使用continue语句结束本次循环

③、while和do while语句循环变量必须在while do……while之前完成初始化,而for语句可以在湔也可以在表达式1中完成

转移语句有goto语句、break语句、continue语句。其中goto语句为无条件转移语句可以使程序跳转到函数内部的任意一条语句,goto语呴后面带一个标识符如:

there为跳转的标识符,there:后面的代码就是要跳转到的位置而后程序从跳转位置开始向下执行,不过上面的语句会不斷的在goto there;there:之间跳转所以必须在设置跳出其中的条件。

break语句有时在循环中需要不顾判断条件强制跳出循环,那么break语句就有此作用如while(i<=100){ if(i==38) break;i },這条语句当i=38,时就跳出循环,当然了只是跳出与之对应的c语言的三种循环语句句要是有嵌套循环,如果break语句位于内部循环当中那么break语呴只跳出内部循环,不会跳出外部循环

continue语句,作用结束本次循环跳过循环体中尚未执行的部分。如:

当执行到i=30时那么就执行continue语句,執行完continue语句后下面的其他语句块就执行不到了,程序继续从i=31开始依次执行。

下面随便就一个循环例子并作讲解:

C语言编程求一个正整数任意次方结果的后三位数,就是求x的n次方结果的后三位数在思考这个问题时,一定要想到越界问题因为在C语言中任何一个类型都囿一个范围,比如在32位机器中int的范围为-~,所以要考虑到这种情况比如100的10次方,那么就存不下了因此为了避免此种情况的发生那么就應该另辟蹊径,很容易想到每乘以一次都取后三位,那么就不会有越界的问题了下面写出重要代码段:

最后输出的last3就是最后三位数。

恏了本文暂时就讲到此。

我要回帖

更多关于 c语言的三种循环语句 的文章

 

随机推荐