目    录

项目1  通讯录信息输出	1
任务1.1   认识C程序宏观结构	2
任务实施	2
1.1.1  程序框架结构	2
1.1.2  程序构成	4
任务1.2  程序开发过程和环境	5
任务实施	5
1.2.1  程序开发过程	5
1.2.2  程序开发环境	6
任务1.3  分析输出数据及类型	9
任务实施	9
任务1.4  声明变量并赋值	10
任务实施	10
1.4.1  输出数据分析	10
1.4.2  变量声明与赋值	10
任务1.5  录入通讯录信息	20
任务实施	20
1.5.1  任务分析与实现	20
1.5.2  数据的输入和输出	21
任务1.6  显示通讯录信息	30
任务实施	30
1.7  上机实训	30
1.7.1  输出学生成绩训练	30
1.7.2  输出职工工资表训练	32
项目小结	33
知识补充	33
1.8  C语言程序代码编写规范	33
项目任务拓展	35
项目2  银行存款期限及利率计算	36
任务2.1  定义项目中的数据结构	37
任务实施	37
2.1.1  项目数据结构	37
2.1.2  运算符和表达式概述	37
2.1.3  赋值运算符和赋值表达式	38
2.1.4  算术运算符和算术表达式	41
2.1.5  关系运算符和关系表达式	43
2.1.6  逻辑运算符和逻辑表达式	45
2.1.7  条件运算符和条件表达式	47
2.1.8  逗号运算符和逗号表达式	48
任务2.2  将非标准数据转化成标准存储
月数	49
任务实施	49
2.2.1  存款期限转换成固定月份	49
2.2.2  实现选择结构的if语句	49
任务2.3  根据存款期限确定存款利率	56
任务实施	56
2.3.1  给定存款期限,输出本息
合计	56
2.3.2  switch语句的结构及应用	56
2.4  上机实训	58
2.4.1  个人所得税计算	58
2.4.2  企业员工年终奖管理程序	59
项目小结	60
知识补充	61
2.5  程序中的语法错误与逻辑错误调试	61
项目任务拓展	62
项目3  小学生计算机辅助教学系统	64
任务3.1  学生根据提示计算	65
任务实施	65
3.1.1  学生用辅助系统计算	65
3.1.2  循环控制结构与循环语句	65
3.1.3  while语句的结构及应用	67
任务3.2  限制重做次数	68
任务实施	68
3.2.1  学生用辅助系统计算,
最多算3次	68
3.2.2  do…while语句的结构及应用	69
任务3.3  连续10道乘法计算题	70
任务实施	70
3.3.1  限制10道乘法计算题	70
3.3.2  for语句的结构及应用	71
3.3.3  循环嵌套	73
任务3.4  随机产生10道四则混合运算,
并计算分数	74
任务实施	74
3.4.1  随机计算四则运算题	74
3.4.2  goto语句的结构及应用	75
3.4.3  break语句的结构及应用	77
3.4.4  continue语句的结构及应用	78
3.5  上机实训	79
3.5.1  百元百鸡问题	79
3.5.2  猜数字游戏	80
项目小结	81
知识补充	82
3.6  算法的时间复杂度	82
项目任务拓展	83
项目4  选秀节目选手排序	84
任务4.1  定义数组变量	84
任务实施	84
4.1.1  定义选秀节目选手排序的
数组	84
4.1.2  一维数组的定义	85
任务4.2  输入待排序数据	86
任务实施	86
4.2.1  输入待排序数据示例	86
4.2.2  一维数组的初始化	86
任务4.3  冒泡排序法	88
任务实施	88
4.3.1  冒泡排序法介绍	88
4.3.2  一维数组的引用	88
任务4.4  输出排序结果	91
任务实施	91
4.5  知识延展	91
4.5.1  二维数组	91
4.5.2  多维数组	95
4.5.3  字符数组	96
4.6  上机实训	104
4.6.1  整数插入排序数组	104
4.6.2  按字母排序输出国家名称	105
项目小结	106
知识补充	106
4.7  算法的空间复杂度	106
项目任务拓展	107
项目5  学生成绩分析系统	108
任务5.1  输入学生成绩	109
任务实施	109
5.1.1  输入10名学生5门课程的
成绩	109
5.1.2  函数的引入	110
任务5.2  每位学生的平均分	111
任务实施	111
5.2.1  计算每位学生的平均分	111
5.2.2  函数定义的形式	111
任务5.3  每门课程的平均分	118
任务实施	118
5.3.1  计算每门课程的平均分	118
5.3.2  函数的参数	118
任务5.4  查找最高分的学生和课程	124
任务实施	124
5.4.1  举例查找各门课程最高分的
学生和课程	124
5.4.2  函数的嵌套调用与递归调用	124
任务5.5  按学号查成绩	127
任务实施	127
5.5.1  按学号查成绩举例	127
5.5.2  变量的存储类别与作用域	127
5.6  上机实训	135
5.6.1  打印超市购物小票的票头	135
5.6.2  Hanoi塔问题	136
项目小结	137
知识补充	138
5.7  模块化程序设计	138
项目任务拓展	139
项目6  计件工资管理程序	140
任务6.1  输入产品数量	141
任务实施	141
6.1.1  输入员工一天制作的产品
数量	141
6.1.2  地址、指针、指针变量	141
任务6.2  显示产品数量	145
任务实施	145
6.2.1  显示员工一天制作的产品
数量	145
6.2.2  指针的运算	145
任务6.3  统计制作产品最多的员工和
数量	149
任务实施	149
6.3.1  统计一天中制作产品最多的
员工序号和产品数量	149
6.3.2   指针变量作为函数参数	149
任务6.4  显示产品数量排序	152
任务实施	152
6.4.1  显示一天中员工制作产品
数量排序的结果	152
6.4.2  指针与数组	152
任务6.5  统计总量与平均值	163
任务实施	163
6.5.1  统计一天中制作产品的
总量和平均值	163
6.5.2  指针与字符串	163
任务6.6  统计工作量低于平均值的
员工	167
任务实施	167
6.6.1  统计低于平均工作量的
员工	167
6.6.2  指针数组	168
6.7  上机实训	171
6.7.1  用数组指针实现冒泡排序	171
6.7.2  提取字符串的子串	173
项目小结	174
知识补充	175
6.8  动态内存分配	175
项目任务拓展	176
项目7  生日祝贺程序	177
任务7.1  设计数据结构	178
任务实施	178
7.1.1  定义日期和员工信息
结构体	178
7.1.2   结构体类型的定义	178
任务7.2  输入员工数据	179
任务实施	179
7.2.1  定义函数输入n位员工数据	179
7.2.2   结构体变量、数组的定义与
引用	180
任务7.3  查找指定生日日期的员工	183
任务实施	183
7.3.1  定义查找函数查找指定
日期的员工	183
7.3.2   指向结构体变量的指针	183
任务7.4  主函数中先后调用输入和
查找函数	185
任务实施	185
7.4.1  调用输入和查找函数实现
系统功能	185
7.4.2  链表	186
7.5  知识延展	195
7.5.1  共用体	195
7.5.2  枚举类型	199
7.5.3  用typedef定义类型	201
7.6  上机实训	202
7.6.1  结构指针计算一组学生的
成绩	202
7.6.2  扑克牌的结构表示	203
项目小结	206
知识补充	206
7.7  数据库技术	206
项目任务拓展	208
项目8  家庭理财程序	209
任务8.1  定义项目中的数据结构	210
任务实施	210
8.1.1  定义家庭收支项目记录
结构体数据类型item	210
8.1.2  相关知识	210
任务8.2  显示用户选择主菜单	213
任务实施	213
8.2.1  显示用户选择主菜单示例	213
8.2.2  文件记录指针的顺序定位
操作	213
任务8.3  统计家庭所有收支项目记录
总数	217
任务实施	217
8.3.1  统计文件中的家庭收支
记录	217
8.3.2  文件记录指针的随机定位
操作	219
任务8.4  增加一条家庭收支项目记录	220
任务实施	220
8.4.1  使用文件读写函数增加
记录	220
8.4.2  随机读写函数	222
任务8.5  显示家庭所有收支项目记录	223
任务实施	223
8.5.1  读取文件显示家庭收支项目
记录	223
8.5.2  文件操作的辅助函数	224
任务8.6  查询最后一次家庭收支项目
记录	226
任务实施	226
任务8.7  编写主函数	227
任务实施	227
8.7.1  实现系统功能	227
8.7.2  文件的打开与关闭	228
8.8  上机实训	231
8.8.1  使用文件读写学生数据	231
8.8.2  使用文件统计学生成绩	233
项目小结	234
知识补充	235
8.9  云计算与大数据	235
项目任务拓展	236
项目9  通讯录管理程序	237
任务9.1  主函数	238
任务实施	238
任务9.2  菜单函数	239
任务实施	239
任务9.3  输入记录函数	240
任务实施	240
任务9.4  显示记录函数	240
任务实施	240
任务9.5  查找记录函数	241
任务实施	241
任务9.6  显示指定记录函数	241
任务实施	241
任务9.7  查找函数	241
任务实施	241
任务9.8  删除函数	242
任务实施	242
任务9.9  插入记录函数	243
任务实施	243
任务9.10  保存函数	243
任务实施	243
任务9.11  读入函数	244
任务实施	244
任务9.12  按序号显示记录函数	244
任务实施	244
任务9.13  排序函数	245
任务实施	245
任务9.14  快速查找函数	246
任务实施	246
任务9.15  复制文件函数	246
任务实施	246
项目10  学生成绩管理系统程序	248
任务10.1  主函数	249
任务实施	249
任务10.2  菜单函数	250
任务实施	250
任务10.3  创建链表函数	251
任务实施	251
任务10.4  输入字符串函数	252
任务实施	252
任务10.5  输出链表函数	252
任务实施	252
任务10.6  删除记录函数	253
任务实施	253
任务10.7  查找记录函数	254
任务实施	254
任务10.8  插入记录函数	255
任务实施	255
任务10.9  保存数据到文件函数	256
任务实施	256
任务10.10  从文件读数据函数	257
任务实施	257
任务10.11  追加记录到文件函数	258
任务实施	258
任务10.12  文件拷贝函数	259
任务实施	259
任务10.13  排序函数	260
任务实施	260
任务10.14  计算总分和均值函数	261
任务实施	261
任务10.15  索引函数	261
任务实施	261
任务10.16  分类合计函数	262
任务实施	262
附录A  标准ASCII码表	264
附录B  运算符的优先级和结合性	267
附录C  C语言的库函数	269
参考文献	273
  
  \