编程竞赛宝典:C++语言和算法入门主要观点

简介: 信息学奥赛金牌教练精心之作,算法竞赛宝典。

第01章

C++语言入门

计算机编程语言能够实现人与计算机之间的沟通与交流,使计算机能够根据人编写的代码一步一步地工作,完成某些特定的任务。C++语言是使用最广泛的编程语言之一,也是许多编程竞赛指定的编程语言之一。

1.1 我的第一个程序

扫码看视频

我们使用Dev-C++这个适合初学者使用的C/C++集成开发环境来学习C++语言,读者可上网搜索“Dev C++ 下载”等关键词从网上下载该软件,或者使用浏览器访问www.magicoj.com(或者www.razxhoi.com),下载它的改进版本——Dev-CPP智能开发平台,如图1.1所示。

图1.1

安装界面如图1.2(a)所示。单击其中的“下一步”按钮,出现选择目标位置的界面,建议继续单击“下一步”按钮默认安装,如图1.2(b)所示。

图1.2

安装完成后运行软件,将出现初始设置界面。

如果没有出现初始设置界面或者弹出错误对话框(因为未正确卸载旧版Dev-C++)等,可在软件的“工具”菜单里选择“环境选项”,在“文件和路径”选项卡中单击“删除设置并退出”按钮,再重新运行软件即可恢复正常,如图1.3所示。

图1.3

设置好的软件界面(Dev-CPP智能开发平台支持换肤功能)如图1.4所示。

图1.4

存放代码的文件称为源代码文件,编写代码之前要新建一个源代码文件,图1.5所示为新建源代码文件的两种方法。

图1.5

如图1.6所示,由模板自动生成的代码(若使用的非Dev-CPP智能开发平台则用户需手动输入)显示在代码编辑区。

图1.6

如果不想要自动生成代码,想自己手动输入全部代码,只要在“工具”→“环境选项”中将新建文件时选中的“自动加载模板”选项取消即可。

#include <bits/stdc++.h> 表示编写的代码要包含子目录bits下的一个名为“stdc++.h”的头文件。之所以叫作头文件,是因为这类文件一般放在代码的开头。C++有许多头文件,它们可以实现一些特定的功能。stdc++.h头文件又称“万能”头文件,因为代码中只要包含该头文件就基本无须再包含其他头文件了。

using namespace std;表示使用的命名空间为“std”(std是英文单词“standard”即“标准”的缩写),这主要是为了解决名字冲突的问题,初学者暂不必深究。

“int”是英文单词“integer”即“整数”的缩写,和第7行的return 0相呼应。“return”的中文含义是“返回”,而0是整数,意思是给系统(调用者)返回整数0。0表示一切运行正常,即“没有消息就是好消息”,显然代码能运行到return 0,说明代码是正常结束而不是运行半途出错、异常退出的。

“main”的中文含义是“主要的”,C++程序里,必须有且只能有一个名为“main”的函数(主函数)。函数是指能完成一定功能的程序块,函数后面有圆括号,随后函数体用花括号标注,即第5~第8行。

C++程序的运行总是由main()函数的函数体里的第一条语句开始,到main()函数的函数体的最后一条语句结束。

现在编写代码,使程序运行后显示一行字符“Hello,world”,这需要在代码编辑区第6行空白处加入cout<<"Hello,world\n";,如图1.7所示。

图1.7

cout用于输出紧随操作符“<<”后的双引号中的字符串,输出的字符串必须包含在双引号之中,其中“\n”表示换行。

C++语言对字母大小写敏感,例如字母“a”和“A”不同。

除输出内容有中文,需要用中文输入法在双引号中输入中文字符外,其他字符都必须用英文输入法输入,否则代码可能无法运行。

C++语言中,每条语句末尾应以分号(;)表示结束,但预处理、函数头及花括号之后一般不加分号。

版权:人民邮电出版社