第33课 趣味青蛙游戏
趣味青蛙游戏(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