![中学生C++创意编程](https://wfqqreader-1252317822.image.myqcloud.com/cover/61/45938061/b_45938061.jpg)
第2课 求生者密码——编程体验
![](https://epubservercos.yuewen.com/8AF596/25073779801900006/epubprivate/OEBPS/Images/erweima02.jpg?sign=1739294578-oTyfudOlRy8HI75XPWffZMmIVdC0SQxh-0-e8b67c6ffd74b47af374611898c7969e)
扫一扫,看视频
读故事
“密室逃脱”游戏中,求生者的主要任务就是尽快破译密码机,这样才不会被监管者发现,因此如何在短时间内破译更多的密码机是逃生的关键。玩家杰克发现了一个通用密码——*#06#,每次只需要在计算机屏幕上输出“*#06#”,就能快速破译一个密码机。
![](https://epubservercos.yuewen.com/8AF596/25073779801900006/epubprivate/OEBPS/Images/12.jpg?sign=1739294578-4jChtj2HroALRrVpDqCIB2Pba5xkuOXs-0-7f50bc08c710b3b3326dbbc9c525d735)
编程任务:编写程序,在计算机屏幕上输出密码“*#06#”。
理思路
1.理解题意
利用Dev-C++软件编写程序,程序功能是输出一串字符“*#06#”。
2.问题思考
?问题1
如何编写输出程序代码?
?问题2
如何编译运行程序?
3.算法分析
若使用C++语言,实现在计算机屏幕上输出一串字符,需要用到cout语句输出指令,而指令需要在包含头文件和主函数的框架中执行。后面讲到的每个程序都需要在此框架中执行,初学者可先记住此框架,后面慢慢理解其含义。
程序流程图如下图所示。
![](https://epubservercos.yuewen.com/8AF596/25073779801900006/epubprivate/OEBPS/Images/14.jpg?sign=1739294578-WYVhXJNBDFpEv1UOcUPOb4LbQp63LrWC-0-94812f221376ef95dff7055cb0be72f7)
查秘籍
1.新建源文件
启动Dev-C++软件,选择“文件”→“新建”→“源代码”命令(或按<Ctrl>+<N>组合键),新建一个源代码文件,默认名称为“未命名1”。要养成良好的编程习惯,即为每次新建的程序文件重新命名。
2.C++程序的基本框架
![](https://epubservercos.yuewen.com/8AF596/25073779801900006/epubprivate/OEBPS/Images/tx005.jpg?sign=1739294578-PszZYFefvYgfC69WkbDqzXRP56CLlsI8-0-d110d475d911dc9d060d7b177587da56)
3.cout语句
cout是输出语句,它的语法格式如下。
![](https://epubservercos.yuewen.com/8AF596/25073779801900006/epubprivate/OEBPS/Images/16.jpg?sign=1739294578-6uDWxBofzEueo7M1yP1btHh7aXwmMHOe-0-cc9ca08a7d9b7386cff04bc2592fb808)
格式:cout<< ;
示例:cout<<"Hello world"; //输出Hello world
cout<<6+2; //输出8
![](https://epubservercos.yuewen.com/8AF596/25073779801900006/epubprivate/OEBPS/Images/17.jpg?sign=1739294578-zyKeVPlbtcJCJB5tc4XDw8glUICu6Bph-0-4c98934f201fcf334c9fe5be97b05471)
功能:输出一个字符常量或一个表达式的值。输出的内容如果用英文的双引号标识,则内容为字符常量,cout语句将按原样输出;如果没有用英文的双引号标识,则内容为表达式,cout语句将输出表达式的值。
4.编译运行
程序代码编写好之后,需要将程序指令翻译成机器语言,让计算机执行,这就是编译。编译的过程需要在Dev-C++中完成。
通常是先编译程序再运行程序。在“运行”菜单中选择“编译”命令,如果提示编译成功,就可以运行程序;也可以在“运行”菜单中选择“编译运行”命令,或者按<F11>键,编译并运行程序。
![](https://epubservercos.yuewen.com/8AF596/25073779801900006/epubprivate/OEBPS/Images/tx006.jpg?sign=1739294578-Nih1NEXViGAmLDJGegZZzpR7le4XQS40-0-1dae36a2b5fc091d899cb9c1dcc0702d)
如果代码中有编写错误,编译时会有红色文字提示,只有先修改代码才能再次尝试编译。
![](https://epubservercos.yuewen.com/8AF596/25073779801900006/epubprivate/OEBPS/Images/18.jpg?sign=1739294578-0YJqna0K7YBF9Tu9lYW84M2viW8h2wnL-0-8d9f480dcd45fdc9d616fc8bb0133080)
求解决
1.编程实现
在代码编辑区编写程序代码,并以“1-2-1.cpp 第2课 求生者密码——编程体验”为文件名保存。
文件名 1-2-1.cpp 第2课 求生者密码——编程体验
![](https://epubservercos.yuewen.com/8AF596/25073779801900006/epubprivate/OEBPS/Images/20.jpg?sign=1739294578-gBbYeyOEjHVNFqlQn6uYYiabiOWK3NHQ-0-3ee89871550c4683b8ee7c4794b7b92b)
2.测试程序
程序运行结果如下图所示。
![](https://epubservercos.yuewen.com/8AF596/25073779801900006/epubprivate/OEBPS/Images/tx007.jpg?sign=1739294578-V9dDCVgWMC6Kfn4UkIUnqr8Q6NFnanHF-0-5f9b3281cd05abb677fda8c9ad191c18)
3.程序解读
在本程序中,我们可以理解为除了第5行的输出语句,其他行的代码构成了C++程序的基本框架,此框架在后面讲到的每个程序中都有应用,读者需牢记。第5行的位置是写程序的地方。本程序是输出一句话,所以就用输出语句cout来实现。
4.易犯错误
在编写程序代码时,除了头文件#include<iostream>和主函数外,每一行语句指令要结束时,其后面都要加上一个英文分号。这个英文分号常常被编程初学者遗漏。此外,要注意代码字母的大小写,指令中出现的符号都是英文符号;不要滥用空格,应合理缩进代码,以保证程序的美观性和可读性。
阅览室
1.连续输出
如果程序中有多个要输出的内容,如要输出表达式“54*78”以及它的值,我们就可以这样写程序:
cout<<"54*78="<<54*78;
输出结果:
54*78=4212
2.换行输出
如果程序中需要多行输出,就要在需要换行的地方加上换行指令endl。例如,要分两行输出“我是中国人,我爱我的祖国!”,我们就可以这样写程序:
cout<<"我是中国人,"<<endl;
cout<<"我爱我的祖国!";
也可以这样写:
cout<<"我是中国人,"<<endl<<"我爱我的祖国!";
程序运行结果如下图所示。
![](https://epubservercos.yuewen.com/8AF596/25073779801900006/epubprivate/OEBPS/Images/tx008.jpg?sign=1739294578-tWgCEt8tAm8gy9W9RKhGfaJlQBsBbHCV-0-5abc66e7ca841c8283331e085d772901)
练武功
1.修改程序
下图所示的程序代码,其功能是计算并输出12的平方值,其中有两处错误,请你改正。
练习1
![](https://epubservercos.yuewen.com/8AF596/25073779801900006/epubprivate/OEBPS/Images/tx009.jpg?sign=1739294578-aJ8a0gIp2WAhtEUUmNDImvKY2rm6rIgM-0-9899342ea2f5c93258b0ffeff0438a7f)
修改程序:①_____________________________________________
②_____________________________________________
2.编写程序
试编写一个程序,输出下图所示的金字塔图形。
![](https://epubservercos.yuewen.com/8AF596/25073779801900006/epubprivate/OEBPS/Images/tx010.jpg?sign=1739294578-HhPPT2PxRe4UB09cW6HAHqPVaZWs0Jwa-0-b097364d1ce542bc550dd57a05a24a41)