第1章 概述 1
1.1 C语言简介 1
1.2 C程序的基本结构 3
1.3 C程序上机步骤 4
1.4 数据结构概述 10
本章小结 13
实验一 C语言程序的编辑与运行 13
习题一 13
第2章 数据类型与基本操作 15
2.1 C语言的数据类型 15
2.2 常量和变量 16
2.3 运算符和表达式 24
2.4 基本输入与输出 30
本章小结 35
实验二 格式化输入、输出 35
实验三 字符的输入、输出 36
习题二 37
第3章 C语言程序的流程控制 39
3.1 程序设计的基础知识 39
3.2 C语言的基本语句 42
3.3 选择结构程序设计 43
3.4 循环结构程序设计 50
本章小结 57
实验四 顺序、选择结构程序设计 58
实验五 循环结构程序设计 59
习题三 60
第4章 函数 63
4.1 函数的定义及调用 63
4.2 变量的存储属性 71
4.3 内部函数和外部函数 78
4.4 C语言的编译预处理 79
本章小结 81
实验六 函数的定义及应用 82
习题四 83
第5章 数组数据类型及其应用 87
5.1 一维数组 87
5.2 二维数组 90
5.3 字符数组与字符串 92
5.4 线性表 98
5.5 栈和队列 101
本章小结 105
实验七 数组及线性表 105
实验八 栈及其应用 106
实验九 队列及其应用 107
习题五 108
第6章 查找与排序 111
6.1 常用数据查找算法 111
6.2 常用数据排序算法 116
本章小结 125
实验十 数据的查找与排序 126
习题六 136
第7章 指针数据类型及其应用 139
7.1 指针的概念 139
7.2 指针变量的定义和引用 140
7.3 指针与数组 142
7.4 指针与字符串 149
7.5 指针与函数 151
7.6 链表 153
7.7 链栈和链队列 161
本章小结 164
实验十一 指针的使用 164
实验十二 链表的使用 166
习题七 166
第8章 结构体与共用体 169
8.1 结构体数据类型的定义和引用 169
8.2 结构体数组及初始化 175
8.3 结构体与指针 176
8.4 结构体与函数 179
8.5 共用体数据类型 183
8.6 枚举类型 185
本章小结 187
实验十三 结构体与共用体的应用 187
习题八 188
第9章 树 192
9.1 树的基本概念 192
9.2 树的存储结构 193
9.3 二叉树 194
9.4 二叉树的遍历 199
9.5 二叉查找树 201
9.6 堆排序 204
本章小结 206
实验十四 二叉树的遍历 207
习题九 213
第10章 图 216
10.1 图的基本概念 216
10.2 图的存储结构 216
10.3 图的遍历 220
10.4 拓扑排序 222
10.5 最短路径 224
本章小结 227
实验十五 图的遍历 228
习题十 229
第11章 文件 231
11.1 C文件概述 231
11.2 文件的打开与关闭 232
11.3 文件的输入与输出 233
11.4 文件的定位与随机读写 238
本章小结 239
实验十六 文件操作 239
习题十一 240
第12章 位运算 242
12.1 位运算符 242
12.2 位段 244
本章小结 246
实验十七 位运算 246
习题十二 247
附录一 部分习题参考答案 249
附录二 ASCⅡ码表 253