从 入 门 到 入 土 , 从 出 征 到 出 殡 , 冰 块 萌 兔 带 你 学 习 C + +(4)

今天我们来学习c++入门到入土第四节课——不花钱
上一节课,我们讲到了流程控制语句,这节课我们来讲循环


我们先来解答一下问题:
1.好像没有问题,结束


您如有问题的话,可以回复我哦!
我会取前三个问题回答哦



循环

有时,我们需要做一件事很多遍,为了不写过多重复的代码,我们需要循环。
有时,循环的次数不是一个常量,那么我们无法将代码重复多遍,必须使用循环。

for 语句

以下是 for 语句的结构:

for (初始化; 判断条件; 更新)
{
  循环体;
}

执行顺序:

例子:

读入n个数

for (int i = 1; i <= n; i++)
{
  cin >> a[i];
}

for 语句的三个部分中,任何一个部分都可以省略。其中,若省略了中间的判断条件,相当于判断条件永远为真,永远执行。

while 语句

以下是 while 语句的结构:

while (判断条件)
{
  循环体;
}

执行顺序:

例如:验证 3x+1 猜想:

while (x > 1)
{
  if (x % 2 == 1)
  {
    x = 3 * x + 1;
  }
  else
  {
    x = x / 2;
  }
}

您必须要懂while之后来看do-while语句

do…while 语句

以下是 do…while 语句的结构:

do
{
  循环体;
} while (判断条件);

执行顺序:

与 while 语句的区别在于,do…while 语句是先执行循环体再进行判断的。
例如枚举排列:

do
{
  // do someting......
} while (next_permutation(a + 1, a + n + 1));

三种语句的联系

// for 语句
for (A; B; C)
{
  D;
}
// while 语句
A;
while (B)
{
  D;
  C;
}

在 D中没有 continue 语句(下节课)的时候是等价的,但是下面一种方法很少用到。

// while 语句
A;
while (B)
{
  A;
}
// do...while 语句
do
{
  A;
} while (B);

在 A 中没有 continue 语句的时候这两种方式也也是等价的。

while (1)
{
  // do something...
}
for (;;)
{
  // do something...
}

这两种方式都是永远循环下去。(可以使用 break(下节课)退出。)
可以看出,三种语句可以彼此代替,但一般来说,语句的选用遵守以下原则:
1. 循环过程中有个固定的增加步骤(最常见的是枚举)时,使用 for 语句;
2. 只确定循环的终止条件时,使用 while 语句;
3. 使用 while 语句时,若要先执行循环体再进行判断,使用 do…while 语句。一般很少用到,常用场景是用户输入。
下一节课—— break 与 continue 语句等等
点赞,点赞,点赞!!!!!!!
球球了!!!!
求求了!!!!

:slight_smile:
QwQ QwQ

3 个赞

如果我没记错的话,

while(条件){
    ...
}

可以写成这样:

while(1){
    ...
    if(!(条件))break;
}