项目1 用C程序向世界问好——C语言概述 1
1.1 C语言发展史 1
1.2 C语言的主要特点 2
1.3 C程序的结构 3
1.3.1 认识C程序 3
1.3.2 C程序的基本结构 4
1.4 C语言集成开发环境——VC++ 6.0 4
1.5 认识其他C编译环境——Turbo C 2.0 8
综合实训1 9
习题1 11
项目2 求三角形的面积——数据类型及表达式求值 12
2.1 常量与变量 12
2.1.1 C语言的数据类型 13
2.1.2 标识符 13
2.1.3 常量 13
2.1.4 变量 15
2.1.5 C语言的关键字 18
2.2 表达式求值 19
2.2.1 运算符与表达式 19
2.2.2 C语言的库函数和头文件 22
综合实训2 23
习题2 24
项目3 学生成绩的简单处理——数据的输入、输出 25
3.1 数据的输出 25
3.1.1 格式输出函数——printf() 26
3.1.2 单个字符的输出函数——putchar() 28
3.2 数据的输入 29
3.2.1 格式化输入函数——scanf() 29
3.2.2 单个字符的输入函数——getchar() 31
3.2.3 getch()函数 31
3.3 顺序结构程序设计 32
3.3.1 程序的三种基本结构 32
3.3.2 C语句 33
综合实训3 35
综合实训4 36
习题3 36
项目4 简单计算器小程序——分支程序设计 39
4.1 关系运算及逻辑运算 40
4.1.1 关系运算符 40
4.1.2 关系表达式 41
4.1.3 逻辑运算符 41
4.1.4 逻辑表达式 42
4.2 if语句 42
4.2.1 最基本的if语句 42
4.2.2 if-else语句 44
4.2.3 if-else-if语句 45
4.3 switch语句 46
4.4 if、switch语句的嵌套 48
4.5 条件运算符 50
综合实训5 51
综合实训6 52
习题4 53
项目5 猜数游戏——循环结构程序设计 56
5.1 循环语句 57
5.1.1 while语句 57
5.1.2 do-while语句 59
5.1.3 while循环和do-while循环的区别举例 60
5.1.4 for语句 60
5.2 break、continue语句 63
5.2.1 break语句 64
5.2.2 continue语句 65
5.3 循环的嵌套 65
综合实训7 69
综合实训8 69
习题5 71
项目6 学生成绩的简单处理——数组 76
6.1 一维数组 78
6.2 插入排序 82
6.3 二维数组 83
6.4 字符串和字符数组 85
综合实训9 91
综合实训10 92
习题6 92
项目7 学生成绩分析系统——函数 97
7.1 学生成绩分析系统主菜单的实现 98
7.2 各功能模块的实现 99
7.2.1 函数的分类 101
7.2.2 函数的定义 102
7.2.3 函数的参数及返回值 103
7.2.4 函数的调用与声明 104
7.2.5 数组与函数 106
7.2.6 函数的递归与嵌套 110
7.2.7 局部变量与全局变量 112
7.2.8 变量的存储类别 115
7.2.9 编译预处理命令 117
7.2.10 在VC++ 6.0下运行多个源文件组成的程序 122
综合实训11 124
综合实训12 126
习题7 127
项目8 学生成绩分析系统的优化——指针 129
8.1 一维数组与指针 130
8.1.1 指针概述 130
8.1.2 通过指针访问数组元素 136
8.2 二维数组和指针 142
8.2.1 借助于指针变量来访问各元素 143
8.2.2 借助于行指针来访问各元素 143
8.3 字符串和指针 144
8.4 指针型函数 146
8.5 指针数组和指向指针的指针 147
8.5.1 指针数组 147
8.5.2 指针数组作函数参数 148
8.5.3 指向指针的指针变量 149
8.6 简单选择排序 150
综合实训13 151
综合实训14 153
习题8 154
项目9 学生信息分析系统——结构体 157
9.1 学生信息的输入/输出 158
9.1.1 结构体类型的声明 158
9.1.2 结构体类型变量的定义和成员引用 159
9.1.3 结构体数组 161
9.2 学生信息的处理——结构体与函数 162
9.3 链式存储下学生信息的处理 166
9.3.1 指向结构体类型数据的指针 169
9.3.2 链表 170
9.3.3 共用体 173
9.3.4 用typedef定义类型 175
综合实训15 176
综合实训16 176
习题9 177
项目10 学生信息的读取与保存——文件 179
10.1 文件概述 181
10.1.1 文件分类 181
10.1.2 文件类型指针 182
10.2 文件的打开与关闭 182
10.2.1 文件的打开 182
10.2.2 文件关闭函数 184
10.3 文件的读/写 184
10.3.1 字符读/写函数fgetc和fputc 184
10.3.2 字符串读/写函数fgets和fputs 186
10.3.3 数据块读/写函数fread和fwrite 187
10.3.4 格式化读/写函数fscanf和fprintf 189
10.4 文件的随机读/写 190
综合实训17 191
习题10 193
项目11 综合实训:学生信息管理系统的设计与实现 195
11.1 主菜单的显示 196
11.2 各功能模块的实现 198
11.2.1 成绩录入模块 198
11.2.2 二级菜单——统计功能的实现 199
11.2.3 排序功能的实现 202
11.2.4 查找功能及其子函数的实现 204
11.2.5 成绩保存功能的实现 206
附录A 位运算 207
附录B 运算符的优先级别和结合方向 217
附录C 常用字符与ASCII码对照表 218
附录D 常用Turbo C库函数 219
参考文献 221