![小学生C++创意编程(视频教学版)](https://wfqqreader-1252317822.image.myqcloud.com/cover/24/52842024/b_52842024.jpg)
第2课 蹩脚的“ChatGPT”(信息输入)
![](https://epubservercos.yuewen.com/1C2139/31397789403525706/epubprivate/OEBPS/Images/Figure-P28_3457.jpg?sign=1738827668-yTAxONSgWp927711kPqqi52wfWAimpfd-0-bcb0f31adc506e5ae504120e19c9225c)
要和计算机交朋友,就少不了互动,互动就离不开输入输出。不同的输入结合不同的算法得到不同的输出。
计算器中,输入数字,经过四则运算,输出答案。
摄像机中,输入画面,经过剪辑处理,输出视频。
学习机中,输入题目,经过搜索分析,输出题解。
![](https://epubservercos.yuewen.com/1C2139/31397789403525706/epubprivate/OEBPS/Images/Figure-P28_28533.jpg?sign=1738827668-d8dSyYq1jurxKUI0JoCVY8fnZI6Tcj3I-0-fb55e8df94cc063aff25321b9832efb5)
温故知新
现在给你输入一些画面,然后经过你的大脑的思考加工,找到对应画面的李白的诗句,并运用cout输出你联想到的诗句吧。
1
![](https://epubservercos.yuewen.com/1C2139/31397789403525706/epubprivate/OEBPS/Images/Figure-P28_3451.jpg?sign=1738827668-0sa0snOlarwaKk9UJBKv6L5C4rK2Go9i-0-c88880a16fb64046fa0e0c0d1ff4d58f)
2
![](https://epubservercos.yuewen.com/1C2139/31397789403525706/epubprivate/OEBPS/Images/Figure-P28_3454.jpg?sign=1738827668-5TF5eMqW9mQFsD3LObb1WoMNyN358FGo-0-0c63e9fdd2ce6c99d002f116a258328f)
3
![](https://epubservercos.yuewen.com/1C2139/31397789403525706/epubprivate/OEBPS/Images/Figure-P29_3463.jpg?sign=1738827668-Dnmwh7VD1IgcZffbTKNs6Mu98I3KQwON-0-d8767afbe34f83f038ab3eb41d7e51b9)
给上面每幅画,编写一段程序输出对应的诗句吧。
(1)
![](https://epubservercos.yuewen.com/1C2139/31397789403525706/epubprivate/OEBPS/Images/Figure-P29_28535.jpg?sign=1738827668-Qk0fVfnbXLj7Hr3Iz2VXLJRkwiBIXVY5-0-e3f9dee63743372c8f65b030571a344f)
(2)
![](https://epubservercos.yuewen.com/1C2139/31397789403525706/epubprivate/OEBPS/Images/Figure-P29_28536.jpg?sign=1738827668-RqpsTU7F5sPFsmCFrYPFFs6XrEsIS16u-0-7b314f1da5e6f5b11367608d9eb2e3a0)
(3)
![](https://epubservercos.yuewen.com/1C2139/31397789403525706/epubprivate/OEBPS/Images/Figure-P29_28537.jpg?sign=1738827668-h2jWYs9mRtGEjwyRWjJVoG4zZTmRWvA9-0-d5e8f9160f39ae71ab96a08ecb544632)
创造我的“ChatGPT”
ChatGPT是人工智能技术驱动的自然语言处理工具,它能够基于在预训练阶段所见的模式和统计规律生成回答,并且能根据聊天的上下文进行互动,实现像人类一样的聊天交流。此外,它甚至能完成撰写邮件、视频脚本、文案、翻译、代码以及写论文等任务。
ChatGPT太强大了,我非常崇拜它。虽然我只学了几天的C++,但是我决定创造一个。
![](https://epubservercos.yuewen.com/1C2139/31397789403525706/epubprivate/OEBPS/Images/Figure-P30_28541.jpg?sign=1738827668-YHtgaWKLiuAWek4hM0YC0hIXKD1VgD38-0-7c857803d528ecb1a31e51bdcb6acb12)
于是,我成功地创造了一个调皮的“ChatGPT”。
![](https://epubservercos.yuewen.com/1C2139/31397789403525706/epubprivate/OEBPS/Images/Figure-P30_28542.jpg?sign=1738827668-06AsW3W0KD6MshZ0fcCD2khvXTDW7m3M-0-68b1b624958ce7a40de7baccce79b9b1)
运行程序后,它问我:
我是蹩脚的ChatGPT,你有什么问题吗?
我提出问题:
怎样才能成为C++大神?
它回答道:
都说了我是蹩脚的ChatGPT,所以我不知道【怎样才能成为C++大神?】的答案。
运行效果是这样的:
![](https://epubservercos.yuewen.com/1C2139/31397789403525706/epubprivate/OEBPS/Images/Figure-P30_3568.jpg?sign=1738827668-YPFbDCgtEObRaTUDeTPMnN30i9dnGprF-0-ef048f845097d2e97589fa8bda0948e5)
![](https://epubservercos.yuewen.com/1C2139/31397789403525706/epubprivate/OEBPS/Images/Figure-P30_28543.jpg?sign=1738827668-NbqDpFIvdj6MhPSFeJoyF65zBQfMVbgE-0-eb53708c807cde3244a3983023545b31)
还真是蹩脚的程序,不过它竟然能知道我问的问题,看来它还是有两把刷子。让我们一起探索一下程序是如何知道我们提出问题的。
(1)要使用string工具,则先要将头文件包含进程序,使用预处理命令#include<string>。
(2)string question表示声明一个名为question的变量,该变量的类型是string。
敲黑板
想象一下,在计算机中,你创建了一个魔法盒子,可以用来存放各种东西。这个盒子上贴着一个特殊的标签,叫作“变量”。当我们需要往计算机里存放东西时,就去创建一个魔法盒子。
举一个例子:现在我创建了一个question的魔法盒子(变量),把我输入的问题存放在里面。当我或者计算机想要知道里面的问题时,只需要找到question就可以知道里面存放的内容。
在计算机中,将东西放入魔法盒子(变量),通常是称为赋值。
(3)cin >> question将输入的内容赋值给question变量。这时候魔法盒子question里面存放的就是输入的内容。
翻译助力理解
● cin:是console input的缩写,表示从控制台输入数据。
划重点
>>方向是重点
方向代表了流向,cin >> question的流向是从输入流向变量。
![](https://epubservercos.yuewen.com/1C2139/31397789403525706/epubprivate/OEBPS/Images/Figure-P31_28553.jpg?sign=1738827668-1Kza1tf3Yhx8S4fMP5EvLxH4irSxcuDw-0-2345e7dd230421f2dad2cb0964b6adaf)
对比学习cout <<
(4)cout <<"都说了我是蹩脚的ChatGPT,所以我不知道[" + question + "]的答案。"。
因为将输入的问题赋值给了question,所以这里使用该变量就可以知道问题的内容了。虽然蹩脚,但是程序将回答的话语和问题用+进行了组合。
在C++中,放在双引号(" ")里面的内容被称为字符串,这样就能原样输出了。
如果是这样,编译器就会把question当作一个英文单词直接输出,而不是当作输出变量question中的内容。
cout << "都说了我是蹩脚的ChatGPT,所以我不知道[question]的答案。"
为了避免这个问题,伟大的发明者通过拆分再组合的方式实现了输出。将输出内容拆成3部分后通过+进行组合。
①"都说了我是蹩脚的ChatGPT,所以我不知道["
+
②question
+
③"]的答案。"
![](https://epubservercos.yuewen.com/1C2139/31397789403525706/epubprivate/OEBPS/Images/Figure-P32_28562.jpg?sign=1738827668-fKWoXfjCTEAyd64KapuXX6Wc5mmzobJk-0-f67e03b6319366d720ceccdecacb99f9)
人工智能的问候
试着与计算机对话,它可以记住你的名字、家乡、年龄等。
![](https://epubservercos.yuewen.com/1C2139/31397789403525706/epubprivate/OEBPS/Images/Figure-P32_28563.jpg?sign=1738827668-1YqsRVQvRTytUCwtkudOoGndI8EiOSLN-0-4bd4e4d4fa820b36985dcc0f69097fec)
运行看看结果:
![](https://epubservercos.yuewen.com/1C2139/31397789403525706/epubprivate/OEBPS/Images/Figure-P33_3652.jpg?sign=1738827668-A8gqB1kjs8hLoBHsM2R8cswNn7XPOfhe-0-a9458b7da609b7406f7292a2de617035)
巩固练习
(1)哪段代码可以将键盘输入的内容赋值给变量word?( )
A.cout >> word
B.cin << word
C.cout << word
D.cin >> word
(2)以下代码可以输出“杨梅和葡萄真好吃!”。( )√( )×
![](https://epubservercos.yuewen.com/1C2139/31397789403525706/epubprivate/OEBPS/Images/Figure-P33_28567.jpg?sign=1738827668-kElmnoeuJ4MkodIxnNK09zcKzqxQ8d2Y-0-fe710d5aca528cb5cea4699c38c76f37)
(3)脑洞大开,制作一段有趣的问答程序。