工业和信息化精品系列教材

C语言项目式系统开发教程(微课版)(第2版)

“十四五”职业教育国家规划教材、获评湖南省优秀教材、配套湖南省精品资源在线课,地址如下,或扫描下方二维码。https://www.xueyinonline.com/detail/228566881
分享 推荐 0 收藏 23 阅读 2.8K
彭顺生 (作者) 978-7-115-20387-8

关于本书的内容有任何问题,请联系 范博涛

1.“十四五”职业教育国家规划教材
2.以“大案例、一案到底”的思路,讲解“图书收银超市系统”项目作为全书主线。
3.以问题分析引导、算法流程图帮助找出用计算机解决问题的关键,将考证与竞赛习题引入教材,激发兴趣,培养独立思考和解决实际问题的能力。
4.配套微课视频,随时随地移动端观看视频,合理利用碎片化时间,辅助学习。
5.线上MOOC平台资源有利于混合教学模式的开展,线上和线下有机结合,适应学生差异化学习需求。

内容摘要

本书共分10个单元,第1~9单元的内容包括认识C语言程序、数据描述与数据处理、选择结构程序设计、循环结构程序设计、数组、函数、指针、结构体、文件,第10单元以图书超市收银系统项目为例带领读者实现整个项目的设计、掌握开发流程。 本书采用任务驱动的编写思路,以技能为主线,以具体的任务为载体,使读者更容易掌握学习内容和学习方法。通过本书的学习,读者能够利用C语言程序开发工具Dev C++进行程序编辑、编译和运行,能够使用不同数据类型来描述现实生活中的数据,能够使用运算符对数据进行操作,能够使用程序流程图来描述算法,能够运用选择结构、循环结构来解决实际问题,能够运用数组、函数、指针、结构体、文件等知识设计复杂的应用程序,熟练掌握程序的调试方法。

在线课

目录

单元1 认识C语言程序 1
任务1-1 初识C语言——搭建开发环境 2
【任务目标】 2
【任务陈述】 2
【知识准备】 2
1.1.1 计算机编程语言的发展历史 2
1.1.2 C语言的标准 3
1.1.3 C语言的使用步骤 4
【任务实施】 5
【课堂实训】 8
任务1-2 编写第一个C语言程序输出
树形图 8
【任务目标】 8
【任务陈述】 8
【知识准备】 8
【任务实施】 10
【课堂实训】 10
单元小结 10
单元习题 10
单元2 数据描述与数据处理 12
任务2-1 计算办公用品采购数量 13
【任务目标】 13
【任务陈述】 13
【知识准备】 13
2.1.1 整数类型 13
2.1.2 变量 14
2.1.3 常量 15
2.1.4 算术运算符与表达式 16
【任务实施】 17
【课堂实训】 17
任务2-2 计算身体质量指数 18
【任务目标】 18
【任务陈述】 18
【知识准备】 18
2.2.1 浮点数概述 18
2.2.2 浮点数应用 19
【任务实施】 20
【课堂实训】 21
任务2-3 计算时间差 21
【任务目标】 21
【任务陈述】 21
【知识准备】 22
2.3.1 自加、自减运算符 22
2.3.2 位运算符 22
2.3.3 复合赋值运算符 23
2.3.4 逗号运算符 24
【任务实施】 24
【课堂实训】 25
任务2-4 会员信息输入与输出 25
【任务目标】 25
【任务陈述】 25
【知识准备】 26
2.4.1 字符编码 26
2.4.2 字符类型 26
2.4.3 字符的输出与输入 28
2.4.4 数据类型转换 30
【任务实施】 32
【课堂实训】 32
单元小结 32
单元习题 33

单元3 选择结构程序设计 36
任务3-1 计算时间差 37
【任务目标】 37
【任务陈述】 37
【知识准备】 37
3.1.1 关系运算符与关系表达式 37
3.1.2 算法及其表示 38
3.1.3 单分支if语句 40
3.1.4 程序调试方法 42
【任务实施】 43
【课堂实训】 44
任务3-2 购物找零计算器 44
【任务目标】 44
【任务陈述】 44
【知识准备】 45
3.2.1 if...else语句 45
3.2.2 条件运算符 46
【任务实施】 47
【课堂实训】 48
任务3-3 计算购物折扣 48
【任务目标】 48
【任务陈述】 49
【知识准备】 49
3.3.1 if语句嵌套 49
3.3.2 逻辑运算符与逻辑表达式 51
【任务实施】 54
【课堂实训】 55
任务3-4 划分会员等级 56
【任务目标】 56
【任务陈述】 56
【知识准备】 56
3.4.1 多分支语句if...else if...else 56
3.4.2 单一出口原则 58
【任务实施】 59
【课堂实训】 60
任务3-5 判断指定月份天数 60
【任务目标】 60
【任务陈述】 60
【知识准备】 61
3.5.1 switch语句 61
3.5.2 break语句 62
【任务实施】 64
【课堂实训】 66
单元小结 66
单元习题 67
单元4 循环结构程序设计 71
任务4-1 购物计算器 72
【任务目标】 72
【任务陈述】 72
【知识准备】 72
4.1.1 循环概述 72
4.1.2 while循环语句 72
【任务实施】 75
【课堂实训】 76
任务4-2 猜数游戏设计与实现 77
【任务目标】 77
【任务陈述】 77
【知识准备】 77
4.2.1 C语言随机数 77
4.2.2 do...while循环语句 79
【任务实施】 80
【课堂实训】 81
任务4-3 数的阶乘计算 82
【任务目标】 82
【任务陈述】 82
【知识准备】 82
4.3.1 for循环的一般形式 82
4.3.2 for循环语句的执行过程 83
4.3.3 for循环语句的应用场景 85
4.3.4 3种循环的选择 85
【任务实施】 85
【课堂实训】 86
任务4-4 判断素数 86
【任务目标】 86
【任务陈述】 86
【知识准备】 87

4.4.1 break语句 87
4.4.2 continue语句 88
【任务实施】 89
【课堂实训】 90
任务4-5 凑硬币 91
【任务目标】 91
【任务陈述】 91
【知识准备】 91
4.5.1 循环嵌套 91
4.5.2 枚举法 92
4.5.3 接力break与goto语句 94
【任务实施】 94
【课堂实训】 97
单元小结 97
单元习题 97
单元5 数组程序设计 102
任务5-1 成绩统计 103
【任务目标】 103
【任务陈述】 103
【知识准备】 103
5.1.1 数组的概念 103
5.1.2 一维数组的定义 104
5.1.3 一维数组的初始化 105
5.1.4 一维数组的遍历与搜索 105
【任务实施】 107
【课堂实训】 108
任务5-2 成绩排序 108
【任务目标】 108
【任务陈述】 109
【知识准备】 109
5.2.1 排序 109
5.2.2 二分查找 113
【任务实施】 114
【课堂实训】 116
任务5-3 井字棋游戏 116
【任务目标】 116
【任务陈述】 117
【知识准备】 117
5.3.1 二维数组 117
5.3.2 二维数组的初始化 118
5.3.3 二维数组的遍历 120
【任务实施】 122
【课堂实训】 124
任务5-4 用户登录验证 125
【任务目标】 125
【任务陈述】 125
【知识准备】 125
5.4.1 字符数组与字符串 125
5.4.2 字符数组与字符串的输入和
输出 127
5.4.3 字符串函数 129
【任务实施】 131
【课堂实训】 132
单元小结 132
单元习题 133
单元6 模块化程序设计 138
任务6-1 制作图书超市收银系统菜单 139
【任务目标】 139
【任务陈述】 139
【知识准备】 139
6.1.1 函数的概念 139
6.1.2 函数的定义 140
6.1.3 函数的调用 141
6.1.4 函数的声明 141
【任务实施】 142
【课堂实训】 143
任务6-2 素数判断 144
【任务目标】 144
【任务陈述】 144
【知识准备】 144
6.2.1 函数参数 144
6.2.2 参数值传递 145
6.2.3 函数返回值 147
【任务实施】 149
【课堂实训】 150
任务6-3 计算并输出大于平均分的学生
成绩 151
【任务目标】 151
【任务陈述】 151
【知识准备】 151
6.3.1 地址 151
6.3.2 参数地址传递 152
6.3.3 变量作用域 153
【任务实施】 157
【课堂实训】 159
任务6-4 计算斐波那契数列第N项值 159
【任务目标】 159
【任务陈述】 159
【知识准备】 160
6.4.1 递归函数 160
6.4.2 递推与递归 160
6.4.3 递归条件 161
【任务实施】 162
【课堂实训】 163
单元小结 164
单元习题 164
单元7 指针程序设计 168
任务7-1 交换两个变量的值 169
【任务目标】 169
【任务陈述】 169
【知识准备】 169
7.1.1 指针概述 169
7.1.2 指针变量 171
7.1.3 指针与动态内存分配 172
【任务实施】 173
【课堂实训】 174
任务7-2 小写字母变大写字母 174
【任务目标】 174
【任务陈述】 174
【知识准备】 175
7.2.1 指针的运算 175
7.2.2 指针变量访问数组 176
7.2.3 指针与字符串 178
7.2.4 指针数组 178

【任务实施】 180
【课堂实训】 182
任务7-3 3个数排序 182
【任务目标】 182
【任务陈述】 182
【知识准备】 183
7.3.1 指针接收变量地址 183
7.3.2 指针接收数组地址 184
【任务实施】 186
【课堂实训】 187
单元小结 187
单元习题 188
单元8 结构体程序设计 194
任务8-1 统计候选人票数 195
【任务目标】 195
【任务陈述】 195
【知识准备】 195
8.1.1 结构体概述 195
8.1.2 定义结构体 196
8.1.3 结构体变量的定义 197
8.1.4 结构体变量的初始化 198
8.1.5 结构体变量成员的引用与
赋值 198
8.1.6 结构体数组 200
【任务实施】 202
【课堂实训】 203
任务8-2 增加图书信息 204
【任务目标】 204
【任务陈述】 204
【知识准备】 204
8.2.1 链表概述 204
8.2.2 定义链表 205
8.2.3 链表操作 205
【任务实施】 207
【课堂实训】 210
单元小结 210
单元习题 211

单元9 文件程序设计 216
任务9-1 顺序读写图书信息 217
【任务目标】 217
【任务陈述】 217
【知识准备】 217
9.1.1 文件相关概念 217
9.1.2 文件指针 219
9.1.3 文件的打开与关闭 219
9.1.4 读写文件 221
【任务实施】 227
【课堂实训】 228
任务9-2 随机存取会员信息 229
【任务目标】 229
【任务陈述】 229
【知识准备】 230
9.2.1 fseek()函数 230
9.2.2 rewind()函数 231
9.2.3 ftell()函数 232
9.2.4 文件检测函数 232
【任务实施】 233
【课堂实训】 234
单元小结 235
单元习题 235
单元10 图书超市收银系统设计与
实现 237
任务10-1 需求分析 237
任务10-2 系统欢迎界面的设计与实现 240
任务10-3 图书基本信息管理 243
任务10-4 购书结算处理 249
任务10-5 售书历史记录处理 252
单元小结 255
单元习题 255
附录A——C语言关键字 257
附录B 258
附录C——常用的C语言库函数 260
附录D——运算符 264

读者评论

我要评论

作者介绍

彭顺生,湖南信息职业技术学院,软件学院院长,副教授/软件设计师,湖南省职业院校专业教学团队成员,湖南省高等学校国内访问学者,湖南教育开源软件推进联盟成员;主持湖南省精品专业建设项目1项、主持国家职业院校教师素质提高计划培训项目1项,获国家教学成果奖二等奖1项,湖南省教学成果一等奖1项,二等奖1项,三等奖2项。主持湖南省精品在线开放课程1门,教学能力比赛等二等奖等1项,主编教材2本,湖南省职业教育优秀教材1本,参编教材7本,参编职业教育“十二五”规划教材1本。参与湖南省专业(群)建设及资源库建设项目10余项。

同系列书

相关图书

人邮微信
本地服务
人邮微信
教师服务
二维码
读者服务
读者服务
返回顶部
返回顶部