第1篇 基础篇 2
实用计算器项目概述 2
第1章 C语言概述 4
1.1 C语言的发展及特点 5
1.1.1 程序设计语言 5
1.1.2 C语言的发展 6
1.1.3 C语言的特点 6
1.2 简单的C语言程序介绍 7
1.3 C语言程序的开发过程 9
1.4 VC++++6.0集成开发环境 10
1.5 Turbo C开发环境 12
1.6 GCC介绍 14
1.7 本章小结 16
1.8 习题 16
第2章 项目中的数据类型和数据运算 18
2.1 任务一 项目中数据类型的定义 19
2.2 理论知识 20
2.2.1 C语言的数据类型 20
2.2.2 常量和变量 21
2.2.3 运算符和表达式 28
2.2.4 数据类型转换 33
2.3 知识扩展 34
2.3.1 数值在计算机中的表示 34
2.3.2 标准数学函数的使用 36
2.4 本章小结 36
2.5 习题 37
第3章 项目主菜单的顺序执行设计 39
3.1 任务二 用输入/输出函数实现项目主菜单的顺序执行 40
3.2 理论知识 42
3.2.1 C语言程序语句 42
3.2.2 格式化输入输出函数 43
3.2.3 单字符输入输出函数 48
3.2.4 算法与程序的3种基本结构 49
3.2.5 顺序结构程序设计 53
3.3 知识扩展 54
3.3.1 程序设计的步骤 54
3.3.2 结构化程序设计的标准 55
3.3.3 程序设计的风格 55
3.4 本章小结 56
3.5 习题 56
第4章 项目主菜单的选择执行设计 60
4.1 任务三项目主菜单的选择执行设计 61
4.2 理论知识 63
4.2.1 if语句 63
4.2.2 switch语句 67
4.3 选择控制结构程序举例 70
4.4 本章小结 74
4.5 习题 74
第5章 项目主菜单的循环执行设计 79
5.1 任务四 项目主菜单的循环执行设计 80
5.2 理论知识 82
5.2.1 while语句 82
5.2.2 do...while语句 84
5.2.3 for语句 86
5.3 知识扩展 89
5.3.1 循环的嵌套 89
5.3.2 辅助控制语句 90
5.4 循环控制结构程序举例 94
5.5 本章小结 97
5.6 习题 98
第2篇 提高篇 106
学生成绩统计项目概述 106
第6章 项目的整体框架设计 110
6.1 任务一 项目的整体框架设计 111
6.2 理论知识 114
6.2.1 结构化程序设计思想与函数的分类 114
6.2.2 函数的定义 115
6.2.3 函数的值 116
6.2.4 函数的调用 118
6.2.5 函数间的数据传递 121
6.2.6 变量的作用域 122
6.3 知识扩展 126
6.3.1 变量的存储类型 126
6.3.2 函数的嵌套调用和递归调用 128
6.3.3 编译预处理 131
6.4 本章小结 138
6.5 习题 139
第7章 项目中数组的应用 144
7.1 任务二 用一维数组实现项目中学生成绩的统计 145
7.2 理论知识 148
7.2.1 一维数组 148
7.2.2 一维数组作函数参数 156
7.3 任务三 用字符数组实现项目中的密码验证 159
7.4 理论知识——字符数组 161
7.5 知识扩展——二维数组 167
7.6 应用举例 171
7.7 本章小结 173
7.8 习题 173
第8章 项目中指针的应用 178
8.1 任务四 用指针实现项目中学生成绩的统计 179
8.2 理论知识 182
8.2.1 指针的概念 182
8.2.2 指针变量的定义与引用 183
8.2.3 变量的指针与指针变量 189
8.2.4 指针与一维数组 190
8.2.5 指针变量作函数参数 194
8.2.6 指针与字符串 198
8.3 知识扩展 201
8.3.1 指针与二维数组 201
8.3.2 指针数组和指向指针的指针 204
8.3.3 带参数的main()函数 208
8.3.4 返回指针值的函数 209
8.4 应用举例 211
8.5 本章小结 213
8.6 习题 214
第3篇 应用篇 218
学生信息管理系统项目概述 218
第9章 项目中结构体的应用 223
9.1 任务一 用结构体实现项目中学生信息的增加、浏览和修改 224
9.2 理论知识 227
9.2.1 结构体类型的定义 227
9.2.2 结构体变量的定义 230
9.2.3 结构体变量的引用 233
9.2.4 结构体数组 235
9.2.5 结构体指针 238
9.2.6 结构体类型的数据在函数间的传递 241
9.3 知识扩展——共用体 243
9.3.1 共用体类型和共用体变量的定义 243
9.3.2 共用体变量的引用 244
9.4 知识扩展——枚举类型和自定义类型 247
9.4.1 枚举类型 247
9.4.2 自定义类型 249
9.5 本章小结 251
9.6 习题 251
第10章 项目中文件的应用 254
10.1 任务二 项目中数据的存储 255
10.2 理论知识 257
10.2.1 文件的基本概念 257
10.2.2 文件的打开和关闭 259
10.2.3 文件的顺序读写 262
10.2.4 文件的定位及随机读写 269
10.2.5 文件的出错检测 271
10.3 本章小结 272
10.4 习题 272
第4篇 高级篇 276
第11章 运算符、表达式与位运算 276
11.1 运算符与表达式 277
11.2 赋值运算符与赋值表达式 278
11.3 逗号运算符与逗号表达式 281
11.4 条件运算符与条件表达式 283
11.5 自增自减运算符 285
11.6 位运算 288
11.6.1 位运算概述 288
11.6.2 位段 295
11.7 表达式求解示例 297
11.8 本章小结 299
11.9 习题 299
第12章 编译预处理 304
12.1 宏定义 305
12.2 文件包含 309
12.3 条件编译 310
12.4 本章小结 312
12.5 习题 313
附录Ⅰ 常用字符与ASCII码对照表 317
附录Ⅱ C语言关键字 318
附录Ⅲ 运算符的优先级和结合方向 319
附录Ⅳ 常用C库函数 320
附录Ⅴ 学生信息管理系统源程序代码 324
附录Ⅵ 常见编译错误信息 338
附录Ⅶ 用C语言编写一个学生数据库系统 347
参考文献 353