问题求解与程序设计(第2版)
本店经营正版图书 两天左右发货 如有着急发货的请不要下单
¥
27.26
3.9折
¥
69.9
全新
库存7件
作者鲍春波;林芳
出版社清华大学出版社
出版时间2021-01
版次2
装帧其他
上书时间2024-12-11
商品详情
- 品相描述:全新
图书标准信息
-
作者
鲍春波;林芳
-
出版社
清华大学出版社
-
出版时间
2021-01
-
版次
2
-
ISBN
9787302563877
-
定价
69.90元
-
装帧
其他
-
开本
16开
-
纸张
胶版纸
-
页数
436页
-
字数
662千字
- 【内容简介】
-
本书以问题求解为核心,在分析问题解决问题的过程中融入C/C
结构化程序设计的思想和方法,立足于专业基本功的训练,目标是应用工程型人才的培养。教材体系结构新颖,内容叙述深入透彻,含有丰富的案例和习题,并有配套的习题解答和实验指导。书中每个章节包含几个典型的案例,每个案例都按照分析、设计、实现、测试及相关知识点讨论的步骤进行,即符合人们的认知规律,又符合软件工程的思想。所有的案例和习题均按在线评测的风格编排。本书是高等院校(含高职大专)计算机相关专业结构化程序设计课程的*教材。
- 【作者简介】
-
鲍春波,男,河北衡水人。计算机应用技术专业工学博士,副教授。兴趣领域是程序设计语言、算法与数据结构、人工智能与大数据、计算机动画与游戏和虚拟现实技术等。有比较丰富的高校教学经验和大型软件开发经历。
- 【目录】
-
第1章 计算机与程序设计1
1.1 什么是计算机1
1.2 如何存储程序4
1.2.1 存储单位4
1.2.2 存储方式4
1.2.3 存取操作5
1.2.4 存储器分类5
1.2.5 文件与目录5
1.3 软件与程序设计7
1.4 典型程序演示9
1.5 程序设计方法10
1.5.1 结构化方法10
1.5.2 面向对象方法11
1.6 程序设计语言11
1.7 C/C 语言简介14
1.8 C/C 结构化程序设计基本环境16
小结18
概念理解18
基本功训练19
实验指导19
第2章 数据类型与变量——程序设计入门20
2.1 在屏幕上输出文字信息20
2.1.1 C语言程序的基本框架21
2.1.2 注释22
2.1.3 预处理指令22
2.1.4 主函数——应用程序的入口23
2.1.5 转义序列23
2.1.6 保留字与分隔符24
2.1.7 标准输出函数24
2.2 计算两个固定整数的和与积25
2.2.1 输出列表和占位符27
2.2.2 数据类型——整型28
2.2.3 常量与变量29
2.2.4 算术运算和算术表达式31
2.2.5 赋值语句31
2.2.6 程序设计的风格32
2.3 计算任意两个整数的和与积33
2.3.1 标准输入函数34
2.3.2 测试用例35
2.3.3 程序的顺序结构36
2.4 温度转换37
2.4.1 变量的初始化39
2.4.2 运算的优先级和结合性41
2.5 求两个整数的平均值42
2.5.1 浮点型数据44
2.5.2 浮点型数据的输入与输出46
2.5.3 浮点型数据的舍入误差和溢出问题48
2.5.4 不同类型之间的转换50
2.6 计算圆的周长和面积51
2.6.1 符号常量52
2.6.2 带参数的宏53
小结54
概念理解54
常见错误55
在线评测56
项目设计58
实验指导59
第3章 判断与决策——选择程序设计60
3.1 让成绩合格的学生通过60
3.1.1 关系运算与逻辑判断61
3.1.2 逻辑常量与逻辑变量63
3.1.3 单分支选择结构64
3.1.4 特殊形式的判断条件66
3.1.5 比较两个实数的大小67
3.1.6 复合语句69
3.2 按成绩把学生分成两组70
3.2.1 双分支选择结构73
3.2.2 条件运算74
3.3 按成绩把学生分成多组(百分制)75
3.3.1 嵌套的if结构81
3.3.2 嵌套的ifelse结构82
3.3.3 多分支选择结构85
3.4 按成绩把学生分成多组(五级制)87
3.4.1 字符常量和变量90
3.4.2 字符型变量的输入与输出91
3.5 判断闰年问题93
3.5.1 逻辑运算94
3.5.2 逻辑运算的优先级和短路性95
小结96
概念理解97
常见错误97
在线评测98
项目设计100
实验指导100
第4章 重复与迭代——循环程序设计101
4.1 打印规则图形101
4.1.1 计数控制的while循环103
4.1.2 自增、自减运算104
4.2 自然数求和105
4.2.1 迭代与赋值107
4.2.2 更多的赋值运算109
4.2.3 for循环109
4.3 简单的学生成绩统计115
4.3.1 标记控制的while循环117
4.3.2 程序的容错能力118
4.3.3 程序调试与测试119
4.3.4 输入输出重定向119
4.3.5 dowhile循环121
4.4 计算2的算术平方根123
4.4.1 误差精度控制的while循环125
4.4.2 const常量126
4.5 打印九九乘法表127
4.5.1 多重循环嵌套 128
4.5.2 穷举法131
4.6 判断一个数是否是素数132
4.6.1 break /continue135
4.6.2 goto语句137
4.7 随机游戏模拟140
4.7.1 随机数的生成141
4.7.2 自顶向下、逐步求精144
4.7.3 游戏程序的基本结构145
4.8 结构化程序设计145
小结146
概念理解147
常见错误147
在线评测148
项目设计151
实验指导151
第5章 分而治之——模块化程序设计152
5.1 再次讨论猜数游戏模拟问题152
5.1.1 模块化思想155
5.1.2 函数定义156
5.1.3 函数调用160
5.1.4 函数原型165
5.1.5 函数测试166
5.2 是非判断问题求解166
5.2.1 判断函数166
5.2.2 变量的存储类别与作用域168
5.2.3 函数调用堆栈175
5.3 递归问题求解177
5.3.1 问题的递归描述178
5.3.2 递归函数178
5.4 用计算机绘图182
5.4.1 接口设计186
5.4.2 接口实现187
5.4.3 全局变量188
5.4.4 私有函数191
5.4.5 建立自己的库192
5.5 学生成绩管理——大规模问题求解192
5.5.1 程序文件模块195
5.5.2 构建多文件应用程序196
小结198
概念理解198
常见错误199
在线评测199
项目设计202
实验指导202
第6章 批量数据处理——数组程序设计203
6.1 一组数据排序问题203
6.1.1 什么是一维数组206
6.1.2 一维数组的声明206
6.1.3 一维数组的引用207
6.1.4 一维数组初始化209
6.1.5 让下标从1开始209
6.1.6 交换排序210
6.1.7 一维数组作为函数的参数212
6.2 三门课程成绩按总分排序问题215
6.2.1 二维数组218
6.2.2 选择排序220
6.2.3 二维数组作为函数的参数221
6.3 在成绩单中查找某人的成绩222
6.3.1 字符数组与字符串227
6.3.2 字符串的输入与输出227
6.3.3 字符串的基本操作229
6.3.4 标准库中的字符及字符串函数230
6.3.5 字符串数组234
6.3.6 线性查找235
6.3.7 折半查找236
6.4 大整数加法237
6.4.1 逻辑右对齐相加法240
6.4.2 逆置左对齐相加法241
小结242
概念理解243
常见错误244
在线评测244
项目设计247
实验指导249
第7章 内存单元的地址——指针程序设计250
7.1 用函数交换两个变量的值251
7.1.1 指针变量的声明和初始化254
7.1.2 指针变量的引用255
7.1.3 指针作为函数的参数256
7.2 再次讨论批量数据处理问题259
7.2.1 指向一维数组的指针和指针运算261
7.2.2 用指针访问一维数组的元素263
7.2.3 用const修饰指针267
7.3 二维批量数据处理问题的指针版267
7.3.1 二维数组名与行列地址270
7.3.2 用指针访问二维数组的元素271
7.3.3 指针的指针274
7.4 通用函数问题275
7.4.1 指向函数的指针277
7.4.2 指向函数的指针作为函数的参数278
7.5 再次讨论字符串279
7.5.1 字符指针与字符数组282
7.5.2 字符型指针数组284
7.5.3 用字符指针进行字符串排序286
7.6 程序运行时提供必要的参数286
7.6.1 命令行参数288
7.6.2 集成环境下设置应用程序参数289
7.7 数据规模未知的问题求解289
7.7.1 void类型的指针293
7.7.2 动态分配内存294
7.7.3 动态申请字符串295
7.7.4 动态申请一维数组296
7.7.5 动态申请二维数组296
7.7.6 让指针指向被调用函数中动态申请的内存300
7.7.7 C 中的引用302
小结304
概念理解305
常见错误306
在线评测307
项目设计310
实验指导311
第8章 客观对象的描述——结构程序设计312
8.1 基于对象数组的学生成绩管理问题312
8.1.1 结构类型316
8.1.2 结构变量的声明及使用317
8.1.3 typedef319
8.1.4 指向结构的指针321
8.1.5 结构变量的内存映像324
8.1.6 结构类型定义的嵌套325
8.1.7 结构数组和指向结构数组的指针325
8.1.8 结构作为函数的参数或返回值327
8.1.9 抽象数据类型328
8.2 基于对象链表的学生成绩管理系统329
8.2.1 自引用结构与链表334
8.2.2 静态链表和动态链表336
8.2.3 返回链表的头指针340
8.2.4 学生对象链表341
8.3 志愿者管理问题341
8.3.1 联合343
8.3.2 志愿者信息存储345
8.4 洗牌和发牌模拟问题345
8.5 枚举类型348
小结351
概念理解351
常见错误352
在线评测352
项目设计356
实验指导356
第9章 数据的持久存储——文件程序设计357
9.1 给一个源程序文件做备份357
9.1.1 文件与目录360
9.1.2 文件格式361
9.1.3 文件操作的一般步骤361
9.1.4 字符读写363
9.1.5 字符串读写(无格式的行读写)364
9.2 把数据保存到文件中365
9.2.1 格式化读写370
9.2.2 二进制块数据读写372
小结378
概念理解378
常见错误379
在线评测379
项目设计382
实验指导382
第10章 位运算——低级程序设计383
10.1 网络IP地址的表示383
10.1.1 按位左移或右移385
10.1.2 按位取反387
10.1.3 按位与387
10.2 加密解密问题389
10.2.1 按位或390
10.2.2 按位异或391
10.3 一个图形类型优化问题391
10.4 位段394
小结396
概念理解396
常见错误396
在线评测397
项目设计398
实验指导401
附录A C语言的关键字402
附录B ASCII码403
附录C C运算符的优先级与结合性404
附录D C 版的HelloWorld!406
D.1 C 的头文件406
D.2 命名空间407
D.3 C 的输入和输出408
附录E 索引410
E.1 全书求解问题索引410
E.2 全书各章节知识点索引411
参考文献414
点击展开
点击收起
— 没有更多了 —
以下为对购买帮助不大的评价