第1章C语言概述 1
1.1程序与程序设计语言简介 1
1.1.1程序的基本概念 1
1.1.2程序设计语言 2
1.2 C语言的发展史 3
1.3 C语言的特点 4
1.4 C语言的词法记号 5
1.4.1 C语言的字符集 5
1.4.2标识符 5
1.4.3关键字 6
1.4.4语句 6
1.4.5标准库函数 6
1.5 C语言的简单实例 7
1.6 C语言程序的基本结构 8
1.7 C语言程序的编辑、编译、连接、运行 9
1.7.1源程序、目标程序及可执行程序的概念 9
1.7.2 C语言程序的执行过程 10
1.7.3实现问题求解的方法举例 10
1.8本章小结 13
习题1 13
第2章C语言程序设计基础 16
2.1 C语言的数据类型 16
2.1.1基本数据类型 16
2.1.2数据的存储 17
2.2常量与变量 18
2.2.1常量和符号常量 18
2.2.2变量 20
2.3运算符与表达式 21
2.3.1表达式的含义 22
2.3.2算术运算符及表达式 22
2.3.3赋值运算符及表达式 24
2.3.4关系运算符及表达式 25
2.3.5条件运算符及表达式 26
2.3.6逻辑运算符及表达式 26
2.3.7位运算符及表达式 27
2.3.8逗号运算符及表达式 28
2.3.9其他运算 29
2.4数据类型的转换 29
2.4.1自动转换(隐式转换) 29
2.4.2强制转换(显式转换) 30
2.5基本输入输出处理 31
2.5.1字符数据的输入和输出 32
2.5.2格式输入与输出 33
2.6应用举例 41
2.7本章小结 44
习题2 45
第3章 结构化程序设计基础 51
3.1算法的概念及表示 51
3.1.1算法的概念 51
3.1.2算法的表示 51
3.2顺序结构程序设计 53
3.2.1 C程序的语句 53
3.2.2顺序结构程序设计 55
3.3选择结构程序设计 56
3.3.1 if语句 56
3.3.2 switch语句 65
3.4循环结构程序设计 68
3.4.1 while语句 68
3.4.2 do-while语句 70
3.4.3 for语句 71
3.4.4多重循环 74
3.4.5跳转语句 75
3.4.6几种循环的比较 78
3.5应用举例 78
3.6本章小结 83
习题3 84
第4章 函数 90
4.1函数定义 90
4.1.1函数的分类 90
4.1.2函数的定义 91
4.1.3函数的参数与函数的值 93
4.2函数调用 95
4.2.1函数调用方法 95
4.2.2函数的参数传递 98
4.2.3函数的嵌套调用与递归调用 101
4.3变量的存储类别 106
4.3.1局部变量与全局变量 106
4.3.2变量的存储类型 110
4.4编译预处理 118
4.4.1编译预处理概述 118
4.4.2宏定义 119
4.4.3文件包含 123
4.4.4条件编译 124
4.5应用举例 126
4.6本章小结 128
习题4 129
第5章 数组 135
5.1数组基础知识 135
5.2一维数组 135
5.2.1一维数组的定义 135
5.2.2一维数组元素的引用 136
5.2.3一维数组的初始化 137
5.2.4一维数组元素的存储 138
5.2.5一维数组程序举例 138
5.3二维数组 139
5.3.1二维数组的定义 139
5.3.2二维数组元素的引用 139
5.3.3二维数组元素的存储 140
5.3.4二维数组的初始化 140
5.3.5二维数组程序举例 140
5.4字符数组与字符串 142
5.4.1字符数组的定义 143
5.4.2字符数组的初始化 143
5.4.3字符数组的引用 143
5.4.4字符串和字符串结束标志 144
5.4.5字符数组的输入输出 144
5.4.6字符串处理函数 146
5.5数组作函数的参数 149
5.5.1数组元素作函数的参数 149
5.5.2数组名作函数参数 150
5.5.3二维数组作为函数参数 151
5.6数组应用举例 152
5.7本章小结 159
习题5 160
第6章 指针 164
6.1指针的概念 164
6.2指针变量的定义和引用 165
6.2.1定义指针变量 165
6.2.2指针变量的引用 166
6.2.3多级指针变量 169
6.3指针与数组 170
6.3.1指向数组的指针变量的定义与赋值 170
6.3.2通过指针引用一维数组元素 171
6.3.3通过指针引用二维数组元素 172
6.3.4字符指针与字符串 174
6.3.5指针数组 175
6.4指针与函数 177
6.4.1指针变量做函数参数 177
6.4.2指向数组的指针作函数参数 179
6.4.3字符串指针作函数参数 181
6.4.4指针数组作为main()函数的参数 181
6.4.5返回指针值的函数 183
6.4.6用函数指针变量调用函数 184
6.5指针应用举例 187
6.6本章小结 190
习题6 190
第7章 构造数据类型 195
7.1结构体类型的定义 195
7.2结构体变量的定义、引用和初始化 196
7.2.1结构体变量的定义 196
7.2.2结构体变量的引用 198
7.2.3结构体变量的初始化 199
7.3结构体数组 199
7.3.1结构体数组的定义 199
7.3.2结构体数组的初始化 200
7.3.3结构体数组应用举例 201
7.4指针在结构体中的应用 202
7.4.1指向结构体变量的指针 202
7.4.2指向结构体数组的指针 203
7.4.3用结构体变量和指向结构体的指针作函数参数 205
7.5结构体应用举例 206
7.6共用体 207
7.6.1共用体及共用体变量的定义 207
7.6.2共用体变量的引用方式 208
7.6.3共用体类型数据的特点 208
7.7枚举类型 209
7.7.1枚举类型的定义 209
7.7.2枚举变量的定义 209
7.8自定义数据类型 210
7.9顺序表 211
7.9.1顺序表的定义和创建 211
7.9.2顺序表的基本操作 212
7.10链表 213
7.10.1链表概述 213
7.10.2链表的存储分配 214
7.10.3链表的建立及输出 215
7.10.4链表的基本操作 217
7.11综合应用举例 220
7.12本章小结 222
习题7 222
第8章 文件 225
8.1文件概述 225
8.2文件指针 226
8.3文件的操作 227
8.3.1文件的打开(fopen函数) 227
8.3.2文件的关闭(fclose函数) 228
8.3.3字符读写函数fgetc和fputc 229
8.3.4字符串读写函数fgets和fputs 230
8.3.5数据块读写函数fread和fwrite 231
8.3.6格式化读写函数fscanf和fprintf 233
8.3.7常用文件操作函数 234
8.4文件的定位 234
8.4.1重新定位函数rewind 235
8.4.2得到当前文件内部位置函数ftell 235
8.4.3移动文件内部位置函数fseek 235
8.5应用举例 236
8.6本章小结 238
习题8 239
附录A ASCII码表 242
附录B 运算符和结合性 246
附录C 常用函数 247
附录D C语言常见错误 253
附录E 计算机等级考试C语言(二级)笔试模拟试卷 258
参考文献 321