第1章 绪论
1.1 程序、程序设计和程序设计语言
1.1.1 程序与程序的运行过程
1.1.2 程序设计与程序设计语言
1.2 C语言简介
1.2.1 C语言的发展历史
1.2.2 C语言程序范例
1.3 小结
第2章 词法符号、数据类型
2.1 词法符号及分类
2.1.1 词法符号
2.1.2 词法符号的分类
2.2 数据类型
2.2.1 数据类型
2.2.2 C语言所支持的数据类型
2.3 常量
2.3.1 整常量
2.3.2 浮点常量
2.3.3 字符串常量
2.4 变量和变量定义
2.4.1 什么是变量
2.4.2 变量定义
2.5 标准输入和输出简介
2.5.1 标准输出函数printf
2.5.2 标准输入函数scanf
2.6 小结
第3章 运算符与表达式
3.1 运算符与运算符的分类
3.1.1 算术运算符
3.1.2 关系运算符
3.1.3 逻辑运算符
3.1.4 位运算符
3.1.5 条件运算符
3.1.6 赋值运算符
3.1.7 逗号运算符
3.1.8 括号运算符
3.1.9 地址运算符
3.1.10 成员访问运算符
3.1.11 sizeof运算符
3.2 表达式与表达式的计算
3.2.1 表达式
3.2.2 复合表达式的计算
3.2.3 数据类型转换
3.3 小结
第4章 语句
4.1 基本语句
4.1.1 表达式语句
4.1.2 空语句
4.1.3 块语句
4.1.4 变量定义语句
4.1.5 typedef语句
4.2 流程控制语句
4.2.1 结构化程序设计
4.2.2 选择语句(分支语句)
4.2.3 循环语句
4.2.4 转向语句
4.3 小结
第5章 函数
5.1 函数
5.1.1 函数的意义
5.1.2 函数的定义和声明
5.1.3 函数调用
5.1.4 函数的调用过程与参数传递过程
5.2 递归
5.2.1 递归的概念
5.2.2 递归三要素
5.2.3 递归函数设计举例
5.3 库函数
5.3.1 库函数
5.3.2 常用标准库函数
5.3.3 文件操作
5.4 小结
第6章 预编译
6.1 宏定义
6.1.1 不带参数的宏定义
6.1.2 带参数的宏定义
6.2 文件包含
6.3 条件编译
6.4 小结
第7章 作用域、存储类型
7.1 作用域
7.1.1 局部作用域和函数作用域
7.1.2 全局作用域
7.1.3 同名标识符规则
7.2 存储类型
7.2.1 寄存器变量
7.2.2 自动变量
7.2.3 静态局部变量
7.2.4 全局变量
7.3 多源文件程序结构
7.3.1 多源文件程序结构
7.3.2 源文件间的相互引用
7.3.3 函数和变量的连接性
7.4 小结
第8章 数组和指针
8.1 一维数组
8.1.1 一维数组的定义与初始化
8.1.2 数组元素的访问
8.1.3 一维数组举例
8.2 多维数组
8.2.1 二维数组
8.2.2 多维数组
8.3 指针
8.3.1 指针的概念
8.3.2 指针变量的定义
8.3.3 指针的运算
8.3.4 指针与数组的关系
8.4 指针与数组的复合类型
8.4.1 数组的数组
8.4.2 指向数组的指针
8.4.3 指针的数组
8.4.4 指针的指针
8.4.5 其他指针与数组的复合类型举例
8.5 字符串
8.5.1 字符串的意义
8.5.2 字符串的基本操作
8.5.3 字符串处理库函数
8.6 指针与函数
8.6.1 指针类型的参数
8.6.2 指针类型的返回值
8.6.3 函数指针
8.7 动态空间分配
8.7.1 内存空间的分配结构
8.7.2 动态空间分配的意义
8.7.3 动态空间分配的相关库函数
8.7.4 动态空间分配的应用举例
8.8 带参数的main函数
8.9 小结
第9章 结构与联台
9.1 结构类型
9.2 结构变量
9.2.1 结构变量的定义与使用
9.2.2 结构数组
9.2.3 结构指针
9.2.4 链表
9.2.5 结构变量与函数
9.3 联合
9.4 位域
9.5 小结
第10章 排错与测试
10.1 排错
10.1.1 编译错误
10.1.2 运行错误
10.2 测试
10.3 小结
第11章 C++简介
11.1 C++的发展历史
11.2 C++对C语言语法的一些改进
11.2.1 加强了类型匹配的检查
11.2.2 放宽了对定义语句位置的限制
11.2.3 常量变量
11.2.4 嵌入函数
11.2.5 引用类型
11.2.6 new和delete运算符
11.3 C++与面向对象的程序设计思想
11.3.1 面向对象的思想
11.3.2 封装
11.3.3 继承
11.3.4 多态性
11.4 小结