循环结构初步学习 (while)

c++中,我们目前接触到的循环类型有goto类型、for循环类型、while循环类型。goto语句我们平常接触很少,该语句本身富有争议,绝大多数情况下可以不去考虑。
剩下的两种种循环类型就是我们需要熟练掌握。
先来看一下while 类型
定义:while是计算机的一种基本循环模式。当满足条件时进入循环,进入循环后,当条件不满足时,执行完循环体内全部语句后再跳出(而不是立即跳出循环)。while语句的一般表达式为:while(表达式){循环体}。
具体语法:

while(条件)    //满足即执行
{
       表达式
}
do
{
       表达式
}
 while(条件) //先执行一次do,满足while中条件,重复执行

通过语法可以看出,while语法的结构和理解难度比较容易,我们可以简单地通过几个例子题目快速了解掌握该结构。

int x,sum=0;
cin>>x;
while(x<10)
{
      sum+=1;
      x+=1
}
cout<<sum;

运行后可以实现求小于10的x与10的距离。

int a=NULL;
while(a<10)
{
       a++;     //自加
       if(a>5)     //不等while退出循环,直接判断循环
{
   break;    //跳出循环
}
}

结果:a=6输出。如果我们去掉if结构,输出结果为a=10。由此我们看出来,while不仅可以通过()条件式跳出,还可以通过break语句跳出。另外,还有continue语句可以跳出while语句。他们还是有很大差距的,break会立刻终止循环,而continue只终止本次循环。

continue和break语句比较

如图,输出结果sum=0。当进入while循环,a=a+1。a的值变为2,满足if语句,执行break语句,直接跳出while语句。如果我们将break换成continue语句执行,执行结果sum=4。每当a取偶数时执行if语句,sum不会计数,a取奇数时sum计数。通过这段程序可以很容易看出break、continue的区别。
所以,我们可以通过break和if条件选择函数可以写出这样的非常实用的程序:
while 1和if
这段程序通过while(1)恒循环和if条件下的break实现了无数次循环直到可以达到自己想要的值后跳出的目的。
总之,我们可以看出while语句是相对简单的,非常容易掌握,实际编程中可能不如for语句实用,但在某些特定场合和逻辑比较复杂的问题中,巧用while语句会有意想不到的效果。

//使用while需要注意:
1、while语句中的表达式一般是关系表达或逻辑表达式,只要表达式的值为真(非0)即可继续循环。
2、循环体如包括有一个以上的语句,则必须用{}括起来,组成复合语句。
3、while和do while最大区别就是即使不满足条件,do while也会执行一次表达式。

猜你喜欢

转载自blog.csdn.net/qq_43438636/article/details/84839884
今日推荐