第1章 概述 1
1.1程序与算法 1
1.1.1程序 1
1.1.2算法 1
1.2 C语言的特点、源程序的书写格式 3
1.2.1 C语言的特点 3
1.2.2 C程序的构成 4
1.2.3 C语言程序的书写格式 4
1.2.4 C程序的三种基本结构和流程图 5
1.3案例简介 6
1.4 Visual C++6.0上机操作 6
1.4.1 C程序编译与可执行文件的生成 6
1.4.2 Visual C++ 6.0的上机操作步骤 7
1.4.3 C程序调试 10
本章小结 13
习题一 13
第2章 数据类型、运算符及表达式 16
2.1基本数据类型 16
2.2常量与变量 17
2.2.1常量与变量定义 17
2.2.2整型数据 19
2.2.3实型数据 22
2.2.4字符型数据 23
2.2.5字符串常量 25
2.3数据类型转换 27
2.4运算符及表达式 27
2.4.1算术运算符与表达式 28
2.4.2赋值运算符与表达式 30
2.4.3逗号运算符 32
本章小结 32
习题二 33
第3章 基本输入/输出函数 37
3.1输入/输出函数 37
3.1.1格式化输入函数scanf() 37
3.1.2格式化输出函数printf() 38
3.2字符输入/输出函数 40
3.2.1字符输入函数getchar() 40
3.2.2字符输出函数putchar() 40
3.3案例应用举例 41
本章小结 42
习题三 42
第4章 选择结构 48
4.1关系运算和逻辑运算 48
4.1.1关系运算符与表达式 48
4.1.2逻辑运算符与表达式 49
4.2 if语句 50
4.2.1简单if语句 50
4.2.2二分支if语句 51
4.2.3二分支if语句嵌套 52
4.2.4多分支if语句 53
4.2.5条件运算符 55
4.3 switch语句 55
4.4综合实例 58
4.5案例应用举例 62
本章小结 63
习题四 63
第5章 循环结构 70
5.1 goto语句 70
5.2 for语句 71
5.2.1 for循环语句 71
5.2.2 for循环嵌套 73
5.3 while和do-while循环语句 76
5.3.1 while循环语句 76
5.3.2 do-while循环语句 78
5.3.3 for、while和do-while循环嵌套 79
5.4 break语句和continue语句 81
5.4.1 break语句 81
5.4.2 continue语句 82
5.5综合实例 83
5.6案例应用举例 85
本章小结 86
习题五 87
第6章 数组 98
6.1一维数组 98
6.1.1一维数组的定义及初始化 99
6.1.2一维数组元素的引用 100
6.2二维数组 105
6.2.1二维数组的定义 105
6.2.2二维数组的初始化 106
6.2.3二维数组元素的引用 106
6.2.4多维数组的定义 108
6.3字符数组 109
6.3.1字符数组的定义 109
6.3.2字符数组的初始化 109
6.3.3字符串与字符数组 110
6.3.4字符串的输入/输出 111
6.3.5字符串输入/输出函数 111
6.3.6常用字符串处理函数 112
6.4综合实例 114
6.5案例应用举例 116
本章小结 118
习题六 118
第7章 函数 130
7.1函数定义 130
7.2函数的参数和函数的值 132
7.2.1形式参数和实际参数 132
7.2.2函数的返回值 133
7.2.3函数的调用 134
7.2.4函数原型 135
7.2.5函数的调用实例 135
7.3函数的嵌套调用 138
7.4函数的递归调用 140
7.5数组作为函数参数 141
7.5.1数组元素作函数实参 142
7.5.2数组名作为函数参数 143
7.6变量的存储类别、作用域和生存期 146
7.6.1局部变量与全局变量 146
7.6.2变量的存储类别 149
7.7内部函数与外部函数 152
7.7.1内部函数 152
7.7.2外部函数 152
7.8案例应用举例 153
本章小结 154
习题七 154
第8章 指针 167
8.1指针的概念和定义 167
8.1.1地址和指针的概念 167
8.1.2指针变量的定义 168
8.1.3指针的操作 169
8.1.4指向指针的指针 172
8.2指针变量与函数参数 174
8.2.1指针作为函数参数 174
8.2.2值传递与地址传递的区别与联系 176
8.3指针与数组 177
8.3.1指向数组的指针 177
8.3.2数组指针访问数组 178
8.3.3指针变量访问数组 179
8.3.4数组名作函数参数 180
8.4指针与二维数组 182
8.4.1二维数组的地址 182
8.4.2指向由n个元素组成的一维数组的指针变量 184
8.4.3指向二维数组元素的指针变量 186
8.5字符串与指针 187
8.5.1字符串的表示形式 187
8.5.2字符数组与字符串指针作函数参数 188
8.6指针数组 190
8.7指针与函数 193
8.7.1函数指针 193
8.7.2返回值是指针的函数 195
8.8 main()函数的参数 196
8.9案例应用举例 197
本章小结 198
习题八 199
第9章 编译预处理命令 207
9.1宏定义 207
9.1.1不带参数的宏定义 207
9.1.2带参数的宏定义 209
9.2文件包含 210
9.3条件编译 212
本章小结 215
习题九 215
第10章 结构与共用 219
10.1结构与结构变量 219
10.1.1结构的定义 219
10.1.2结构变量的定义 220
10.1.3结构变量的引用与赋值 222
10.1.4结构变量的初始化 223
10.2结构数组 224
10.2.1结构数组的定义 224
10.2.2结构数组的初始化 224
10.2.3结构数组应用 225
10.3指向结构的指针变量 226
10.3.1指向结构变量的指针 226
10.3.2指向结构数组的指针 228
10.3.3指向结构变量的指针变量作函数参数 229
10.3.4指向结构数组的指针变量作函数参数 230
10.4类型定义符typedef 232
10.5结构与链表 233
10.5.1动态存储结构 233
10.5.2链表操作 235
10.6共用 243
10.7位运算 247
本章小结 250
习题十 250
第11章 文件 259
11.1文件概述 259
11.1.1文件及分类 259
11.1.2文件类型指针 260
11.1.3文件的打开与关闭 260
11.2文本文件的读写 262
11.2.1字符输入/输出函数fgetc()和fputc()及文件结束检测函数feof() 262
11.2.2字符串读写函数fgets()和fputs() 265
11.3二进制文件读写 266
11.4文件的随机读写 269
11.4.1文件定位 269
11.4.2文件的随机读写 270
本章小结 271
习题十一 271
第12章 图书管理系统案例介绍 277
12.1案例的目的和任务 277
12.2案例知识要点综述 277
12.3案例实训要求 277
12.4案例需求分析 277
12.5案例总体设计 277
12.6案例详细设计 279
12.7案例总结 300
实验 301
实验一 熟悉Visual C++6.0环境 301
实验二 数据类型及运算符 302
实验三 输入/输出语句 303
实验四 选择结构 305
实验五 循环结构(一) 307
实验六 循环结构(二) 310
实验七 数组(一) 312
实验八 数组(二) 314
实验九 函数(一) 316
实验十 函数(二) 319
实验十一 指针(一) 322
实验十二 指针(二) 324
实验十三 结构与共用(一) 328
实验十四 结构与共用(二) 331
实验十五 文件 334
附录1 ASCⅡ表 337
附录2 C库函数所在头文件 338
参考文献 339