第1章 C语言基础与顺序结构 1
1.1 认识C语言程序 2
1.1.1 了解C语言程序的构成 2
1.1.2 熟悉主函数框架 3
1.2 合理选用数据类型 6
1.2.1 合理选用整型数据 6
1.2.2 合理选用实型数据 8
1.2.3 合理选用字符型数据 10
1.3 学会使用常用运算符 11
1.3.1 学会使用算术运算符 11
1.3.2 学会使用赋值运算符 13
1.4 学会控制输入输出数据 14
1.4.1 格式输入输出函数的使用 14
1.4.2 单个字符输入输出函数的使用 15
1.5 画顺序结构的流程图 16
1.6 熟悉Turbo C集成环境 17
1.6.1 在Turbo C集成环境中验证程序的正确性 17
1.6.2 在Turbo C环境中观察程序的单步执行过程 19
1.7 贯穿教学全过程的实例——公交一卡通管理程序总功能 20
1.8 贯穿教学全过程的实例——公交一卡通管理程序之一 22
1.9 本章总结 23
思考题1 25
上机练习1 25
第2章 分支结构 26
2.1 if语句 27
2.1.1 学习使用关系运算符和if语句 27
2.1.2 认识省略else的if语句 29
2.1.3 学会使用逻辑运算符 31
2.1.4 学会使用嵌套的if语句 32
2.1.5 学会使用if-else if形式的嵌套if语句 34
2.2 switch语句 36
2.2.1 认识switch语句 36
2.2.2 多个case语句相同情况的处理 39
2.2.3 用switch语句的技巧计算分段函数的值 40
2.3 用条件运算符转换大小写字母 41
2.4 程序举例 42
2.4.1 掌握3个数中求最大数的方法 42
2.4.2 掌握3个数排序的方法 43
2.4.3 熟悉菜单设计操作 43
2.5 贯穿教学全过程的实例——公交一卡通管理程序之二 45
2.6 本章总结 47
思考题2 48
上机练习2 48
第3章 循环结构 49
3.1 使用for语句实现循环控制 50
3.1.1 使用for语句重复显示信息 50
3.1.2 使用for语句重复出算术题 52
3.2 使用while语句实现循环控制 54
3.2.1 使用while语句为学生分班 54
3.2.2 使用while语句计算近似值 56
3.3 使用do-while语句实现循环控制 58
3.3.1 使用do-while语句计算做题正确率 58
3.3.2 使用do-while语句编写打字练习程序 60
3.4 用break语句强行退出循环 61
3.5 学会使用循环设计典型算法 63
3.5.1 学会找出Fibonacci数列的各项,掌握递推算法 63
3.5.2 用迭代算法求解某数的平方根 65
3.5.3 用枚举算法求解百元百鸡问题 67
3.5.4 学会判断质数的算法 70
3.6 贯穿教学全过程的实例——公交一卡通管理程序之三 74
3.7 本章总结 76
思考题3 78
上机练习3 79
第4章 数组 81
4.1 认识数组,了解使用数组的场合 82
4.2 使用一维数组 82
4.2.1 定义与引用一维数组 82
4.2.2 在字符串中找出数字字符构造新数组 84
4.2.3 求一批数据中的最大值 85
4.2.4 在有序数据中插入一个数 87
4.2.5 排序数据 89
4.3 使用二维数组 91
4.3.1 求两个矩阵的和 91
4.3.2 求方阵对角线上元素之和 93
4.3.3 显示算术题和学生答题信息 94
4.3.4 编写不同级别的打字练习程序 96
4.3.5 统计一个学习小组的成绩 97
4.4 贯穿教学全过程的实例——公交一卡通管理程序之四 99
4.5 本章总结 105
思考题4 106
上机练习4 107
第5章 指针 108
5.1 认识变量的地址和指针变量 109
5.2 通过指针访问普通变量 109
5.3 通过指针访问数组 111
5.3.1 通过指针计算总分 111
5.3.2 通过指针将数据逆置 112
5.3.3 通过指针找出最大值 114
5.3.4 通过指针排序数据 116
5.3.5 通过指针计算两个矩阵的和 117
5.4 通过指针访问字符串 119
5.4.1 通过指针判断回文 119
5.4.2 在3个字符串中找出最大的字符串 121
5.4.3 将3个字符串由大到小的顺序排序 122
5.4.4 连接两个字符串 123
5.5 贯穿教学全过程的实例——公交一卡通管理程序之五 125
5.6 本章总结 130
思考题5 131
上机练习5 131
第6章 函数 134
6.1 了解C语言程序的执行过程 135
6.2 掌握自定义函数的编写与调用方法 138
6.2.1 调用自定义函数计算1~n的和 138
6.2.2 调用自定义函数进行四则运算 142
6.2.3 在被调函数中交换数据 145
6.2.4 用嵌套调用的方法进行计算 146
6.3 调用自定义函数处理数组 148
6.3.1 调用自定义函数输入输出一维数组 148
6.3.2 调用自定义函数将数据逆置 149
6.3.3 调用自定义函数求最大值 151
6.3.4 调用自定义函数判断回文 153
6.3.5 调用自定义函数计算两个矩阵的和 154
6.4 变量的存储类别 156
6.4.1 内部变量和外部变量 156
6.4.2 动态存储变量和静态存储变量 157
6.5 贯穿教学全过程的实例——公交一卡通管理程序之六 159
6.6 本章总结 166
思考题6 168
上机练习6 169
第7章 结构体 171
7.1 了解结构体类型数据的使用场合 172
7.2 掌握结构体变量的使用方法 172
7.2.1 使用结构体变量处理实际问题 173
7.2.2 将结构体变量作为实参处理实际问题 176
7.3 掌握结构体数组的使用方法 178
7.3.1 使用结构体数组处理实际问题 178
7.3.2 将结构体数组名作为实参处理实际问题 180
7.4 贯穿教学全过程的实例——公交一卡通管理程序之七 188
7.5 本章总结 195
思考题7 197
上机练习7 199
第8章 文件 201
8.1 了解文件的处理过程 202
8.2 掌握文件的基本操作本领 203
8.2.1 创建文本文件 203
8.2.2 读取文本文件中的数据 205
8.2.3 创建二进制文件 207
8.2.4 读取二进制文件中的数据 208
8.3 文件的应用举例 209
8.3.1 编写算术考试程序 209
8.3.2 编写阅卷程序 211
8.3.3 复制文件 212
8.3.4 修改文件 213
8.4 贯穿教学全过程的实例——公交一卡通管理程序之八 215
8.5 本章总结 224
思考题8 225
上机练习8 225
附录A C语言关键字 227
附录B 常用字符与ASCII代码对照表 228
附录C 运算符的优先级和结合方向 230
附录D 常用C库函数 231
附录E 常见错误、警告信息表 235
附录F VC++上机操作简介 237
参考文献 245