课程首页 › 第3部分 › 第33课

第33课 趣味青蛙游戏

第3部分 不辞辛苦 · 循环结构· 知识点:while循环、变量

趣味青蛙游戏(while循环、变量)

一只青蛙,一张嘴,两只眼睛,四条腿;两只青蛙,两张嘴,四只眼睛,八条腿……

这是有趣的青蛙接龙游戏,考察的是我们计算的灵活性和记忆力。让C++程序帮我们快速计算出前100只青蛙们的接龙吧!

插图

青蛙游戏

运行程序:

1只青蛙,1张嘴,2只眼睛,4条腿。

2青蛙,2张嘴,4只眼睛,8条腿。

3青蛙,3张嘴,6只眼睛,12条腿。

98只青蛙,98张嘴,196只眼睛,392条腿。

99只青蛙,99张嘴,198只眼睛,396条腿。

100只青蛙,100张嘴,200只眼睛,400条腿。

(1)while(num<100):设置循环条件为num<100,当num的数值小于100时,条件成立进入循环。

提出思考

那么为什么最终输出100只青蛙呢?

这与num++和输出的先后有关系,自己探索一番吧!

(2)num++实现了循环体中变量值跟随循环次数的变化。每循环一次,num增加1。num不断变大,最终达到100,使得循环条件不成立,终止循环。

输出偶数

试着输出100以内(含100)中的所有偶数。

插图

运行程序:

从第一个偶数0开始,每次增加2,直到100。

(1)num +=2:将num加上2,再赋值给自己,相当于num=num + 2。第一次循环num为0,循环一次num+2,此时num为2;再循环一次num为4……

(2)因为num的初始值为0,同时0也是偶数,所以将num自增2放到了输出之后,确保了0的输出。

如果是

num +=2; cout<<num<<endl;输出的将会缺0且多了102。

因为在还没输出就进行了自增2,所以第一次输出的值为2;最后当num为100时,满足循环条件(num<=100),100进入循环,再自增2,变成了102,输出就是102了。

插图

巩固练习

(1)以下是求100以内(不含100)所有偶数之和的代码,请阅读代码并将错误之处改正。

插图

(2)以下哪段代码可以输出“fei”10次?()

A.

int num=0; while(num<10){

cout<<"fei"; num--;}

B.

int num=0; while(num<=10){

cout<<"fei"; num++;}

C.

int num=0; while(num<10){

cout<<"fei"; num++;}

D.

int num=0; while(num>10){

cout<<"fei"; num--;}

(3)循环列出50以内(含50)的所有奇数,并输出它们相加的结果。

示例:

奇数的和为:625