第1章 C语言概述 1
1.1 C语言的发展历史 1
1.2使用C语言的优势 1
1.3 C语言程序基本结构 2
1.3.1 C语言程序范例 2
1.3.2 C语言程序结构特点 4
1.4 C语言程序的开发过程 4
本章小结 6
习题1 7
第2章 数据类型 8
2.1数据类型的分类 8
2.1.1什么是数据类型 8
2.1.2 C语言的数据类型分类 9
2.2常量 11
2.2.1整型常量 11
2.2.2字符串常量 14
2.2.3实型常量 15
2.3变量 15
2.3.1什么是变量 15
2.3.2变量定义语句 16
2.4标准输入输出函数 17
本章小结 25
习题2 25
第3章 运算符和表达式 29
3.1运算符与运算符的分类 29
3.2表达式与表达式的计算 36
3.2.1表达式 36
3.2.2复合表达式的计算 37
3.2.3数据类型转换 40
本章小结 42
习题3 42
第4章 语句 45
4.1基本语句 45
4.2流程控制语句 46
4.2.1程序流程 47
4.2.2分支语句 49
4.2.3循环语句 55
4.2.4转向语句 62
4.2.5综合举例 66
本章小结 69
习题4 69
第5章 数组 75
5.1一维数组 75
5.1.1一维数组的定义 75
5.1.2一维数组元素的引用 76
5.1.3一维数组的初始化 77
5.1.4一维数组应用举例 77
5.2二维数组和多维数组 82
5.2.1二维数组和多维数组的定义 82
5.2.2二维数组和多维数组的引用 84
5.2.3二维数组和多维数组的初始化 84
5.2.4二维数组和多维数组的举例 86
5.3字符数组和字符串 89
5.3.1字符数组 89
5.3.2字符串 91
5.3.3字符串处理函数 92
5.3.4字符数组的举例 98
本章小结 101
习题5 102
第6章 函数 104
6.1函数的概念 104
6.2函数的定义和说明 105
6.2.1函数的定义 105
6.2.2函数声明 107
6.3函数调用 109
6.4函数传递机制 113
6.5递归 118
6.6变量的作用域及存储类别 122
6.6.1变量的作用域 122
6.6.2变量的存储类别 125
6.7库函数 129
6.7.1库函数简介 129
6.7.2常用库函数 130
本章小结 134
习题6 135
第7章 指针 138
7.1指针的概念 138
7.2指针变量的定义 139
7.3指针的运算 141
7.3.1指针变量的赋值运算 141
7.3.2指针变量的算术运算 142
7.3.3指针变量的关系运算 146
7.4指向数组的指针 146
7.5字符串的指针 149
7.6函数与指针 151
7.6.1指针变量作为函数参数 151
7.6.2指针型函数 154
7.6.3指向函数的指针 155
7.7指针数组和二维数组的行指针 157
7.7.1指针数组的定义和应用 157
7.7.2二维数组的行指针 160
7.7.3 main函数的参数 162
7.8指向指针的指针 164
7.8.1二级指针的定义 164
7.8.2二级指针的应用 164
7.9有关指针的数据类型和指针运算的小结 165
7.9.1有关指针的数据类型的小结 165
7.9.2指针运算的小结 166
7.9.3 void指针类型 166
7.10与指针有关的C程序典型举例 166
本章小结 173
习题7 174
第8章 文件包含和预编译 184
8.1宏定义 184
8.1.1不带参数的宏定义 184
8.1.2带参数的宏定义 188
8.2文件包含 190
8.3条件编译 192
本章小结 194
习题8 194
第9章 结构体与共用体 198
9.1结构体类型变量定义和引用 198
9.1.1结构体类型定义 198
9.1.2结构体类型变量定义 199
9.1.3结构体类型变量的初始化 201
9.1.4结构体类型变量的引用 201
9.2结构体数组 202
9.2.1结构体数组的定义 202
9.2.2结构体数组的初始化 203
9.2.3结构体数组的引用 203
9.2.4结构体数组的应用举例 203
9.3结构体指针 205
9.3.1指向结构体变量的指针 205
9.3.2指向结构体数组的指针 208
9.3.3用指向结构体的指针作函数参数 209
9.4链表 210
9.4.1用指针处理链表 211
9.4.2处理动态链表的函数 213
9.4.3建立链表 215
9.4.4输出链表 216
9.4.5链表的删除操作 217
9.4.6链表的插入操作 218
9.5共用体 220
9.5.1概念 220
9.5.2共用体类型的定义 220
9.5.3共用体变量的定义 221
9.5.4共用体变量的引用 221
9.5.5共用体类型数据的特点 223
9.6枚举类型 223
9.7类型定义 225
本章小结 227
习题9 227
第10章 位运算 230
10.1概述 230
10.2位运算符和位运算 230
10.2.1按位与运算符(&) 230
10.2.2按位或运算符(|) 232
10.2.3按位取反运算符(~) 232
10.2.4按位异或运算符(^) 233
10.2.5左移运算符(<<) 234
10.2.6右移运算符(>>) 235
10.2.7位运算赋值运算符 236
10.3位运算应用举例 236
10.4位段 240
10.4.1位段的概念 240
10.4.2位段的定义 240
10.4.3位段的引用 241
本章小结 242
习题10 242
第11章 文件 244
11.1 C语言文件的概念 244
11.2文件指针 245
11.3文件的打开与关闭 245
11.3.1文件的打开函数fopen 245
11.3.2文件关闭函数fclose 247
11.4文件的读写 247
11.4.1字符读写函数fgetc和fputc 247
11.4.2字符串读写函数fgets和fputs 251
11.4.3数据块读写函数fread和fwrite 252
11.4.4格式化读写函数f scanf和fprintf 254
11.5文件的随机读写 255
11.5.1文件定位 255
11.5.2获取文件指针当前位置 256
11.6文件检测函数 256
11.6.1文件结束检测函数feof 256
11.6.2读写文件出错检测函数 256
本章小结 257
习题11 257
附录A C语言实验指导 259
附录B 常用字符与ASCII码对照表 285
附录C Turbo C常用标准库函数 286
附录D C语言保留关键字 299
附录E 课后习题参考答案 300
参考文献 310