图书介绍

程序设计基础 从问题到程序 第2版2025|PDF|Epub|mobi|kindle电子书版本百度云盘下载

程序设计基础 从问题到程序 第2版
  • 胡明,王红梅著 著
  • 出版社: 北京:清华大学出版社
  • ISBN:7302411808
  • 出版时间:2016
  • 标注页数:317页
  • 文件大小:38MB
  • 文件页数:331页
  • 主题词:C语言-程序设计-高等学校-教材

PDF下载


点此进入-本书在线PDF格式电子书下载【推荐-云解压-方便快捷】直接下载PDF格式图书。移动端-PC端通用
种子下载[BT下载速度快]温馨提示:(请使用BT下载软件FDM进行下载)软件下载地址页直链下载[便捷但速度慢]  [在线试读本书]   [在线获取解压码]

下载说明

程序设计基础 从问题到程序 第2版PDF格式电子书版下载

下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。

建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!

(文件页数 要大于 标注页数,上中下等多册电子书除外)

注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具

图书目录

第1章 绪论1

1.1 程序、程序设计与程序设计语言1

1.1.1 程序与程序设计1

1.1.2 程序设计语言2

1.2 程序的基本构成4

1.2.1 程序示例5

1.2.2 基本字符集6

1.2.3 词法单位6

1.2.4 语法单位8

1.2.5 程序8

1.3 程序的上机过程12

1.3.1 编程环境12

1.3.2 程序编辑12

1.3.3 程序编译13

1.3.4 程序连接13

1.3.5 运行调试13

1.4 程序风格14

1.4.1 标识符的命名规则14

1.4.2 注释15

1.4.3 缩进15

1.4.4 行文格式16

1.5 问题求解与程序设计17

1.5.1 程序设计的一般过程17

1.5.2 程序设计的核心——算法18

1.5.3 程序设计实例——鸡兔同笼问题21

习题122

第2章 数据的存储表示25

引例2.1 计算圆的面积25

2.1 数据的存储26

2.1.1 二进制26

2.1.2 内存27

2.2 基本数据类型28

2.2.1 整型29

2.2.2 实型31

2.2.3 字符型32

2.2.4 逻辑型33

2.3 常量34

2.3.1 字面常量34

2.3.2 符号常量36

2.4 变量38

2.4.1 变量的概念38

2.4.2 变量的定义和初始化39

2.4.3 变量的赋值40

2.5 程序设计实例43

2.5.1 实例1——温度转换43

2.5.2 实例2——计算本息和43

习题244

第3章 数据的运算处理47

3.1 算术运算47

引例3.1 求平均值47

3.1.1 算术运算48

3.1.2 运算符的优先级和结合性49

3.2 逻辑运算50

引例3.2 判断闰年50

3.2.1 关系运算51

3.2.2 逻辑运算51

3.3 赋值运算52

3.3.1 赋值运算52

3.3.2 自增/自减运算53

3.4 其他运算54

3.4.1 逗号运算54

3.4.2 取长度运算54

3.4.3 条件运算55

3.5 运算对象的类型转换55

3.5.1 自动转换56

3.5.2 强制转换57

3.6 程序设计实例58

3.6.1 实例1——通用产品代码UPC58

3.6.2 实例2——疯狂赛车59

习题360

第4章 程序的基本控制结构63

4.1 顺序结构63

引例4.1 整数的逆值63

4.1.1 简单的顺序结构64

4.1.2 复合语句65

4.2 选择结构65

引例4.2 水仙花数66

4.2.1 逻辑值控制的选择结构67

4.2.2 算术值控制的选择结构69

4.3 循环结构71

引例4.3 欧几里得算法71

4.3.1 当型循环72

4.3.2 直到型循环72

4.3.3 计数型循环73

4.3.4 循环结构的比较74

4.3.5 循环结构的嵌套77

4.4 其他控制语句78

引例4.4 素数判定78

4.4.1 break语句79

4.4.2 continue语句80

4.5 程序设计实例81

4.5.1 实例1——将三个整数由小到大输出81

4.5.2 实例2——今年已经过去多久了81

4.5.3 实例3——百元买百鸡问题83

4.5.4 实例4——哥德巴赫猜想84

习题485

第5章 批量同类型数据的组织——数组88

5.1 一维数组88

引例5.1 舞林大会88

5.1.1 一维数组的定义和初始化89

5.1.2 一维数组的操作92

5.2 二维数组94

引例5.2 哥尼斯堡七桥问题94

5.2.1 二维数组的定义和初始化95

5.2.2 二维数组的操作97

5.3 程序设计实例99

5.3.1 实例1——折半查找99

5.3.2 实例2——合并有序数组100

5.3.3 实例3——对角线元素之和101

5.3.4 实例4——幻方问题103

习题5104

第6章 程序的组装单元——函数107

6.1 用户定义的函数——自定义函数107

引例6.1 欧几里得算法107

6.1.1 函数定义108

6.1.2 函数调用110

6.1.3 函数声明112

6.2 系统定义的函数——库函数113

引例6.2 素数判定114

6.2.1 头文件与文件包含115

6.2.2 标准输入输出函数116

6.2.3 随机函数119

6.2.4 其他常用库函数120

6.3 变量的作用域121

引例6.3 鸡兔同笼问题121

6.3.1 局部变量122

6.3.2 全局变量124

6.4 变量的生存期125

引例6.4 字数统计125

6.4.1 自动变量126

6.4.2 静态变量127

6.5 程序设计实例128

6.5.1 实例1——三角形的面积128

6.5.2 实例2——猜数游戏129

习题6131

第7章 变量的间接访问——指针134

7.1 指针134

引例7.1 答疑教室134

7.1.1 指针的概念135

7.1.2 指针变量的定义和初始化137

7.1.3 指针变量的操作139

7.1.4 指针所指变量的操作141

7.2 指针作为函数的参数141

引例7.2 鸡兔同笼问题141

7.2.1 值传递方式——函数的输入143

7.2.2 指针传递方式——函数的输出144

7.2.3 指针传递方式——函数的输入输出145

7.3 数组作为函数的参数146

引例7.3 顺序查找146

7.3.1 一维数组作为函数的参数147

7.3.2 二维数组作为函数的参数149

7.4 程序设计实例150

7.4.1 实例1——三个整数由小到大输出150

7.4.2 实例2——哥德巴赫猜想151

7.4.3 实例3——求一元二次方程的根152

7.4.4 实例4——简单选择排序154

习题7155

第8章 字符数据的组织——字符串158

引例8.1 恺撒加密158

8.1 字符串变量的定义和初始化159

8.1.1 字符数组160

8.1.2 字符串指针162

8.2 字符串的操作162

8.2.1 输入输出操作162

8.2.2 赋值操作166

8.2.3 字符串的比较167

8.2.4 常用字符串库函数168

8.3 程序设计实例168

8.3.1 实例1——字数统计168

8.3.2 实例2——字符串匹配169

习题8171

第9章 自定义数据类型174

9.1 可枚举数据的组织——枚举类型174

引例9.1 行走机器人174

9.1.1 枚举类型的定义176

9.1.2 枚举变量的定义与初始化176

9.1.3 枚举变量的操作178

9.2 不同类型数据的组织——结构体类型179

引例9.2 统计入学成绩179

9.2.1 结构体类型的定义180

9.2.2 结构体变量的定义和初始化181

9.2.3 结构体变量的操作183

9.3 批量不同类型数据的组织——结构体数组185

引例9.3 统计入学成绩186

9.3.1 结构体数组的定义和初始化187

9.3.2 结构体数组的操作189

9.4 为自定义数据类型定义别名190

9.5 程序设计实例191

9.5.1 实例1——荷兰国旗问题191

9.5.2 实例2——最近对问题193

习题9195

第10章 再谈函数198

10.1 函数的嵌套调用198

引例10.1 字符串的循环左移198

10.1.1 函数——封装的小程序200

10.1.2 函数的嵌套调用201

10.2 函数的递归调用202

引例10.2 求n!202

10.2.1 递归的定义203

10.2.2 函数的递归调用204

10.3 程序设计实例206

10.3.1 实例1——公共子序列206

10.3.2 实例2——弦截法求方程的根208

10.3.3 实例3——汉诺塔问题210

10.3.4 实例4——折半查找211

习题10213

第11章 再谈指针216

11.1 指针与数组216

引例11.1 判断回文串216

11.1.1 用指针访问一维数组217

11.1.2 用指针访问二维数组219

11.1.3 指针数组221

11.2 指针与结构体222

引例11.2 统计入学成绩222

11.2.1 指向结构体的指针223

11.2.2 结构体指针作为函数参数224

11.3 动态存储分配225

引例11.3 发纸牌226

11.3.1 申请和释放存储空间227

11.3.2 动态数组230

11.3.3 链表232

11.4 程序设计实例236

11.4.1 实例1——求最大字符串236

11.4.2 实例2——进制转换237

习题11239

第12章 再谈输入输出241

引例12.1 统计入学成绩241

12.1 文件与文件指针244

12.1.1 文本文件和二进制文件244

12.1.2 文件缓冲区245

12.1.3 文件指针246

12.2 文件的当前位置指针246

12.2.1 什么是文件的当前位置指针246

12.2.2 跟踪文件的当前位置指针247

12.2.3 定位文件的当前位置指针248

12.3 文件的打开与关闭249

12.3.1 文件的打开249

12.3.2 文件的关闭251

12.4 文件的读写操作251

12.4.1 字符方式文件读写251

12.4.2 字符串方式文件读写252

12.4.3 格式化方式文件读写254

12.4.4 二进制方式文件读写255

12.5 程序设计实例256

12.5.1 实例1——文件复制256

12.5.2 实例2——注册与登录258

习题12260

第13章 再谈程序的基本结构262

13.1 多文件程序262

13.1.1 多文件程序的构成262

13.1.2 将源程序文件分解为多个程序文件模块263

13.2 外部变量和外部函数264

13.2.1 外部变量264

13.2.2 外部函数265

13.3 嵌套包含267

13.3.1 条件编译267

13.3.2 保护头文件270

13.4 程序设计实例——石头、剪子、布游戏271

习题13276

第14章 低级程序设计277

引例14.1 XOR加密277

14.1 数据表示278

14.1.1 二进制数与八进制数和十六进制数之间的转换278

14.1.2 位域279

14.2 位运算280

14.2.1 位逻辑运算281

14.2.2 移位运算282

14.2.3 补位原则283

14.2.4 位运算的应用283

14.3 程序设计实例284

14.3.1 实例1——快速欧几里得算法284

14.3.2 实例2——过滤特殊字符285

习题14287

第15章 基本的算法设计技术288

15.1 蛮力法288

15.1.1 设计思想288

15.1.2 程序设计实例——起泡排序289

15.2 穷举法291

15.2.1 设计思想291

15.2.2 程序设计实例——假币问题292

15.3 递推法295

15.3.1 设计思想295

15.3.2 程序设计实例——捕鱼知多少296

15.4 分治法297

15.4.1 设计思想297

15.4.2 程序设计实例——数字旋转方阵299

15.5 动态规划法302

15.5.1 设计思想302

15.5.2 程序设计实例——0/1背包问题303

15.6 贪心法305

15.6.1 设计思想305

15.6.2 程序设计实例——埃及分数306

习题15308

附录A 标准ASCII码310

附录B 运算符的优先级和结合性311

附录C 常用库函数312

参考文献317

热门推荐