C语言中三种循环的嵌套和比较

1、循环的嵌套

一个循环体内又包含另一个完整的循环结构,称为循环的嵌套。内嵌的循环中还可以嵌套循环,这就是多层循环。各种语言中关于循环的嵌套的概念都是一样的。
  C语言中3种循环(while循环、do…while循环和for循环)可以互相嵌套。例如,下面几种都是合法的形式:
(1)while循环包含while循环的内层循环

while()
{
	...
	while()
	{
		...
	}
 } 

(2)do…while循环包含do…while循环的内层循环

do
{
	...
	do
	{
		...
	}while();
	
 }while();

(3)for循环包含for循环的内层循环

{
	...
	for( ; ; )
	{
		...
	}
 }

(4)while循环包含do…while循环的内层循环

while()
{
	...
	do
	{
		...
	}
	while();
 }

(5)for循环包含while循环的内层循环

for( ; ; )
{
	...
	while()
	{
		...
	}
	...
 }

(6)do…while循环包含for循环的内层循环

do
{
	...
	for( ; ; )
	{
		...
	}
	
} while();

2、几种循环的比较

(1) 3种循环都可以用来处理同一问题,一般情况下它们可以互相代替。
(2) 在while循环和do…while循环中,只在while后面的括号内指定循环条件,因此为了使循环能正常结束,应在循环体中包含使循环趋于结束的语句(如i++,或i=i+1等)。
  for循环可以在表达式3中包含使循环趋于结束的操作,甚至可以将循环体中的操作全部放到表达式3中。因此for语句的功能更强,凡用while循环能完成的,用for循环都能实现。
(3) 用while和do…while循环时,循环变量的初始化的操作应在while和do…while语句之前完成。而for语句可以在表达式1中实现循环的初始化。
(4) while循环、do…while循环和for循环,都可以用break语句跳出循环,用continue语句结束本次循环。
上述说的表达式3是指for循环中的表达式3:

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

猜你喜欢

转载自blog.csdn.net/Bug_fuck/article/details/85805208