第1章 引言 1
1.1C语言的特点 1
1.2简单的C语言程序介绍 2
1.3C语言程序的结构 4
1.4C程序设计语言的执行 4
1.4.1源程序翻译 4
1.4.2链接目标程序 5
1.4.3集成开发环境 6
本章小结 7
习题一 8
第2章 程序的简单算法制定 9
2.1结构化程序的算法制定 9
2.2结构化程序的算法描述 10
2.2.1流程图 10
2.2.2N-S图 13
2.2.3PAD图 14
2.3算法制定范例 15
本章小结 17
习题二 18
第3章 基本程序语句 20
3.1C语言的数据类型简介 20
3.2几个基本概念 21
3.2.1标识符 21
3.2.2常量 21
3.2.3变量 22
3.3C语言的3种基本数据类型 23
3.3.1整型数据 23
3.3.2实型数据 25
3.3.3字符型数据 26
3.4基本运算符和表达式 27
3.4.1C语言运算符简介 27
3.4.2算术运算符和算术表达式 27
3.4.3赋值运算符和赋值表达式 28
3.4.4关系运算符和关系表达式 31
3.4.5逻辑运算符和逻辑表达式 32
3.4.6条件运算符和条件表达式 34
3.4.7逗号运算符和逗号表达式 34
3.4.8强制类型转换运算符 35
3.5C基本语句 36
3.5.1简单语句 36
3.5.2复合语句 37
3.6数据的输出 38
3.6.1格式化输出函数 38
3.6.2字符输出函数 43
3.7数据的输入 43
3.7.1格式化输入函数(scanf函数) 43
3.7.2字符输入函数 45
3.8简单程序设计举例 46
本章小结 48
习题三 48
第4章 选择结构 52
4.1if语句 52
4.1.1单分支if语句 52
4.1.2双分支if语句 53
4.1.3多分支if语句 55
4.2switch语句 58
4.2.1switch语句简介 58
4.2.2break语句在switch结构中的运用 60
4.3实例解析 61
本章小结 65
习题四 65
第5章 循环结构 71
5.1goto语句构成循环 71
5.2while循环结构 72
5.3do...while循环结构 73
5.4for循环结构 74
5.5循环结构的嵌套 76
5.6break语句和continue语句在循环结构中的运用 77
5.6.1break语句 77
5.6.2continue语句 78
5.7实例解析 80
本章小结 83
习题五 84
第6章 函数与编译预处理 90
6.1库函数 90
6.2函数的定义和说明 91
6.2.1函数的定义 91
6.2.2函数的返回值 93
6.2.3对被调用函数的说明和函数原型 94
6.3函数的调用 95
6.3.1函数调用的一般形式 96
6.3.2函数调用的方式 97
6.4函数的参数 97
6.5函数的嵌套调用和递归调用 99
6.5.1函数的嵌套调用 99
6.5.2函数的递归调用 101
6.6变量的存储类型 107
6.6.1变量的作用域与生存期 107
6.6.2变量的存储类型 107
6.6.3局部变量 107
6.6.4全局变量 110
6.7内部函数、外部函数 113
6.7.1内部函数 113
6.7.2外部函数 113
6.8编译预处理命令 114
6.8.1宏替换 114
6.8.2文件包含 117
6.8.3条件编译 117
本章小结 121
习题六 121
第7章 数组 131
7.1一维数组 131
7.1.1一维数组的定义 131
7.1.2一维数组元素的引用 132
7.1.3一维数组的初始化 132
7.2二维数组 135
7.2.1二维数组的定义和引用 135
7.2.2二维数组元素的初始化 137
7.3多维数组 138
7.3.1多维数组的定义、使用与存储 138
7.3.2多维数组的初始化 139
7.4字符串与字符数组 139
7.4.1字符串与字符数组 140
7.4.2字符数组的初始化 140
7.4.3字符数组的输入/输出 141
7.4.4字符串处理函数 145
7.5字符串数组 146
7.6数组作为函数参数 147
7.6.1数组元素作为函数参数 147
7.6.2地址量作为函数参数 147
本章小结 152
习题七 152
第8章 指针 160
8.1指针简介 160
8.2指针变量定义及引用 161
8.2.1指针变量的定义 161
8.2.2指针变量的引用 161
8.3指针运算 164
8.3.1赋值运算 164
8.3.2加减算术运算 165
8.3.3关系运算 165
8.4指针与数组 166
8.4.1指向数组的指针变量的定义 166
8.4.2指向数组的指针变量的引用 166
8.4.3指向数组的指针变量的加减 168
8.4.4指针与字符串 170
8.5多维数组的指针 172
8.6指向指针的指针 175
8.7指针与函数 176
8.7.1函数指针变量 176
8.7.2指针型函数 177
8.7.3指针数组与函数 178
8.7.4main()函数的参数 181
本章小结 182
习题八 184
第9章 构造数据类型 193
9.1结构体 193
9.1.1结构类型定义和结构变量说明 193
9.1.2结构体类型变量的引用 195
9.1.3结构体数组 197
9.1.4结构体与指针 199
9.1.5结构体与链表 202
9.1.6C语言的动态存储分配函数 208
9.2共用体 210
9.3枚举 213
9.4自定义数据类型 213
本章小结 214
习题九 215
第10章 文件 219
10.1文件、流和文件系统的概念 219
10.2文件类型指针 220
10.3缓冲文件系统 220
10.3.1文件的打开、关闭和文件结束测试 221
10.3.2文件的读/写 223
10.3.3文件的定位 234
10.3.4出错的处理 237
10.4非缓冲文件系统 237
10.4.1文件的打开、建立与关闭 238
10.4.2文件的读/写 239
本章小结 241
习题十 242
第11章 位运算 243
11.1位运算概述 243
11.1.1计算机中数的表示 243
11.1.2硬件接口寄存器位的读取与设置 245
11.2位运算使用方法 245
11.2.1按位与运算 246
11.2.2按位或运算 247
11.2.3按位异或运算 247
11.2.4按位取反运算 248
11.2.5左移运算 249
11.2.6右移运算 251
11.3位运算应用举例 251
11.3.1各种位运算的运算顺序 251
11.3.2综合举例 254
11.4位域 256
本章小结 259
习题十一 260
参考文献 263