C++——循环

“愚公移山”之while循环

使用场合:

当需要反复执行某些“过程”时,就可以使用while循环。

 

移山,移到什么时候?

只要山还在,就一直挖!

while (门前的山还在) {

一直挖

}

使用方法

while (条件) {

   语句1

   语句2

   .......

}

强烈建议,无论循环体内有几条语句,都使用{}

break的作用

跳出所在的循环。

死循环

有些场合(比如,游戏引擎的主循环, 就是一个死循环)

更多场合,需要避免死循环。

demo:

1+2+3+4+...100

#include <iostream>

#include <Windows.h>

#include <string>

using namespace std;

int main(void) {

       int i = 1;

       int s = 0;

           

       while (i<=100) {

              s += i;

              i++;

       }

       cout << "s=" << s << endl;

       system("pause");

       return 0;

}

流程图

 

从功能上,for循环和while循环是完全等效的!

 "后羿射日"之for循环

使用场合

在循环次数已经确定的情况下,使用for循环更方便!

 射掉9个太阳即可。

 

使用方法

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

循环体

}

说明:

表达式1: 为循环做准备

表达式2: 循环条件

表达式3: 改变循环计数

注意:

表达式1、表达式2、表达式3, 这3个表达式的任意一个或多个,都可以省略!

但是其中的“;”不可以省略!

for (; ; ) {

  循环体

}

相当于:

while (1) {

循环体

}

for循环的表达式1

在C89标准中,表达式1不能定义变量

在C99标准和C++中,表达式1可以定义变量

表达式1中定义的变量,仅在for循环中有效。

流程图

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

       循环语句

 

for 循环的次数控制:

for (int i=0;  i<10;  i++) { ... }     //常用方式

for (int i=1;  i<=10;  i++) { ... }    //较少使用

使用for循环实现“后裔射日”

#include <iostream>

#include <Windows.h>

#include <string>

using namespace std;

//后羿射日

int main(void) {

       for (int i=1; i<=9; i++) {

              cout << "射第" << i << "个太阳" << endl;

       }

       system("pause");

       return 0;

}

for和while的选择

1.当已经确定了循环次数时,建议使用for

2.其他情况,可以使用for ,也可以使用while, 建议使用while

使用for循环实现1+2+3+...100 = ?

#include <iostream>

#include <Windows.h>

#include <string>

using namespace std;

int main(void) {

       int s = 0;

       //1 + 2 + 3 + ... 100

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

              s += i;

       }

       cout << s << endl;

       system("pause");

       return 0;

}

"不服就干-直接干"之do-while循环

使用场合:

先执行一次循环体,然后再判断条件,以判定是否继续下一轮循环!

即:至少执行一次循环体

使用方法

do {

   循环体

} while (条件)

流程图:

 

使用do-while计算 1+2+3+...100

#include <iostream>

#include <Windows.h>

#include <string>

using namespace std;

int main(void) {

      int s = 0;

      int i = 1;

      do {

            s += i;

            i++;

      } while(i<=100);

      cout << s << endl;

      system("pause");

      return 0;

}

特殊用法:【在特殊的宏定义中使用】

do {

   // 循环体

} while(0);

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

会飞的鱼-blog

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值