
|
|
|
|
YOU CAN DOLT!---C++编程新手互动教程
|
|
|
|
|
| 作者 |
: |
FRANCIS
|
| ISBN |
: |
7115132526
|
| 出版社 |
: |
人民邮电
|
| 出版日期 |
: |
2005-4-1
|
| NT$ |
: |
428
|
|
|
|
|
|
暂时缺货
配送说明: 国际快递 , 海运邮递 。
付款说明: 1. VISA、MASTER線上刷卡 2. 信用卡传真刷卡付款 3.
邮政划拨 4. 银行汇款
|
|
|
|
|
 |
| |
本书采用互动的教学方式,使用C++语言来教授新手学习程序设计。 全书共17章。第1章是对编程概念和工具的简单介绍,第2章到第6章介绍了C++编程中的循环、函数、通信、类型创建和使用等技巧技能。第7章总结了编程的思路和技巧。接下来的6章(第8章到第13章)中,每一章都作为一个单元,在前17章的基础上添加了一些新的材料和一些新的思路。第14到第16章的主要目标是巩固所学的知识和技巧,并显示如何用所掌握的知识实现一些看上去难度很大的任务。第17章再次对常见编程问题进行了分类分析和论述。随书光盘中带有所需软件、附录和术语表。 本书适合于缺乏经验但却对学习计算机编程充满兴趣的读者,尤其适合作为高等院校学生学习编程的入门指南。
|
|
|
|
|
|
 |
| |
第1章 初论编程 1 1.1 什么是编程 1 1.2 编程工具介绍 2 1.3 我们的第一个程序 5 1.3.1 创建源代码 5 1.3.2 保存源代码 6 1.3.3 编译源代码 6 1.3.4 把程序添加到项目中 7 1.3.5 创建和运行可执行文件 7 1.3.6 详解Empty_Playpen源代码 8 1.4 C++程序的元素 11 1.5 Playpen窗口并不一定是白色的 12 1.6 画点 14 1.7 混合颜色 17 1.8 现代艺术 17 1.9 任务、练习和乐趣 18 1.10 Roberta的评论 19 1.11 总结 20 1.11.1 关键编程概念 20 1.11.2 C++要点 20 1.11.3 扩展要点 21
第2章 循环 23 2.1 绘制十字架 23 2.2 for循环 24 2.3 重新讨论绘制十字架 29 2.4 练习循环 30 2.5 简单算术操作符 31 2.5.1 乘法操作符 31 2.5.2 除法操作符 31 2.5.3 负号和减法操作符 31 2.6 Roberta的评论 33 2.7 练习的解决方案 34 2.8 总结 36 2.8.1 关键编程概念 36 2.8.2 C++要点 36
第3章 编写函数 38 3.1 绘制正方形 38 3.2 函数的概念 39 3.3 C++的函数 41 3.4 编写函数 42 3.4.1 使用函数 42 3.4.2 声明函数 43 3.4.3 定义函数 45 3.4.4 声明和定义在什么地方 46 3.5 头文件和实现文件 46 3.5.1 创建头文件 46 3.5.2 测试函数 48 3.5.3 创建实现文件 48 3.6 绘制直线 48 3.6.1 设计函数 49 3.6.2 测试函数 49 3.6.3 定义函数 50 3.7 绘制多条直线 53 3.8 创建你自己的工具函数 56 3.9 Roberta的评论 57 3.10 练习解决方案 57 3.11 总结 59 3.11.1 关键编程概念 59 3.11.2 C++要点 59 3.11.3 扩展要点 60
第4章 通信 61 4.1 名字和名字空间 61 4.2 交互 63 4.3 char和int类型 63 4.3.1 处理字符 63 4.3.2 使用int类型 64 4.4 流 66 4.4.1 控制台流 67 4.4.2 文件流 68 4.4.3 字符串流 68 4.5 string类型 68 4.6 创建一个简单的对话框 69 4.7 线性容器 71 4.8 代码详解 73 4.9 从键盘获取int值 78 4.10 处理意外情况 80 4.11 Roberta的评论 83 4.12 练习解决方案 84 4.13 总结 90 4.13.1 关键编程概念 90 4.13.2 C++要点 91 4.13.3 扩展要点 92
第5章 创建类型 93 5.1 不要低估自己 93 5.2 设计类型 94 5.2.1 日期的概念 94 5.2.2 抽象数据类型和C++ 95 5.3 double类型 95 5.3.1 double对象的I/O 96 5.3.2 避免重复 97 5.4 创建一个二维点类型 98 5.4.1 坐标系统 99 5.4.2 测量角度 99 5.4.3 设计point2d类型 100 5.4.4 实现point2d类型 106 5.4.5 包装 113 5.5 Roberta的评论 113 5.6 练习解决方案 113 5.7 总结 114 5.7.1 关键编程概念 114 5.7.2 C++要点 114 5.7.3 扩展要点 115
第6章 使用point2d类型 117 6.1 用自由函数添加功能 117 6.2 为point2d提供I/O支持 119 6.2.1 写入point2d对象 119 6.2.2 读取point2d对象 119 6.2.3 使用库版本 121 6.3 绘制直线和多边形 121 6.3.1 表示shape类型 122 6.3.2 绘制图形 123 6.3.3 移动图形 123 6.3.4 其他转换 124 6.4 绘制规则多边形 127 6.4.1 绘制圆形 128 6.4.2 绘制椭圆形 128 6.5 类型和原点 129 6.6 Roberta的评论 129 6.7 任务解决方案 131 6.8 练习解决方案 137 6.9 总结 139 6.9.1 C++要点 139 6.9.2 扩展要点 140
第7章 寻找乐趣 141 7.1 重视技巧 141 7.2 只是为了寻找乐趣 141 7.3 有趣的编程思路 145 7.4 展望 145 7.4.1 接下来干什么 146 7.4.2 烦人的练习 146 7.4.3 一个过去的任务 147 7.4.4 挑战 148
第8章 编写菜单 149 8.1 提供一组选择 150 8.1.1 另一种方式的循环:do...while 150 8.1.2 一种新类型:bool 151 8.1.3 知道什么时候停止 151 8.1.4 函数声明和定义 153 8.1.5 用switch实现多种选择 154 8.2 处理依赖性 160 8.2.1 另一种用户定义类型:枚举 161 8.2.2 使用枚举提高可读性 162 8.3 填充多边形的函数 165 8.4 Roberta的评论 167 8.5 任务解决方案 168 8.6 总结 169 8.6.1 关键编程概念 169 8.6.2 C++要点 170 8.6.3 扩展要点 170
第9章 保存数据 172 9.1 保存和恢复图像 172 9.1.1 无损和有损压缩 172 9.1.2 用于Playpen的PNG文件 174 9.2 使用捕捉到的数据 175 9.2.1 存储键盘数据 177 9.2.2 恢复存储数据 178 9.3 一个具有持久化功能的菜单驱动程序 179 9.3.1 捕捉动作 182 9.3.2 实现动作记录 183 9.3.3 重复动作 184 9.3.4 实现redo函数 186 9.3.5 显示动作 186 9.3.6 实现undo函数 187 9.4 更多实践 188 9.5 迭代器 188 9.5.1 用迭代器查找数据 189 9.5.2 C++的迭代器 190 9.5.3 从列表中删除一个动作 191 9.5.4 编辑动作 191 9.6 学习下一章之前 193 9.7 任务解决方案 193 9.8 总结 201 9.8.1 关键编程概念 201 9.8.2 C++要点 202 9.8.3 扩展要点 202
第10章 抽彩、密码和随机选择 203 10.1 随机和伪随机序列 203 10.2 随机数字的算法 204 10.3 理解抽彩程序 205 10.3.1 一个非常差的抽彩选择程序 205 10.3.2 一个较差的抽彩选择程序 207 10.3.3 一个更好的抽彩选择程序 208 10.3.4 生成真正随机的数字 210 10.3.5 其他程序可能性 215 10.4 发送隐藏信息 216 10.4.1 使用PRNG作为一次性的密码本 216 10.4.2 对文件进行加密 217 10.4.3 把信息加密成图像 220 10.5 取决于你 221 10.6 Roberta的评论 222 10.7 任务解决方案 224 10.8 总结 225 10.8.1 关键编程概念 225 10.8.2 C++要点 225 10.8.3 扩展要点 226
第11章 键盘和鼠标 227 11.1 一种键盘类型 227 11.1.1 fgw::keyboard类型 228 11.1.2 忽略修饰键 229 11.1.3 处理修饰键 232 11.1.4 处理大小写 232 11.2 使用鼠标 234 11.2.1 把原始鼠标坐标转换为playpen坐标 235 11.2.2 使用鼠标按钮 236 11.2.3 持续更新显示 237 11.3 对代码进行重构 239 11.4 更多实践 242 11.5 Roberta的评论 243 11.6 练习解决方案 244 11.7 总结 248 11.7.1 关键编程概念 248 11.7.2 C++要点 249 11.7.3 扩展要点 249
第12章 巧用bitset 251 12.1 计算一个质数列表 251 12.1.1 什么是质数 251 12.1.2 Eratosthenes筛选法 252 12.1.3 一种特殊的容器:bitset 252 12.1.4 实现Eratosthenes筛选法的程序 255 12.2 编织模拟 258 12.2.1 编织简介 258 12.2.2 设置经线 259 12.2.3 实现综片 260 12.2.4 实现纬线 261 12.2.5 寻找乐趣 262 12.3 Conway博士的Life游戏 262 12.3.1 确定未来的状态 264 12.3.2 创建一个Life宇宙 265 12.3.3 创建一个程序 265 12.3.4 复制宇宙 266 12.3.5 玩Life游戏 267 12.3.6 修改Life游戏 268 12.3.7 没有练习 269 12.4 Roberta的评论 269 12.5 任务解决方案 269 12.6 总结 270 12.6.1 C++总结 270 12.6.2 扩展要点 271
第13章 set和map的应用 272 13.1 什么是关联容器 272 13.2 什么是集合(set) 272 13.3 什么是映射(map) 276 13.3.1 std::map是如何工作的 277 13.3.2 检查一个项目是否已经存在于std::map中 280 13.4 Roberta的评论 281 13.5 任务解决方案 282 13.6 练习解决方案 283 13.7 总结 285 13.7.1 关键编程概念 285 13.7.2 C++要点 286 13.7.3 扩展要点 286
第14章 获取、存储和恢复图形项目 287 14.1 准备编程 287 14.2 图标、精灵和相关的项目 288 14.2.1 设计icon类型 288 14.2.2 把数据载入到icon对象 290 14.2.3 显示icon对象的数据 291 14.2.4 从文件中将数据载入到icon对象 293 14.2.5 为icon类型添加构造函数 293 14.2.6 把icon数据存储到文件 294 14.2.7 更多实践 296 14.3 创建字体 296 14.3.1 设计glyph类型 297 14.3.2 实现glyph成员函数 298 14.3.3 创建字体 298 14.3.4 设计font类型 300 14.3.5 实现font类型的成员函数 300 14.3.6 显示font对象 302 14.4 在Playpen窗口中显示字符串 303 14.5 Roberta的评论 304 14.6 任务解决方案 305 14.7 练习解决方案 310 14.8 总结 312 14.8.1 关键编程概念 312 14.8.2 C++要点 312
第15章 函数对象和简单的动画 313 15.1 具有记忆的函数 313 15.1.1 实现一个具有记忆能力的函数 314 15.1.2 传递函数 316 15.1.3 使用缺省参数 318 15.1.4 使用名字空间来传递信息 321 15.2 迈向动画的第一步 323 15.2.1 移动的点 323 15.2.2 以前出现过吗 324 15.2.3 移动的对象或sprite 325 15.3 关于调色板 330 15.4 更高级的动画 332 15.5 Roberta的评论 335 15.6 任务解决方案 336 15.7 练习解决方案 339 15.8 总结 341 15.8.1 关键编程概念 341 15.8.2 C++要点 341 15.8.3 扩展要点 342
第16章 海龟图形——另一种观察图形的方式 344 16.1 一些历史知识 344 16.2 设计turtle类型 345 16.2.1 实现turtle类的行为 346 16.2.2 实现turtle状态 347 16.2.3 实现turtle成员函数 347 16.3 探索海龟图形 351 16.3.1 海龟还可以做什么 352 16.3.2 隐藏和显示海龟 353 16.4 递归 354 16.5 扩展思路 357 16.6 Roberta的评论 358 16.7 任务解决方案 358 16.8 总结 360 16.8.1 关键编程概念 360 16.8.2 C++要点 360
第17章 再论编程 361 17.1 我学故我用 361 17.2 基于游戏的问题 362 17.2.1 国际象棋 362 17.2.2 其他形式的棋类游戏 364 17.2.3 其他棋盘游戏 364 17.2.4 纸牌游戏 365 17.2.5 其他游戏 366 17.3 分析性的问题 366 17.3.1 词法分析 366 17.3.2 语言分析 367 17.3.3 查找隐藏信息 367 17.3.4 体育分析 368 17.3.5 可视化工具 368 17.4 数学问题 368 17.4.1 管理石油公司 369 17.4.2 用图形的方式解方程式 369 17.4.3 汉密尔顿路径 370 17.4.4 双极坐标 370 17.4.5 结论 371 17.5 总结 371 17.6 接下来干什么 372
附录A 一些常见的错误 373
|
|
|
 |
|
|