第1章 概述 1
1.1基本概念 1
1.2初识C程序 2
1.3 C程序的基本结构 4
1.4运行C程序 5
1.4.1 Turbo C 2.0 5
1.4.2 VC++ 6.0 8
1.4.3 Win-TC 13
本章小结 15
第2章 程序设计基础 16
2.1算法简介 16
2.2数据类型 19
2.2.1常量和变量 19
2.2.2整型数据 22
2.2.3实型数据 26
2.2.4字符型数据 28
2.3运算符和表达式 33
2.3.1算术运算符和算术表达式 34
2.3.2自增、自减运算符 35
2.3.3关系运算符和关系表达式 37
2.3.4逻辑运算符和逻辑表达式 39
2.3.5赋值运算符和赋值表达式 41
2.3.6逗号运算符和逗号表达式 44
2.3.7条件运算符 45
2.3.8位运算符 47
2.3.9 sizeof运算符 49
2.3.10各类型数据间的混合运算 51
2.4宏常量与宏替换 53
本章小结 55
第3章 顺序结构与输入/输出 56
3.1字符输入/输出函数 56
3.1.1 getchar()函数 56
3.1.2 putchar()函数 57
3.1.3字符输入/输出函数的应用 58
3.2格式输入/输出函数 60
3.2.1 scanf()函数概述 61
3.2.2 printf()函数概述 63
3.2.3 scanf()函数和printf()函数的特殊格式控制 64
3.2.4格式输入/输出函数的综合应用 66
本章小结 69
第4章 选择结构 71
4.1 if语句 71
4.1.1 if语句的单分支形式 71
4.1.2 if语句的双分支形式 74
4.1.3 if语句的多分支形式 77
4.2 if语句的嵌套使用 83
4.2.1 if语句嵌套的一般形式 83
4.2.2 if语句嵌套的应用 84
4.3 switch语句 86
本章小结 91
第5章 循环结构 92
5.1 while循环语句 92
5.2 do…while循环语句 95
5.3 for循环语句 98
5.4 for循环语句的特殊格式 100
5.5用goto语句和if语句构成循环语句 104
5.6循环的嵌套 106
5.7 break语句和continue语句 108
5.7.1 break语句 108
5.7.2 continue语句 110
5.8经典程序举例 112
本章小结 116
第6章 数组 118
6.1数组的本质 118
6.2一维数组 120
6.2.1一维数组的定义 120
6.2.2一维数组的引用 121
6.2.3一维数组的初始化 123
6.2.4一维数组的输入与输出 125
6.2.5 一维数组的应用 126
6.3二维数组 132
6.3.1二维数组的定义 132
6.3.2二维数组的引用和初始化 134
6.3.3二维数组的应用 137
6.4字符数组和字符串 140
6.4.1字符数组的定义、引用和初始化 140
6.4.2字符串处理函数 143
6.4.3字符数组的应用 149
本章小结 152
第7章 函数 153
7.1函数的定义 154
7.2函数的声明 160
7.2.1库函数的声明 160
7.2.2自定义函数的声明 161
7.3函数的参数 161
7.4函数的返回值 168
7.5函数的调用关系 171
7.6全局变量与局部变量 175
7.6.1局部变量 175
7.6.2全局变量 176
7.6.3变量的存储类型与生存期 180
7.7函数综合应用 186
本章小结 190
第8章 指针 191
8.1指针的概念及指针变量 192
8.1.1指针的概念 192
8.1.2指针变量的定义 193
8.1.3指针变量的赋值 194
8.1.4指针运算符 195
8.2指针的运算 199
8.2.1指针的赋值运算 199
8.2.2指针的算术运算 199
8.2.3指针的关系运算 200
8.3指针与数组 200
8.3.1指向一维数组元素的指针变量 200
8.3.2通过指针引用数组元素 201
8.3.3指针与字符串 204
8.3.4指向多维数组元素的指针变量 209
8.4指针与函数 210
8.4.1指针变量作为函数参数 210
8.4.2数组名作为函数参数 213
8.4.3返回指针值的函数 217
8.4.4指向函数的指针 218
8.5指向指针的指针 220
8.6指针与二维数组 221
8.6.1二维数组的结构 221
8.6.2数组指针 223
8.6.3指针数组 225
8.6.4指针与二维字符数组 227
8.7 main()函数的参数 231
本章小结 233
第9章 结构体 235
9.1结构体类型的定义 236
9.2结构体变量定义 237
9.3结构体数组 241
9.4结构体与函数 247
9.5结构体与指针 252
9.6结构体成员变量为结构体类型 257
9.7链表 260
9.7.1链表的定义 261
9.7.2链表的基本操作 264
第10章 共用体与枚举 280
10.1共用体类型 281
10.1.1共用体类型的定义 281
10.1.2共用体变量的定义 281
10.2枚举类型 285
10.2.1枚举类型的定义 285
10.2.2枚举变量的定义 286
本章小结 288
第11章 文件 289
11.1流 289
11.1.1文件指针 289
11.1.2标准流和重定向 290
11.1.3文件 290
11.2标准I/O 292
11.2.1打开文件 292
11.2.2模式 293
11.2.3关闭文件 293
11.2.4文件结束检测函数 295
11.3文件I/O 295
11.3.1格式化I/O 295
11.3.2字符的I/O 298
11.3.3字符串的I/O 302
11.3.4数据块的I/O 304
11.4文件的随机读写 306
11.5文件应用案例 307
本章小结 310
附录Ⅰ经典习题及答案 311
题型一 单项选择题 311
题型二 填空题 332
题型三 程序改错题 340
题型四 程序填空题 385
题型五 程序设计题 418
附录Ⅱ 常用运算符优先级和结合性 446
附录Ⅲ 常用库函数 447
附录V常用字符ASCII码值对照表 450
参考文献 451