第55课 字母闪烁
字母闪烁(三重循环)
报告!我发现cout<<"!!!!!!"<<endl中还有6个!重复,我决定要把循环贯彻到底。
试一试将!也使用循环输出吧。

温故知新
固定计数循环,首先就想到了for循环。
注意
循环的是!的输出,endl不需要循环,所以将它放在循环外。

敲黑板——循环的嵌套

字母闪烁

运行程序:
A A A A A A A A A↓
↓(闪烁)
Z Z Z
Z Z Z
Z Z Z
程序逻辑
(1)内层循环:


3个字母一排A A A中层循环:

将内层循环的字母,输出3行:
A A A A A A A A A外层循环:

将字母从A一直变换到Z,并实现闪烁。


提出思考
内层循环和中层循环的i是同一个i吗?
一起探索一下,用程序来说话。
探索①:

运行程序:
内层:5内层:6内层:7内层:8内层:9
外层:0
内层:5内层:6内层:7内层:8内层:9
外层:1
内层:5内层:6内层:7内层:8内层:9
外层:2
内层:5内层:6内层:7内层:8内层:9
外层:3
内层:5内层:6内层:7内层:8内层:9
外层:4
程序逻辑
内层循环为i从5到9。
外层循环为i从0到4。
都符合循环各自的逻辑,说明不是同一个i。

探索②:

运行程序:
内层:A内层:B内层:C内层:D内层:E
外层:0
内层:A内层:B内层:C内层:D内层:E
外层:1
内层:A内层:B内层:C内层:D内层:E
外层:2
内层:A内层:B内层:C内层:D内层:E
外层:3
内层:A内层:B内层:C内层:D内层:E
外层:4
从结果看,明显i不相同,一个是整数类型,输出数字;一个是字符类型,输出字母。

探索③:

运行程序:
内层:5内层:6内层:7内层:8内层:9
外层:10
敲黑板
显然是同一个i,但第一次外循环进入时i=0,在内循环中立刻变成了5,经过内循环后最终i变成了10,最后外循环输出10,i大于5了不再继续外循环。
i的变化
外循环i=0→内循环i=5(内循环输出5)→内循环i++(内循环输出6)→内循环i++(内循环输出7)→内循环i++(内循环输出8)→内循环i++(内循环输出9)→i为10,不符合内循环条件→外循环输出i,值为10→i为10,不符合外循环条件→结束。


巩固练习
(1)阅读下面的程序,填写程序运行后的输出结果。

输出:_____________________________________________________________ _
(2)编写一个秒钟计时器,每一秒钟跳动一次,计时开始为00,过一秒变成01,一直到59,达到60秒后,输出“一分钟到!”。
(3)修改字母闪烁程序,将字母闪烁改成数字闪烁,使得程序从数字0闪烁到9。