C几种循环的比较,前面讲述了四种循环结构(while,do-while,for,if与goto),这四种循环结构之间有什么区别与联系?
- 4种循环都可以处理同一问题,一般情况下可以互换,但是尽量不用goto型。
- while和do-while循环,在while后面只指定循环的条件,而使循环趋于结束的语句包含在循环体中。而for循环可以在“表达式3”中包含使循环趋于结束的操作。甚至可将循环体放到 “表达式3”中。
- 用while和do-while循环时,循环变量初始化应在while和do-while之前;而for循环可以在 “表达式1”中实现循环变量的初始化。
- while循环:先判断后执行;do-while循环:先执行后判断;for循环:先判断后执行。
- 对while循环、do-while循环、for循环,用break语句跳出循环,可以用continue语句结束本次循环。对于goto语句构成的循环,不能如此操作。
下面我们用同一题目来举例说明这四种循环结构之间的关系。
示例:求1+2+…+100的和。
(1)while语句构成的循环。
void main( )
{
int i,sum=0;
i=1;
while (i<=100) /*while循环*/
{
sum=sum+i;
i++;
}
printf("%d",sum);
}
(2)用do…while语句构成的循环。
void main( )
{
int i,sum=0;
i=1;
do /*do…while循环*/
{
sum=sum+i;
i++;
}while(i<=100);
printf("%d",sum);
}
(3)用for语句构成的循环。
void main( )
{
int i,sum=0;
for(i=1;i<=100;i++) /*for循环*/
{
sum=sum+i;
}
printf("%d",sum);
}
(4)用goto语句构成的循环。
void main( )
{
int i,sum=0;
i=1;
loop: if (i<=100) /*loop语句*/
{
sum=sum+i;
i++;
goto loop;
}
printf("%d",sum);
}
评论前必须登录!
注册