第一部分基础知识篇
第1章C/C++程序设计概述
1.1C/C++程序简介
1.1.1C/C++的发展史
1.1.2C语言程序的特点
1.2算法
1.2.1算法的特性
1.2.2算法的表示
1.3C程序的基本结构及基本词法
1.3.1C程序的基本结构
1.3.2C程序的基本词法
1.4面向对象程序设计概述
1.5C程序的编译环境和运行方法介绍
1.6Visual C++ 6.0的上机环境介绍
1.6.1Visual C++的安装和启动
1.6.2输入和编辑源程序
1.6.3编译、连接源程序
1.6.4建立和运行多文件程序
实训1简单C程序的调试和运行
本章小结
习题1
第2章数据类型、运算符与表达式
2.1C语言数据类型
2.2变量、常量和标识符
2.2.1标识符
2.2.2变量
2.2.3常量
2.3整型数据
2.3.1整型常量
2.3.2整型变量
2.4浮点型数据
2.4.1浮点型常量
2.4.2浮点型变量
2.5字符型数据
2.5.1字符常量
2.5.2字符变量
2.5.3字符串常量
2.6运算符与表达式
2.6.1算术运算符和算术表达式
2.6.2关系运算符和关系表达式
2.6.3逻辑运算符和逻辑表达式
2.6.4赋值运算符和赋值表达式
2.6.5逗号运算符和逗号表达式
2.6.6变量的自增、自减运算符
2.6.7长度运算符
2.6.8运算符的优先级、结合性及混合运算问题
2.7常用的输入/输出库函数
2.7.1字符数据的输入/输出
2.7.2格式输入与输出函数
2.8综合运算举例
实训2字符数据的输入与输出
实训3格式输入与输出函数的应用
本章小结
习题2
第3章程序控制结构
3.1顺序结构程序设计
3.2选择结构程序设计
3.2.1if语句的3种形式
3.2.2条件运算符和条件表达式
3.2.3switch语句实现多分支选择结构
3.3循环结构程序设计
3.3.1当循环结构(while)
3.3.2直到型循环结构(do…while)
3.3.3次数循环结构(for)
3.3.4循环嵌套与多重循环结构
3.3.5goto语句及标号语句
3.3.6几种循环语句的比较
3.3.7循环体内break语句和continue语句
3.4程序控制结构综合举例
实训4多分支选择结构程序设计
实训5双重循环结构程序设计
实训6多重循环结构程序设计
本章小结
习题3
第4章数组
4.1一维数组
4.1.1一维数组的定义
4.1.2一维数组的存储形式
4.1.3一维数组元素的引用
4.1.4一维数组的初始化
4.1.5一维数组程序设计举例
4.2二维数组及多维数组
4.2.1二维数组及多维数组的定义
4.2.2二维数组及多维数组的存储形式
4.2.3二维数组元素的引用
4.2.4二维数组元素的初始化
4.2.5二维数组程序设计举例
4.3字符数组与字符串
4.3.1字符数组与字符串
4.3.2字符数组的输入与输出
4.3.3字符串处理函数
4.3.4字符数组程序设计举例
实训7数组程序设计
实训8字符数组程序设计
本章小结
习题4
第5章函数
5.1函数概述
5.1.1函数的概念
5.1.2函数的分类
5.2C函数的定义和调用
5.2.1函数的定义
5.2.2函数的调用
5.2.3C++中函数形参默认值
5.3C++中的函数重载
5.4函数间的数据传递
5.4.1值传递方式
5.4.2地址传递方式
5.4.3返回值方式
5.4.4全局变量传递方式
5.4.5在C++中访问全局变量
5.4.6变量的存储类型
5.5递归调用与递归函数
5.5.1递归函数的特点
5.5.2递归函数的设计
5.6内部函数和外部函数
5.6.1内部函数
5.6.2外部函数
5.7函数应用程序综合举例
实训9函数应用程序设计
实训10参数传递方式的程序设计
本章小结
习题5
第6章指针
6.1指针的基本概念
6.1.1内存地址、变量地址及指针
6.1.2指针变量的定义与引用
6.2指针与数组
6.2.1指针与一维数组
6.2.2指针与二维数组
6.2.3指针与字符串
6.2.4指针数组
6.2.5多级指针
6.3指针与函数
6.3.1指向函数的指针
6.3.2返回指针的函数
6.3.3主函数main的参数
6.4指针程序综合举例
实训11指针程序设计
本章小结
习题6
第7章结构体和共用体
7.1结构体
7.1.1结构体概述
7.1.2结构体数组
7.1.3结构体指针
7.1.4结构体与函数
7.1.5结构体指针的应用——链表
7.2共用体
7.2.1共用体的基本概念
7.2.2共用体变量的引用和初始化
7.2.3共用体的应用
7.3枚举类型
7.3.1枚举类型的基本概念
7.3.2枚举变量的引用和初始化
7.3.3枚举类型的应用
7.4用户自定义类型
7.4.1用户自定义类型的定义形式
7.4.2用户自定义类型声明新类型的方法
7.4.3使用用户自定义类型的有关说明
7.5综合程序设计举例
实训12结构体程序设计
实训13共用体程序设计
本章小结
习题7
第8章编译预处理
8.1宏定义
8.1.1不带参数的宏定义
8.1.2带参数的宏定义
8.2文件包含
8.3条件编译
8.3.1指定表达式真假值
8.3.2指定某种符号是否定义
实训14宏定义、文件包含的应用
实训15条件编译的应用
本章小结
习题8
第9章面向对象程序设计基础
9.1面向对象程序设计
9.1.1面向对象的基本原理
9.1.2面向对象程序设计的基本特点
9.2类与对象
9.2.1C++中类的定义
9.2.2类成员的访问控制
9.2.3类的成员函数
9.2.4类的对象变量定义及访问
9.3构造函数和析构函数
9.3.1构造函数
9.3.2析构函数
9.3.3指向对象的指针变量
9.4继承与派生
9.4.1C++的继承机制
9.4.2派生类的定义
9.4.3派生类的3种继承方式
9.4.4类型兼容规则
9.4.5派生类的构造函数和析构函数
9.4.6派生类成员的标识与访问
9.5多态性
9.5.1多态性概述
9.5.2虚函数
9.5.3纯虚函数和抽象类
9.6面向对象程序设计综合举例
实训16构造函数和析构函数的应用
实训17类的继承和派生、多态性的综合应用
本章小结
习题9
第10章位运算
10.1位运算符
10.1.1按位与运算
10.1.2按位或运算
10.1.3按位异或运算
10.1.4求反运算
10.1.5左移运算
10.1.6右移运算
10.2位域(位段)
10.3综合位运算举例
本章小结
习题10
第11章文件
11.1文件概述
11.2文件指针
11.3文件的打开与关闭
11.3.1文件打开函数(fopen函数)
11.3.2文件关闭函数(fclose函数)
11.4文件的读/写
11.4.1字符读/写函数(fgetc和fputc函数)
11.4.2字符串读/写函数(fgets和fputs函数)
11.4.3数据块读/写函数(fread和fwrite函数)
11.4.4格式化读/写函数(fscanf和fprintf函数)
11.5文件的随机读/写
11.5.1文件定位
11.5.2文件的随机读/写的应用
11.6文件检测函数
11.7C库文件
11.8文件应用程序举例
本章小结
习题11
第二部分综合提炼篇
第12章综合课程设计
12.1课程设计的培养目标
12.2课程设计的目的和要求
12.3课程设计的实现步骤
12.4课程设计报告的书写格式
12.5课程设计的成绩评定
12.6课程设计报告书的封面格式
12.7课程设计任务书
第13章提炼ACMICPC算法精解
13.1ACMICPC简介
13.2ACMICPC经典算法汇总
13.3ACMICPC算法精解
13.3.1三色旗问题
13.3.2八皇后问题
13.3.3Armstrong数
13.3.4最大访客数
13.3.5赌博游戏
13.3.6排列组合的算法
13.3.7奇数魔方阵
本章小结
附录AASCII码对照表
附录B常用运算符及其优先级
附录C常见的C语言库函数
参考文献