早教吧 育儿知识 作业答案 考试题库 百科 知识分享

c语言中while do-while for 1.使用while和do-while循环式,循环变量初始化的操作应在循环语句之前完成对不对?2.do-while和for循环均是先执行循环语句,

题目详情
c语言中while do-while for
1.使用while和do-while循环式,循环变量初始化的操作应在循环语句之前完成对不对?
2.do-while和for循环均是先执行循环语句,
▼优质解答
答案和解析

第一个是对的.

do-while是先无条件执行循环体,然後再判断循环条件是否成立.

但是,for不是先执行循环体.for和while相同.


lz主要是for语句实现循环没弄明白.那我好好说明一下:

for的一般形式为:

for(表达式1;表达式2;表达式3)




*举个例子:

for(i=1;i<=100;i++)

sum = sum + 1;

"i=1"是给的循环变量i设置初始值为1,“i<=100”是指定循环条件:当循环变量i的值小於或等於100时,循环继续执行.“i++”的作用是使循环变量i的值不断变化,以便最终满足终止循环的条件,使循环结束.

它相当於以下语句:

i=1;

while(i<=100)

{

      sum = sum + 1;

      i++;

}



*再举个例子:

for(i=1;i<=100;i++)

{printf("%d",i);}

for语句的执行过程如下:

(1) 先求解表达式1.本例中把整数1赋给变量i.

(2) 求解表达式2,若此条件表达式的值为真(非0),则执行for语句中的循环体,然後执行第(3)步.若为假(0),则结束循环,转到第(5)步.

上例中,循环条件表达式“i<=100”是一个关系表达式,当i=1时,表达式“i<=100”的值为真(非0),故执行循环体中的语句,即printf语句,输出i的当前值1.然後执行第(3)步.

(3) 求解表达式3.在本例中,执行i++,使i的值加1,i的值变成2.

(4) 转回步骤(2)继续执行.

    由於此时i=2,表达式i<=100的值为真,再次执行循环体中的语句,printf语句输出i的当前值2.然後再执行步骤(3).如此反复,直到i变到101,此时表达式i<=100的值为假,不再执行循环体,而转到步骤(5).

(5) 循环结束,执行for语句的下面一个语句.



ps:

大陆一般都是用红皮书作教材.lz如果有红皮书(C程序设计第四版),翻到P114~P125

有很详细的叙述三种循环的不同.