- 小学生C++创意编程(视频教学版)
- 刘凤飞
- 958字
- 2024-12-31 19:29:57
第3课 舞动的机器人(趣味输入应用)
![](https://epubservercos.yuewen.com/1C2139/31397789403525706/epubprivate/OEBPS/Images/Figure-P34_3697.jpg?sign=1739370745-PkuyMEt6DQ9wrnpKPybYwKuOEkSyFPCR-0-a580a5a4243299bcde08a5a759a45a3f)
在学习了如何使用输出cout和输入cin之后,我已经迫不及待地想应用它们来做一些事情了。既然我已经能够输出图案,那是不是就能捣鼓个动画呢?在思考中探索新知识,在项目应用中掌握新技能,才是编程学习的正确打开方式。
学习编程最关键的不是知识本身,而是我们如何运用知识去思考和创建项目,如何发现新问题,以及如何探索未知领域。因此,无论所掌握的知识量有多少,只要你敢于思考和实践,就会有无限的可能性。同时,在思考和实践的过程中,我们会接触新的知识,并通过实践应用去掌握它们。
舞动的机器人
我们一起运用*号来拼装一个机器人造型吧!
![](https://epubservercos.yuewen.com/1C2139/31397789403525706/epubprivate/OEBPS/Images/Figure-P34_28570.jpg?sign=1739370745-nhs7ErbxhubUAPKN8Wg5Edm8iiWWWchA-0-60cb2b6b8a0a5fa415059c9e05f69c6a)
![](https://epubservercos.yuewen.com/1C2139/31397789403525706/epubprivate/OEBPS/Images/Figure-P35_28571.jpg?sign=1739370745-nvp0nMMeqUikMBvu34tgygqWmLR7Lllb-0-59c5ee7923449179738a89bd69d1f515)
机器人的第一个造型出炉了。
![](https://epubservercos.yuewen.com/1C2139/31397789403525706/epubprivate/OEBPS/Images/Figure-P35_28573.jpg?sign=1739370745-xKyg6tOHbtSJfCMS2F4KiepsoM30bSry-0-f4b5dce43204e0283dba37b8c8327c85)
继续设计机器人的第二个造型。
![](https://epubservercos.yuewen.com/1C2139/31397789403525706/epubprivate/OEBPS/Images/Figure-P36_28574.jpg?sign=1739370745-wf9mSflvIceriRaHIc8fXjRkLjWxCuiC-0-85dca92619bdffe0baac5c618a67f921)
![](https://epubservercos.yuewen.com/1C2139/31397789403525706/epubprivate/OEBPS/Images/Figure-P36_28575.jpg?sign=1739370745-DmBWtJUvEHh1IL2asHe0vlcQzF4bNkK7-0-8a88366152e64ce89cb76d99fad33a35)
第二个造型也设计好了。
![](https://epubservercos.yuewen.com/1C2139/31397789403525706/epubprivate/OEBPS/Images/Figure-P36_28577.jpg?sign=1739370745-gN2MnmxlBxYCQh6E65J3t4EZK8RUKnkV-0-1b0e0224f190336a1dd46c2c37a00b9c)
编译运行程序,两个机器人造型都出现了。
![](https://epubservercos.yuewen.com/1C2139/31397789403525706/epubprivate/OEBPS/Images/Figure-P36_3754.jpg?sign=1739370745-ez2Xm8jxQnUbLIuutolxB9yx8a0rcajM-0-656bd13baa80cd08e095eacc4497bbb2)
提出思考
机器人造型输出已经完成了,怎么让图案动起来呢?
这需要屏幕上先显示机器人的第一个造型,然后过渡到机器人的第二个造型,接着再切换回机器人的第一个造型,不断地重复这个过程。
![](https://epubservercos.yuewen.com/1C2139/31397789403525706/epubprivate/OEBPS/Images/Figure-P37_28580.jpg?sign=1739370745-x850nzAb8TFHYBK37SVo0HsSiV1Soebu-0-0373e786097361e6e86f0b2d7f90091b)
![](https://epubservercos.yuewen.com/1C2139/31397789403525706/epubprivate/OEBPS/Images/Figure-P37_28581.jpg?sign=1739370745-GUq2Z6AaOxeDif7lLrTvWb4b8xwbOFVk-0-6d9d7a9ee47224d4409bfc03237edff0)
翻译助力理解
● sleep:睡觉、休眠。
● system:系统。
● while:当……的时候。
● true:真的。
(1)#include <windows.h>:windows.h文件中包含了许多用来操作Windows操作系统的指令和信息,我们将它包含进来是为了能够使用Sleep()函数。
(2)Sleep(100):让输出的画面停留一会,再切换到下一个画面。尝试修改数值100去体会时间长短的变化。
划重点
Sleep()是一个函数,( )里面的数字是它的一个参数,为int类型,表示要暂停的毫秒数。1000毫秒=1秒。
Sleep(100)表示让程序等待了0.1秒。如果你学过Scratch,那么看看Sleep()和等待0.1秒积木块是不是有点类似。
联想对比学习
![](https://epubservercos.yuewen.com/1C2139/31397789403525706/epubprivate/OEBPS/Images/Figure-P39_28589.jpg?sign=1739370745-1wiF72sDxMDPZjMQnAxWjM0M5T6tjwz8-0-26a1b6a94bb8a913b6b456ba96c4e92a)
注意
S要大写哟!C++严格区分字母的大小写,同一个字母大写和小写表示的可不是同一个东西。
(3)system("cls"):它在Windows操作系统中比较常见,用于清除当前控制台窗口中的内容,使屏幕变成空白。
模块学习法
在这个程序中,system("cls")清除屏幕的效果似乎并不明显。结合学到的知识,将这个函数剥离出来,单独编写一个程序来体验一下它的效果。
![](https://epubservercos.yuewen.com/1C2139/31397789403525706/epubprivate/OEBPS/Images/Figure-P39_28592.jpg?sign=1739370745-ucUIjWRJuH9JNOHrPnCbj4A2BlwGCvAA-0-e411a49b1a834c21b8c2412b218dc02e)
运行程序后,你会发现“我说一句话,不知道会不会被清除。”只是一闪而过,因为它被清除了,最后留下了“清除成功!”。
● 程序首先执行cout << "我说一句话,不知道会不会被清除。"<< endl,输出了我说一句话,不知道会不会被清除。
● 然后执行system("cls"),屏幕上面的内容被清除了,什么都没有留下。
● 最后执行cout <<"清除成功!"<< endl,输出了清除成功!。
你发现了吗,程序代码是按照顺序执行的。
(4)为了让动画效果可以持续,使用while (true){ }循环语句,“装”在{ }内的程序语句会重复执行。
联想对比学习
while (true){ }相当于重复执行积木块,while(true)代表重复执行,{ }如同积木块的大嘴巴,被装进去的程序语句会重复执行。
![](https://epubservercos.yuewen.com/1C2139/31397789403525706/epubprivate/OEBPS/Images/Figure-P40_28599.jpg?sign=1739370745-6kSx0dRnGdLbAFAwybxgakNrZQfxX5Or-0-5b7e97dce3fd99772958989b76c3e848)
射出心中的箭
学习一定要找准目标,如同射箭一定要瞄准靶心。朝着一个目标前行,学习才能更有动力。
一起朝着目标射出我们心中的箭吧!
![](https://epubservercos.yuewen.com/1C2139/31397789403525706/epubprivate/OEBPS/Images/Figure-P40_28601.jpg?sign=1739370745-6T3IVLZDzzpZ7DjVEWdARSatf1y3Su5u-0-aef5f0ce52a35f5ced4c254d88ab8fc6)
巩固练习
(1)cout >> "******">> endl这段代码可以在屏幕中输出什么?( )
A.******
B.*******
C.空白
D.程序报错
(2)找出程序中的错误并改正。
![](https://epubservercos.yuewen.com/1C2139/31397789403525706/epubprivate/OEBPS/Images/Figure-P41_28606.jpg?sign=1739370745-XaYnvaegmcbUWFLTsgrHJEkQgW4n1Y3t-0-72a4e3cce9136059896435cb06294037)
(3)在C++中,string a;和string A;是否声明了同一个变量。( )√( )×
(4)用符号设计一个大写字母和对应的小写字母,并进行动画切换。
![](https://epubservercos.yuewen.com/1C2139/31397789403525706/epubprivate/OEBPS/Images/Figure-P41_28607.jpg?sign=1739370745-5a44tWttWwIkq2TJ2ipGJgcJUTAjpY0s-0-adf2c7333c048cdc18fa0354cb974188)