c语言的三个循环语句该怎么区别呢
C语言中的三种循环语言while、do……while、for,从语法角度来区别,主要是执行流程,以及循环三要素的区分。
循环变量初始值、判断控制表达式、修改循环变量即所谓的循环三要素。一般来说,进入循环之前,应该给循环变量赋初值,确保循环能够正常开始,在控制表达式中判断循环变量是否达到循环的终止值,在循环体中对循环条件变量进行修改,以使循环正常的终止。
1、while循环
循环变量初始值:while循环中的循环初始值,只能在while循环语句前编写。
判断控制表达式:循环条件在while关键字之后设置。
修改循环变量:在循环体语中设置。
示例:计算[1,100]的所有整数之和
#include? int?main() { int?sum?=?0; int?start?=?1;????????????//初始化 while?(start?<=100)???????>=100)???????> { sum?+=?start; ++start;??????????//循环变量增加 } printf("结果:%d\n",?sum); return?0; } 2、for循环 for循环的执行流程 for语句最大的特点将循环三要素都设置在控制结构,这是非常方便的。还是上面的例子。 #include? int?main() { int?sum?=?0; for?(int?start?=?1;?//初始化 start?<=100;????>=100;????> ++start?????????//循环变量增加 ) { sum?+=?start; } printf("结果:%d\n",?sum); return?0; } 3、do……while语句 do……while语句的执行流程: do……while语句最大的特点是无论如何循环都会至少执行一次,这是do……while与while和for最大的区别。 循环条件有真、假之分,判定真假的方法和if语句的条件判定是相同的。当循环条件为真时,会执行大括号{}内的所有语句,然后再次对循环条件进行真假判定,即进入下一个循环。当循环条件为假时,不执行大括号内的语句,直接跳至大括号结束处往后执行,即跳出循环。 比较常用的循环有while循环和for循环。 while有两种格式: (一) while(循环条件) {满足条件时执行的语句} (二) do {先执行一遍,满足条件时重复执行的语句} while(循环条件) 这两者就如同二楼所说,是在于入口条件和出口条件的差别。在while之后的括号()内写上循环条件,循环条件可以是变量、常量、算式、判定语句如: (一)int a = 10; while(a){ a = a - 1; } (二)while(true){ printf("do while"); } (三)int a = 10; while(a - 1){ a = a - 1; }其实算是也可以看成常量或变量吧 (四)int a = 10; while(0 != a){ a = a - 1; } 另外一提,大括号内的满足条件时执行的语句可为空,就是不写。形如:while(循环条件){}。但是空的大括号{}一定要带上,如果写成while(循环条件),就是错误的。但是在满足条件时执性语句只有一句时,可以不写大括号,此时若执行语句为空,则写成while(循环条件);。注意那个分号。 for循环的格式: for(初始语句; 循环条件; 执行语句){满足条件时执性的语句} 参照以上while循环的格式。 循环条件判定真假方法: 对于bool型变量和常量,true即为真、false即为假。 对于数型变量和常量,非零即为真,0即为假。 对于判定句,成立即为真,不成立即为假。 如果if语句只是判断条件执行相应语句,条件不成立的话不跳出循环,那么for循环的表达式3还是会执行,比如: int?a=0,i; for(i=0;i<> { if(i>5) { a=a+i; } } 此种情况下当i<> C提供三种基本的循环语句: for语句、while语句和do-while语句。 一. for循环 for循环是开界的。它的一般形式为: for(<初始化>; <条件表过式>; <增量>) 语句; 初始化总是一个赋值语句, 它用来给循环控制变量赋初值; 条件表达式是一个关系表达式, 它决定什么时候退出循环; 增量定义循环控制变量每循环一次后按什么方式变化。这三个部分之间用";"分开。 例如: for(i=1; i<=10;>=10;> 语句; 上例中先给i赋初值1, 判断i是否小于等于10, 若是则执行语句, 之后值增加1。再重新判断, 直到条件为假, 即i>10时, 结束循环。 注意: 1. for循环中语句可以为语句体, 但要用"{"和"}"将参加循环的语句括起来。 2. for循环中的"初始化"、"条件表达式"和"增量"都是选择项, 即可以缺省, 但";"不能缺省。省略了初始化, 表示不对循环控制变量赋初值。 省略了条件表达式, 则不做其它处理时便成为死循环。省略了增量, 则不对循环控制变量进行操作, 这时可在语句体中加入修改循环控制变量的语句。 3. for循环可以有多层嵌套。 例16: main() { int i, j, k; printf("i j k\n"); for (i=0; i<2;>2;> for(j=0; j<2;>2;> for(k=0; k<2;>2;> printf(%d %d %d\n", i, j, k); } 输出结果为: i j k 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1 二、 while循环 while循环的一般形式为: while(条件) 语句; while循环表示当条件为真时, 便执行语句。直到条件为假才结束循环。 并继续执行循环程序外的后续语句。 例17: #include main() { char c; c=’\0’; /*初始化c*/ while(c!=’\X0D’) /*回车结束循环*/ c=getche(); /*带回显的从键盘接收字符......余下全文>> 条件判断语句:if语句、switch语句、condition ? exp1 : exp2(问号表达式) 循环语句:for语句、while语句、do...while 跳转语句:continue、break、goto 开关语句:switch语句 Java中提供的循环语句有:while语句、do-while语句和for语句,循环语的作用就是反复执行—段代码,直到满足终止循环的条件为止。无论是上面哪种循环语句,通常包括下 面四个部分: 1)初始化部分 该部分用来设置循环的一些初始条件,比如循环变量赋初值。 2)循环体部分 循环体是指被反复执行的一段代码,可以是—条语句,也可以是复合语句。 3)迭代部分(修正部分) 该部分常用来使计数器加1或者减1, 这部分内容在当前循环结束后、下一次循环开始前执行。 4)终止部分 这部分内容在当前循环结束后 用来判定是否终止循环的语句,通常是一个布尔表达式,每一次循环都需要对这个表达式进行求值,以验证是否满足循环终止的条件。下面,我们分别介绍while、do—while和for循环语句。 ●While语句 while语句的格式为: 初始化部分 while (布尔表达式) { 循环体部分 迭代部分 } 当布尔表达式的值为真时,循环执行{}中的复合语句,值得注意的是,while语句格式中的初始化部分和迭代部分是任选的,可以有也可以没有。 ●do—while语句 do—while语句的格式为: [初始化部分] do{ 循环体部分 造代部分] }while(布尔表达式);[注意:] 上面的最后的条件()后面一定不要忘了加一分号 ; 。 对比while语句和do—while语句可以看出,while语句首先计算终止条件,当条件满足时,才执行循环体中的语句,而do-while语句是首先执行循环体,然后计算终止条件,如果布尔 表达式的值为真,就循环执行{}中的语句,因此,while语句的循环体可能一次也没有执行,而do—while语句的循环体至少要执行一次。 ●For语句 for语句的一般格式为: for (初始化部分; 终止条件部分; 迭代修正部分 ) { 循环体部分 } for语句执行时,首先执行初始化操作,然后判断终止条件是否满足,如果满足,则执行循环体中的语句,最后执行迭代修正部分。完成一次循环后,重新判断终止条件。 需要注意的是,初始化、终止以及迭代部分都可以为空语句(但分号不能省),三者均为空的时候,相当于—个无限循环(通常说的死循环)。在初始化部分和迭代部分可以使用逗号语句,来进行多个操作,逗号语句是用逗号分隔的语句序列,如下面的语句所示: for ( i=0, j=10; i <10 ;="" i++,="">10> { coding…… } 这些都是Java的基础知识你可以去一个叫做秒秒学的网站学习相关内容 代码示例片段: int num = 10; int in_put; scanf("%d",&in_put); while(!(in_put == num)) //如果in_put == num 则跳出循环,不等于为假,继续执行。 { scanf("%d",&in_put); } //条件为真后执行 感觉没太大区别。表面上说是for要确定循环次数而while不确定循环次数,但实际上for的演变形式很多,已经和while没什么区别了; 比如: while(n) {......;n--} for(; n!=0;) {.......;n--}类似这样的就没区别了 当然一定要细细分析的话,总能找到些特殊例子来论证区别的,不然语言在设计循环结构的时候也不会分开了。 关键是用最合理,至少自己比较容易明白的方式去表达一个循环才是正途 循环语句只要条件满足,就可以无限次的运行循环体内的代码;条件判断语句当条件判断的结果,决定之后运行的代码块,但只运行一次 看完这个例子,你应该会有多领悟。 #include
转载请注明出处句子大全网 » c语言的三个循环语句该怎么区别呢c语言中循环条件的详细解释
for语句中的循环体部分为if语句,若if的条件语句为假,for的循环体部分
C语言中循环语句有哪些?具体怎么用?
单片机C语言:3个条件判断语句、3个循环语句、3个跳转语句和1个开关语句。
Java中的循环语句指什么?
循环判断语句该如何写 。条件为真则执行语句1,条件为假则重新判断该条件,直到条件为真。 c语言新手
for语句while语句的区别
循环语句和条件判断语句的区别是什么?
条件语句和循环语句都会用到条见表达式