《计算机程序设计基础》PDF下载

  • 购买积分:12 如何计算积分?
  • 作  者:陈卫卫,王庆瑞编著
  • 出 版 社:北京:机械工业出版社
  • 出版年份:2007
  • ISBN:9787111190202
  • 页数:334 页
图书介绍:本书包括C语言的各种数据类型、表达式、分支等。

前言 1

第1章 概论 1

1.1 计算机软件及其发展 1

1.1.1 程序设计语言的发展 1

出版说明 1

1.1.2 操作系统的形成和发展 2

1.2 程序结构和效率 3

1.2.1 程序的一般结构 3

1.2.2 算法和程序的效率 5

1.3 习题 9

2.1.1 C语言的特点 12

第2章 简单程序设计 12

2.1 C语言基础 12

2.1.2 基本语法成分 14

2.1.3 基本数据类型 16

2.2 表达式 19

2.2.1 运算符的优先级与结合性 19

2.2.2 算术表达式 20

2.2.3 赋值表达式和赋值语句 22

2.2.4 逗号表达式 24

2.2.5 关系表达式 24

2.2.6 逻辑表达式 25

2.2.7 条件表达式 26

2.3 基本输入/输出 26

2.3.1 getchar函数和putchar函数 27

2.3.2 格式输出函数printf 27

2.3.3 格式输入函数scanf 29

2.4 分支程序设计 32

2.4.1 if语句 32

2.4.2 switch语句 34

2.4.3 应用举例 36

2.5.1 while语句 37

2.5 循环程序设计 37

2.5.2 do-while语句 38

2.5.3 for语句 39

2.5.4 多重循环 40

2.5.5 break语句和continue语句 41

2.5.6 goto语句和空语句 42

2.6 习题 43

第3章 数组和指针类型 57

3.1 一维数组 57

3.1.1 定义方式和引用方式 57

3.1.2 应用举例 59

3.2.1 定义方式和引用方式 61

3.2 二维数组 61

3.2.2 应用举例 63

3.3 字符数组 64

3.3.1 定义方式和引用方式 64

3.3.2 字符串的输入和输出 66

3.3.3 应用举例 67

3.4 指针 68

3.4.1 指针变量的定义和引用 68

3.4.2 指向一维数组的指针 71

3.4.3 指向字符串的指针 74

3.4.4 指针数组 76

3.5 习题 78

第4章 函数和文件 92

4.1 函数的定义和调用 92

4.1.1 有关概念 92

4.1.2 函数定义方式 93

4.1.3 函数调用方式 94

4.1.4 函数的返回和返回值 96

4.2 函数的嵌套调用与递归调用 98

4.2.1 函数的嵌套调用 98

4.2.2 函数的递归调用 99

4.3.1 数组作函数形参 103

4.3 数组、指针和引用作函数形参 103

4.3.2 指针作函数形参 104

4.3.3 引用作函数形参 106

4.4 变量的作用域和属性 107

4.4.1 变量的作用域 107

4.4.2 变量的存储属性和修饰属性 109

4.4.3 内部函数和外部函数 113

4.4.4 存储属性小结 115

4.5 编译预处理 116

4.5.1 文件包含命令 116

4.5.2 宏定义命令 117

4.5.3 条件编译命令 119

4.6 文件数据的读写 121

4.6.1 文件的打开和关闭 121

4.6.2 文件的读写操作 125

4.6.3 文件的定位与测试操作 129

4.7 习题 132

第5章 位运算和构造类型 151

5.1 位运算 151

5.1.1 逻辑位运算 151

5.1.2 移位运算 153

5.2 结构类型 154

5.2.1 定义和引用方式 154

5.2.2 typedef的用法 157

5.3 联合类型 160

5.4 枚举类型 161

5.5 习题 165

第6章 表结构 172

6.1 顺序表 172

6.1.1 表结构及存储方法 172

6.1.2 顺序表的插入和删除 173

6.1.3 顺序表的查找 175

6.2 栈结构和队结构 177

6.2.1 栈和队的运算 177

6.2.2 栈的应用 183

6.3.1 链表的概念和种类 185

6.3 链表的基本操作 185

6.3.2 基本的链操作 187

6.3.3 链表的构造和输出 190

6.4 链表的查找、插入和删除 193

6.4.1 链表的查找 193

6.4.2 链表的插入 194

6.4.3 链表的删除 195

6.5 双向链表和静态链表 195

6.5.1 双向链表 195

6.5.2 静态链表 197

6.6.1 散列函数 200

6.6 散列表 200

6.6.2 散列表的构造和查找 202

6.7 矩阵运算 205

6.7.1 矩阵的存储 205

6.7.2 矩阵运算示例 209

6.8 字符串 211

6.8.1 字符串及其存储结构 211

6.8.2 模式匹配的实现 213

6.9 习题 216

7.1 树的概念 229

7.1.1 有关定义和术语 229

第7章 树结构 229

7.1.2 二叉树 232

7.1.3 普通树、森林和二叉树的相互转换 235

7.2 二叉树的遍历 237

7.2.1 遍历算法 237

7.2.2 遍历序列的性质 240

7.2.3 遍历的应用 243

7.3 二叉树的构造 244

7.3.1 用先序序列和中序序列构造二叉树 244

7.3.2 用扩充先序序列构造二叉树 245

7.4.1 检索树的查找算法 246

7.4 检索树 246

7.4.2 检索树的插入和构造 247

7.4.3 检索树的删除 249

7.5 哈夫曼树 253

7.5.1 哈夫曼算法 253

7.5.2 哈夫曼树的构造和应用 254

7.6 习题 256

第8章 图结构 264

8.1 基本概念 264

8.1.1 图的定义和种类 264

8.1.2 有关术语 265

8.2.1 邻接矩阵 267

8.2 图的存储方法 267

8.2.2 顶点集合的存储表示 269

8.2.3 邻接矩阵的顺序存储 269

8.2.4 邻接表 270

8.3 图的遍历 272

8.3.1 先深搜索 272

8.3.2 先广搜索 274

8.4 最小生成树和最短路径 276

8.4.1 Kruskal算法 276

8.4.2 Prim算法 278

8.4.3 Dijkstra算法 280

8.5 习题 283

第9章 排序 290

9.1 选择排序 290

9.1.1 基本排序方法 290

9.1.2 直接选择排序 291

9.1.3 堆排序 292

9.2 插入排序 297

9.2.1 直接插入排序 297

9.2.2 二分插入排序 299

9.3.1 冒泡排序 300

9.3 交换排序 300

9.3.2 快速排序 302

9.4 习题 305

附录 311

附录A 字符的ASCⅡ码表 311

附录B 常用库函数表 312

附录C 上机操作方法 316

C.1 运行C程序的一般步骤 316

C.2 Turbo C 2.0上机操作方法 316

C.3 Visual C++6.0上机操作方法 319

附录D 部分习题参考答案 325

参考文献 334