当前位置:首页 > 工业技术
C语言程序设计与数据结构
C语言程序设计与数据结构

C语言程序设计与数据结构PDF电子书下载

工业技术

  • 电子书积分:11 积分如何计算积分?
  • 作 者:刘信杰,李艳主编
  • 出 版 社:北京:中国水利水电出版社
  • 出版年份:2008
  • ISBN:9787508456539
  • 页数:268 页
图书介绍:C语言程序设计是高职高专院校学生的计算机入门语言,本书在内容安排上力求做到难易适中、通俗易懂,使学生在最短时间内掌握C语言程序设计的基本方法。本书分前后两部分,第一部分为C语言程序设计基础,第二部分为数据结构,共15章。分别介绍了C语言的基本知识、基本语法、利用C语言进行结构化程序设计的思想及数据结构的基本思想。针对高等职业技术院校的教育层次,方便于学生理解和接受。同时在每一章内都配有大量的例题、典型习题分析和练习题,使学生更容易理解、消化和掌握各知识模块的学习内容。 本书除作为高职高专院校学生学习C语言与数据结构课程的教材之外,还可以作为计算机爱好者的自学参考书和计算机培训班的培训教材。
《C语言程序设计与数据结构》目录

第1章 C语言初步知识 1

1.1 C语言的发展历史 1

1.2 C语言的特点 1

1.3 C语言的程序结构 2

1.3.1 C语言程序举例 2

1.3.2 C语言程序的组成结构 4

1.3.3 良好的编程习惯 5

1.4 利用Visual C++运行C程序 5

1.4.1 Visual C++简介 5

1.4.2 在Visual C++中运行C程序 7

1.5 典型习题分析解答 11

习题一 12

第2章 数据类型、运算符与表达式 14

2.1 C语言的数据类型 14

2.2 常量与变量 15

2.2.1 标识符 15

2.2.2 常量 15

2.2.3 变量 16

2.3 整数类型 17

2.3.1 整型常量 17

2.3.2 整型变量 18

2.4 实数类型 19

2.4.1 实型常量 19

2.4.2 实型变量 19

2.5 字符类型 19

2.5.1 字符型常量 19

2.5.2 字符型变量 21

2.6 运算符与表达式 22

2.6.1 算术运算符和算术表达式 22

2.6.2 赋值运算符和赋值表达式 23

2.6.3 自加自减运算符与表达式 24

2.6.4 不同类型数据之间的转换 25

2.7 典型习题分析解答 26

习题二 27

第3章 顺序结构 30

3.1 字符型数据的输入输出 30

3.1.1 putchar()函数 30

3.1.2 getchar()函数 31

3.2 格式输入输出 31

3.2.1 printf()函数 31

3.2.2 scanf()函数 34

3.3 程序的三种基本结构 36

3.4 典型习题分析解答 40

习题三 41

第4章 选择结构 44

4.1 关系运算和逻辑运算 44

4.1.1 关系运算符和关系表达式 44

4.1.2 逻辑运算符和逻辑表达式 45

4.2 if语句 46

4.2.1 if语句的三种形式 46

4.2.2 if语句的嵌套 49

4.2.3 条件运算符和条件表达式 50

4.3 switch语句 51

4.3.1 switch语句及执行过程 51

4.3.2 break语句在switch中的使用 52

4.4 典型习题分析解答 52

习题四 55

第5章 循环结构 57

5.1 while语句 57

5.2 do-while语句 59

5.3 for语句 60

5.3.1 for语句的一般形式 61

5.3.2 for语句的执行过程 61

5.4 循环的嵌套 63

5.5 continue语句 65

5.6 典型习题分析解答 66

习题五 69

第6章 函数 73

6.1 函数分类与文件包含 73

6.1.1 函数分类 74

6.1.2 文件包含 75

6.2 函数的定义 76

6.2.1 函数定义的一般形式 76

6.2.2 形参和实参 77

6.2.3 函数的返回值 78

6.3 函数的声明和调用 79

6.3.1 函数的声明 79

6.3.2 函数的调用 79

6.4 函数的嵌套与递归 80

6.4.1 函数的嵌套调用 80

6.4.2 函数的递归调用 81

6.5 局部变量与全局变量 83

6.5.1 局部变量 83

6.5.2 全局变量 84

6.6 内部函数与外部函数 85

6.6.1 内部函数 85

6.6.2 外部函数 85

6.6.3 多个源程序文件的编译和连接 86

6.7 典型习题分析解答 90

习题六 93

第7章 数组 96

7.1 一维数组 96

7.1.1 一维数组的定义与初始化 96

7.1.2 一维数组元素的引用 98

7.1.3 一维数组元素的赋值 98

7.1.4 顺序查找 98

7.2 二维数组 99

7.2.1 二维数组的定义与初始化 100

7.2.2 二维数组元素的引用 100

7.2.3 二维数组元素的赋值 101

7.3 字符数组 101

7.3.1 字符数组的定义和初始化 101

7.3.2 字符串处理函数 102

7.4 数组在函数中的应用 105

7.5 折半查找 108

7.6 数组元素排序 110

7.6.1 线性插入排序 110

7.6.2 折半插入排序 111

7.7 典型习题分析解答 112

习题七 114

第8章 指针 118

8.1 地址与指针概述 118

8.2 指针变量 119

8.2.1 定义一个指针变量 119

8.2.2 指针变量的赋值与引用 120

8.2.3 指针变量作为函数参数 124

8.3 一维数组与指针 125

8.3.1 指向数组元素的指针 125

8.3.2 通过指针引用数组元素 126

8.3.3 一维数组名作函数参数 130

8.4 二维数组与指针 132

8.4.1 引用单个数组元素 132

8.4.2 指向二维数组的指针变量 133

8.4.3 指向多维数组的指针变量 136

8.5 指向字符串的指针变量 136

8.5.1 用字符数组存放一个字符串 136

8.5.2 用字符指针变量指向一个字符串 137

8.6 数指针变量 139

8.7 指针型函数 140

8.8 指针数组和指向指针的指针 141

8.8.1 指针数组 141

8.8.2 指针数组作函数参数 143

8.8.3 指向指针的指针 143

8.8.4 main函数的参数 145

8.9 典型题分析 146

习题八 148

第9章 结构体与共用体 151

9.1 结构体类型的说明 151

9.2 结构体变量 152

9.2.1 结构体变量定义、初始化及引用 152

9.2.2 用结构体变量作函数参数 155

9.3 结构体数组 155

9.3.1 结构体数组的定义 155

9.3.2 结构体数组的初始化 156

9.3.3 结构体数组的使用 156

9.4 结构体指针 157

9.4.1 指向结构体变量的指针 158

9.4.2 指向结构体变量的指针作为函数参数 159

9.5 共用体 160

9.5.1 共用体类型的说明 160

9.5.2 共用体变量的定义、初始化及引用 160

9.6 用typedef定义类型 162

9.7 典型习题分析解答 163

习题九 166

第10章 文件的读写 171

10.1 文件与文件指针 171

10.1.1 文件分类 171

10.1.2 文件类型指针 171

10.2 文件的打开与关闭 172

10.2.1 文件的打开 172

10.2.2 文件关闭函数 173

10.3 文件位置指针的有关函数 174

10.4 读写文件 175

10.4.1 字符读写函数fgetc和fputc 175

10.4.2 字符串读写函数fgets和fputs 177

10.4.3 数据块读写函数fread和fwrite 178

10.4.4 格式化读写函数fscanf和fprintf 181

10.5 典型习题分析解答 183

习题十 184

第11章 位运算 186

11.1 位运算符概述 186

11.2 基本位运算符及其功能 186

11.2.1 按位与运算符“&” 186

11.2.2 按位或运算符“|” 188

11.2.3 按位异或运算符“∧” 188

11.2.4 求反运算符“~” 189

11.2.5 左移运算符“<<” 190

11.2.6 右移运算符“>>” 191

11.2.7 位运算的复合赋值运算符 191

11.2.8 不同长度的数据进行位运算 192

11.2.9 位运算符的优先级 192

11.3 位域(位段) 192

11.3.1 位域的定义和位域变量的说明 192

11.3.2 位域的使用 194

11.4 典型习题分析解答 194

习题十一 196

第12章 数据结构绪论 198

12.1 什么是数据结构 198

12.2 数据结构的基本概念和术语 199

12.3 算法和算法的描述 201

12.3.1 算法 201

12.3.2 算法的描述 201

12.3.3 算法评价 201

习题十二 202

第13章 线性表 204

13.1 线性表及其基本运算 204

13.1.1 线性表的定义 204

13.1.2 线性表的基本运算 204

13.2 线性表的顺序表示及基本操作 205

13.2.1 线性表的顺序表示 205

13.2.2 顺序表的基本操作 205

13.3 线性表的链式存储 206

13.3.1 单链表 206

13.3.2 循环链表 208

13.3.3 双向链表 209

13.4 典型习题分析解答 211

习题十三 212

第14章 栈、队列与树 216

14.1 栈 216

14.1.1 栈的定义 216

14.1.2 顺序栈的实现 217

14.2 队列 220

14.2.1 队列的定义 220

14.2.2 队列的基本操作 221

14.3 树 224

14.3.1 什么是树 225

14.3.2 二叉树的概念及性质 226

14.3.3 二叉树的存储及遍历 228

14.4 典型习题分析解答 235

习题十四 239

第15章 查找与排序 242

15.1 查找与排序的基本概念 242

15.1.1 查找的基本概念 242

15.1.2 排序的基本概念 243

15.2 查找算法 244

15.2.1 顺序查找 244

15.2.2 折半查找 245

15.2.3 分块查找 246

15.3 排序算法 247

15.3.1 插入排序 247

15.3.2 选择排序 250

15.3.3 交换排序 253

15.4 典型习题分析解答 256

习题十五 258

附录A 运算符的优先级别和结合方向 261

附录B 常用字符与ASCII码对照表 262

附录C 常用Turbo C库函数 264

参考文献 268

返回顶部