第一章 概述
1.1 C语言的发展和特点
1.1.1 程序设计语言
1.1.2 C语言简介
1.1.3 C语言的特点
1.2 数据结构概述
1.2.1 数据结构的基本概念和术语
1.2.2 关于算法分析
1.3 C语言程序结构及特点
1.3.1 简单程序实例
1.3.2 C语言程序的结构特点
1.4 C语言程序上机步骤
1.4.1 TurboC中运行C程序的步骤
1.4.2 TurboC编辑功能键
本章小结
实验一
习题一
第二章 数据类型与基本操作
2.1 C语言的数据类型
2.2 常量和变量
2.2.1 常量
2.2.2 变量
2.2.3 各种类型数据的存储和取值范围
2.2.4 变量赋值
2.3 运算符和表达式
2.3.1 C语言所提供的运算符
2.3.2 算术运算
2.3.3 赋值运算
2.3.4 复合赋值运算
2.3.5 逗号运算
2.4 不同类型数据间的转换
2.4.1 不同类型数据的隐式转换
2.4.2 不同类型数据的显示转换
2.5 基本输入与输出
2.5.1 数据输出
2.5.2 数据输入
2.5.3 数据输入、输出应用举例
本章小结
实验二
习题二
第三章 C语言程序的流程控制
3.1 程序设计基础知识
3.1.1 程序流程图
3.1.2 程序设计方法
3.2 基本C语句
3.2.1 表达式语句
3.2.2 复合语句
3.2.3 流程控制语句
3.3 关系运算及逻辑运算
3.3.1 关系运算
3.3.2 逻辑运算
3.3.3 条件运算
3.4 选择结构程序设计
3.4.1 条件语句
3.4.2 switc语句
3.5 循环程序结构设计
3.5.1 while 语句
3.5.2 do...while 循环语句
3.5.3 for循环语句
3.5.4 循环嵌套
3.5.5 continue和break
3.6 循环程序举例
3.6.1 三种循环的比较
3.6.2 应用举例
本章小结
实验三
习题三
第四章 函数定义及调用
4.1 函数的定义
4.1.1 函数声明
4.1.2 函数调用
4.1.3 函数的递归调用
4.2 变量的存储属性
4.3 局部变量与全局变量
4.3.1 局部变量与全局变量
4.3.2 动态变量与静态变量
4.3.3 寄存器变量
4.4 C语言的编译预处理
4.4.1 宏定义#define命令
4.4.2 文件包含#include命令
本章小结
实验四
习题四
第五章 数组数据类型及其应用
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.3.4 二维字符数组及字符串的应用
5.3.5 字符串应用举例
5.4 线性表
5.4.1 线性表的定义和基本运算
5.4.2 线性表存储结构
5.4.3 线性表的运算
5.5 栈和队列
5.5.1 栈
5.5.2 队列
5.6 稀疏矩阵
5.7 常用数据查找算法
5.7.1 顺序查找
5.7.2 折半查找
5.8 常用数据排序算法
5.8.1 基本概念
5.8.2 插入排序
5.8.3 交换排序
5.8.4 选择排序
本章小结
实验五
实验六
习题五
第六章 指针
6.1 指针的概念
6.2 指针变量的定义和引用
6.2.1 指针变量的定义
6.2.2 指针变量的引用
6.2.3 有关指针的两个运算符
6.2.4 指针变量的应用举例
6.3 指针与数组
6.3.1 一维数组与指针
6.3.2 二维数组的指针表示法
6.4 指针与字符串
6.5 指针与函数
6.5.1 指针变量作为函数的参数
6.5.2 返回指针值的函数
6.5.3 指向函数的指针变量
本章小结
实验七
习题六
第七章 结构体与共用体数据类型
7.1 结构体数据类型的定义和引用
7.1.1 结构体类型的定义
7.1.2 结构体类型变量的定义
7.1.3 结构体类型变量的引用
7.1.4 结构体类型变量的初始化
7.2 结构体数组及初始化
7.2.1 结构体数组的定义
7.2.2 结构体数组初始化
7.3 结构体与指针
7.3.1 指向结构体变量的指针
7.3.2 指向结构体数组的指针
7.4 结构体与函数
7.5 线性链表
7.5.1 线性链表的概念
7.5.2 内丰单元的动态分配
7.5.3 线性链表的初始化、建立和输出
7.5.4 线性链表的基本操作
7.6 循环链表
7.6.1 循环链表
7.6.2 双向循环链表
7.7 链栈和链队
7.7.1 链栈
7.7.2 链队
7.8 共用体数据类型
7.8.1 共用体类型的定义
7.8.2 共用体类型变量的引用
7.9 枚举类型
本章小结
实验八
习题七
第八章 树
8.1 树的基本概念
8.1.1 树的定义
8.1.2 树的基本术语
8.2 树的存储结构
8.2.1 双亲表示法
8.2.2 孩子表示法
8.2.3 孩子史弟表示法
8.3 二叉树
8.3.1 二叉树的定义和性质
8.3.2 二叉树的存储结构
8.4 二叉树的遍历
8.4.1 二叉树的中根遍历
8.4.2 二叉树的先根遍历
8.4.3 二叉树的后根遍历
8.5 线索树
8.5.1 线索树结构
8.5.2 中根线索树的建立
8.5.3 结点的检索
8.5.4 结点的插入
8.6 二叉查找树
8.6.1 二叉查找树的定义及其结构
8.6.2 二叉查找树的建立
8.6.3 二叉查找树的查找过程
8.6.4 二叉查找树的删除
8.6.5 二叉查找树的查找分析及评价
8.7 堆排序
8.7.1 堆定义
8.7.2 堆的建立
8.7.3 堆的排序实现
本章小结
实验九
习题八
第九章 图
9.1 基本概念
9.2 图的存储结构
9.2.1 邻接矩阵
9.2.2 邻接表
9.3 图的遍历
9.3.1 深度优选搜索
9.3.2 广度优先搜索
9.4 拓扑排序
9.5 最短路径
9.5.1 从某一源点到其他各项点的最短路径
9.5.2 每对顶点间的最短路径
本章小结
习题九章
第十章 文件
10.1 C文件概述
10.1.1 流和文件
10.1.2 缓冲区文件与非缓冲区文件
10.2 文件的打开与关闭
10.2.1 缓冲区的文件定义
10.2.2 文件的打开与关闭
10.3 文件的输入与输出
10.3.1 读写一个字符
10.3.2 读写一个字符串
10.3.3 读写数据字段
10.3.4 格式化读写
10.4 文件的定位与随机读写
10.4.1 rewind( )函数
10.4.2 fseek( )函数
10.4.3 ftell( )函数
本章小结
实验十
习题十
第十一章 C语言的位运算
11.1 位运算符
11.1.1 按位与运算符(&)
11.1.2 按位或运算符(|)
11.1.3 接位异或运算符(^)
11.1.4 取反运算符(~)
11.1.5 左移运算符(《)
11.1.6 右移运算符(》)
11.2 位段
本章小结
习题十一
第十二章 图形及用户界面技术
12.1 设置图形模式
12.1.1 几种工作模式及特点
12.1.2 图形模式的初始化
12.1.3 颜色的设置
12.2 图形函数及图形设计
12.2.1 画点
12.2.2 画线
12.2.3 画圆
12.2.4 画组合圆
12.3 窗口设计
12.3.1 什么是窗口
12.3.2 如何定义窗口
12.3.3 文本窗口的颜色设置
12.3.4 窗口的操作函数
12.3.5 窗口设计示例
12.4 光带选择菜单设计
12.4.1 功能键识别
12.4.2 光标控制
12.4.3 利用标准输出函数设计菜单
12.4.4 利用窗口操作函数设计菜单
12.5 应用举例
本章小结
实验十一
习题十二
附录1 TurboC的安装及各选项的作用
附录2 错误信息英中文对照
附录3 ASCII 代码与字符对照表
附录4 关键字和运算符
附录5 常用库函数
参考文献