第1章 概述 1
1.1基本概念 1
1.2初识C程序 2
1.3 C程序的基本结构 3
1.4运行C程序 5
1.4.1 Turbo C 2.0 5
1.4.2 VC++6.0 7
1.4.3 Win-TC 13
本章总结 16
第2章 程序设计基础 17
2.1算法 17
2.2数据类型 19
2.2.1常量和变量 20
2.2.2整型数据 22
2.2.3实型 25
2.2.4字符型 28
2.3运算符和表达式 32
2.3.1算术运算符和算术表达式 34
2.3.2自增、自减运算符 35
2.3.3关系运算符和关系表达式 36
2.3.4逻辑运算符和逻辑表达式 38
2.3.5赋值运算符和赋值表达式 40
2.3.6逗号运算符和逗号表达式 42
2.3.7条件运算符 44
2.3.8位运算符 45
2.3.9 sizeof运算符 48
2.3.10各类型数据间的混合运算 49
2.4宏常量与宏替换 51
本章总结 53
第3章 顺序结构与输入输出 54
3.1字符输入输出函数 54
3.1.1 getchar函数概述 54
3.1.2 putchar函数概述 55
3.1.3字符输入输出函数的应用 55
3.2格式输入输出函数 58
3.2.1 scanf函数概述 58
3.2.2 printf函数概述 61
3.2.3 scanf函数和printf函数的特殊格式控制 62
3.2.4格式输入输出函数的综合应用 64
本章总结 68
第4章 选择结构 70
4.1 if语句 70
4.1.1 if的单分支形式 70
4.1.2 if的双分支形式 73
4.1.3 if的多分支形式 76
4.2 switch语句 82
4.3条件语句的嵌套使用 87
4.3.1 if语句嵌套的一般形式 87
4.3.2 if语句嵌套的应用 87
本章总结 91
第5章 循环结构 92
5.1 while循环语句 92
5.2 do-while循环语句 95
5.3 for循环语句 98
5.4 for循环语句的特殊格式 101
5.5用goto语句和if语句构成的循环语句 103
5.6循环的嵌套 105
5.7 break语句和continue语句 108
5.7.1 break语句 108
5.7.2 continue语句 109
5.8经典程序举例 111
本章总结 117
第6章 数组 118
6.1数组的本质 118
6.2一维数组 120
6.2.1一维数组的定义 120
6.2.2一维数组的引用 121
6.2.3一维数组的初始化 123
6.2.4一维数组的输入与输出 124
6.2.5一维数组的应用 126
6.3二维数组 132
6.3.1二维数组的定义 132
6.3.2二维数组的引用和初始化 134
6.3.3二维数组的应用 136
6.4字符数组和字符串 139
6.4.1字符数组的定义、引用和初始化 139
6.4.2字符串处理函数 141
6.4.3字符数组的应用 147
本章总结 151
第7章 函数 152
7.1函数的定义 153
7.2函数的声明 159
7.2.1库函数的声明 159
7.2.2自定义函数的声明 160
7.3函数的参数 161
7.4函数的返回值 167
7.5函数的调用关系 169
7.6全局变量与局部变量 173
7.6.1局部变量 173
7.6.2全局变量 174
7.6.3变量的存储类型与生存期 178
7.6.4动态存储类型 179
7.6.5静态存储类型 180
7.6.6寄存器存储类型 181
7.6.7外部存储类型 181
7.7函数的综合应用 184
本章总结 188
第8章 指针 189
8.1指针的概念及指针变量 190
8.1.1指针的概念 190
8.1.2指针变量的定义 191
8.1.3指针变量的赋值 191
8.1.4指针运算符 192
8.2指针的运算 196
8.2.1指针的赋值运算 196
8.2.2指针的算术运算 196
8.2.3指针的关系运算 197
8.3指针与数组 197
8.3.1指向一维数组元素的指针变量 197
8.3.2通过指针引用数组元素 198
8.3.3指针与字符串 201
8.3.4指向多维数组元素的指针变量 205
8.4指针与函数 206
8.4.1指针变量作为函数参数 206
8.4.2数组名作为函数参数 208
8.4.3返回指针值的函数 211
8.4.4指向函数的指针 213
8.5指向指针的指针变量 215
8.6指针与二维数组 215
8.6.1二维数组的结构 215
8.6.2数组指针 216
8.6.3指针数组 219
8.6.4指针与二维字符数组 220
8.7 main函数的参数 224
本章总结 227
第9章 结构体 228
9.1结构体类型的定义 229
9.2结构体变量 230
9.3结构体数组 234
9.4结构体与函数 239
9.5结构体与指针 244
9.6结构体成员变量为结构体类型 249
9.7链表 252
9.7.1链表的定义 253
9.7.2链表的基本操作 256
本章总结 272
第10章 共用体与枚举 273
10.1共用体类型 274
10.1.1共用体类型的定义 274
10.1.2共用体变量的定义 274
10.2枚举类型 278
10.2.1枚举类型的定义 278
10.2.2枚举变量的定义 278
本章总结 282
第11章 文件 283
11.1流 283
11.1.1文件指针 283
11.1.2标准流和重定向 283
11.1.3文件是什么 284
11.2标准I/O 285
11.2.1打开文件 285
11.2.2模式 286
11.2.3关闭文件 287
11.2.4文件结束检测函数 288
11.3文件I/O 289
11.3.1格式化I/O 289
11.3.2字符的I/O 291
11.3.3字符串的I/O 294
11.3.4数据块的I/O 296
11.4文件的随机读写 298
11.5文件应用案例 299
本章总结 302
附录Ⅰ经典习题及答案 303
附录Ⅱ常用运算符优先级和结合性 379
附录Ⅲ常用库函数 380
附录Ⅳ常用字符ASCII码值对照表 384
参考文献 385