《实用C语言教程》PDF下载

  • 购买积分:12 如何计算积分?
  • 作  者:魏二有主编;田生文,赵玫副主编
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2015
  • ISBN:9787302409144
  • 页数:325 页
图书介绍:本书将所有较难理解的知识点用人们耳熟能详的的例子做比拟,既让读者了解每一章学习的重要性和必要性,又能轻松理解所学内容并更易于接受。实用性是本书的最大特色,由于作者有十几年的企业研发经历,承担并完成多个大型项目,有着非常丰富的编程经验,所以读者会受到潜移默化的项目编程训练,并且在设计程序过程中严格把握速度和存储空间二大指标,从而使读者更容易进入职场。

第1章 从函数进入C语言大门 1

1.1 C语言的用途 1

1.1.1 开发操作系统 1

1.1.2 开发硬件驱动程序 2

1.1.3 开发数据库 2

1.1.4 开发应用软件 2

1.1.5 开发嵌入式系统 3

1.1.6 开发商业和工业机器人 4

1.1.7 开发游戏 4

1.1.8 为学习其他计算机语言奠定坚实的基础 5

1.2 初识C语言的函数 5

1.3 在Visual C++ 6.0环境编写C程序 6

1.4 在C-Free环境编写C程序 10

1.5 了解C语言的库函数 11

1.5.1 printf函数 11

1.5.2 scanf函数 14

1.6 初学编写自定义函数 16

1.7 阅读内容 17

1.7.1 C语言的产生与发展 17

1.7.2 C语言的特点 18

知识点总结 18

课后练习 19

后续课程导引 20

第2章 数据、运算符、表达式、语句 21

2.1 数据 21

2.1.1 原码、反码、补码 23

2.1.2 浮点数 25

2.2 变量 25

2.2.1 变量类型和变量的定义方法 25

2.2.2 整型变量 27

2.2.3 浮点型变量 28

2.2.4 字符型变量 28

2.3 常量 29

2.3.1 整型常量 29

2.3.2 浮点型常量 30

2.3.3 字符型常量 30

2.3.4 字符串常量 32

2.3.5 符号常量 33

2.4 运算符 33

2.4.1 赋值运算符 34

2.4.2 算术运算符 34

2.4.3 逻辑运算符 35

2.4.4 关系运算符 36

2.4.5 自增自减运算符 37

2.4.6 复合赋值运算符 37

2.4.7 条件运算符 38

2.4.8 逗号运算符 39

2.4.9 sizeof运算符 39

2.4.10 优先级和结合性 40

2.5 表达式 40

2.6 数据类型转换 41

2.6.1 隐式转换 41

2.6.2 显式转换(强制转换) 42

2.7 C语言的语句 42

2.7.1 表达式语句 43

2.7.2 函数调用语句 43

2.7.3 流程控制语句 44

2.7.4 复合语句 44

2.7.5 空语句 44

2.7.6 C语言语句使用说明 45

知识点总结 45

课后练习 46

后续课程导引 47

第3章 算法——数据加工工艺流程 49

3.1 什么是算法 49

3.2 算法的特性 50

3.3 算法的表示 50

3.3.1 流程图表示法 51

3.3.2 伪代码表示法 53

知识点总结 54

课后练习 54

后续课程导引 54

第4章 学会编写分支程序 55

4.1 关系运算符和关系表达式 56

4.1.1 关系运算符 56

4.1.2 关系表达式 56

4.2 逻辑运算符和逻辑表达式 56

4.2.1 逻辑运算符及其优先顺序 57

4.2.2 逻辑运算规则 57

4.2.3 逻辑表达式 58

4.3 if语句 59

4.3.1 if语句的3种形式 59

4.3.2 if语句的嵌套 62

4.3.3 条件表达式 65

4.4 switch…case语句 68

4.5 分支程序应用程序设计举例 72

知识点总结 76

课后练习 76

后续课程引导 79

第5章 学会编写循环程序 80

5.1 循环语句和循环控制 80

5.1.1 用if语句和goto语句构成的循环 81

5.1.2 用while语句构成的循环 81

5.1.3 用do…while语句构成的循环 83

5.1.4 用for语句构成的循环 84

5.2 学会循环嵌套编程 86

5.2.1 while循环嵌套while循环 86

5.2.2 do…while循环嵌套do…while循环 87

5.2.3 for循环嵌套for循环 88

5.2.4 while循环嵌套do…while循环 89

5.2.5 for循环嵌套while循环 90

5.2.6 for循环嵌套do…while循环 90

5.3 循环比较 90

5.4 循环控制 91

5.4.1 break语句 91

5.4.2 continue语句 92

5.4.3 break语句与continue语句的对比 93

5.5 循环程序举例 93

知识点总结 96

课后练习 97

后续课程导引 102

第6章 单一型数据块处理的程序设计 103

6.1 对一维数组的定义和使用 103

6.1.1 一维数组的定义 103

6.1.2 一维数组的初始化 104

6.1.3 对一维数组元素的访问和处理 104

6.2 多维数组 110

6.2.1 二维数组的定义 110

6.2.2 二维数组的初始化 111

6.2.3 对二维数组元素的访问和处理 113

6.3 字符数组 115

6.3.1 字符数组的定义 115

6.3.2 字符数组的初始化 115

6.3.3 常用的字符串函数 118

6.3.4 字符数组应用举例 124

知识点总结 126

课后练习 126

后续课程导引 130

第7章 深入学习C语言的函数 131

7.1 函数的分类及定义 131

7.1.1 为什么编写自定义函数 131

7.1.2 函数的分类 132

7.1.3 函数的定义 133

7.2 函数的调用 136

7.2.1 对被调函数的声明 137

7.2.2 函数的嵌套调用 138

7.2.3 函数的递归调用 140

7.3 变量的属性 147

7.3.1 作用域和生存期 147

7.3.2 变量存储类型 153

7.4 运行一个多文件程序 158

7.5 数组作为函数参数来调用函数 167

7.5.1 一维数组元素作为函数参数 167

7.5.2 一维数组名作为函数参数 168

7.5.3 二维数组名作为函数参数 169

7.6 阅读内容:预处理过程 170

7.6.1 文件包含 170

7.6.2 宏定义与宏替换 171

7.6.3 条件编译指令 173

知识点总结 174

课后练习 175

后续课程导引 178

第8章 用指针编写大块数据处理程序 179

8.1 基本概念及定义 179

8.1.1 定义指针变量 179

8.1.2 给指针变量赋值 180

8.1.3 引用指针变量 181

8.1.4 零指针与空类型指针 183

8.1.5 void*类型指针 183

8.1.6 地址运算 184

8.1.7 指针变量作为函数参数 185

8.2 指向一维数组的指针 189

8.2.1 定义指向一维数组的指针变量 189

8.2.2 被调函数接收主调函数传递的地址 192

8.3 指向多维数组的指针 195

8.3.1 用普通指针变量访问二维数组元素 198

8.3.2 指向二维数组行的指针 199

8.4 字符指针 205

8.4.1 字符串的引用形式 205

8.4.2 字符指针变量和字符数组比较 207

8.5 指向函数的指针 207

8.6 指针数组 210

8.6.1 定义指针数组 210

8.6.2 初始化指针数组 211

8.6.3 指针数组的应用 211

8.7 指针的指针 213

8.7.1 定义指针的指针 213

8.7.2 指针的指针的应用 213

8.8 返回指针的函数 214

8.8.1 函数定义格式 214

8.8.2 应用示例 214

知识点总结 217

课后练习 217

后续课程导引 221

第9章 对混合型数据块处理的程序设计 222

9.1 为什么定义混合型数据块 222

9.2 声明和定义结构体变量的方法 223

9.3 结构体成员初始化 227

9.4 结构体成员的引用 228

9.5 通过键盘给结构体成员赋值 229

9.6 创建更大的数据块:定义结构体数组 232

9.6.1 结构体数组的定义 232

9.6.2 结构体数组初始化 233

9.6.3 结构体数组的引用 233

9.7 指向结构体的指针 237

9.7.1 指向结构体变量的指针 237

9.7.2 指向结构体数组的指针 238

9.7.3 指向结构体的指针作为函数参数 239

9.8 利用链表存放数据块 240

9.8.1 使用链表的原因 240

9.8.2 堆简介 241

9.8.3 动态内存分配及管理 241

9.8.4 用C语言编程实现单链表 242

9.8.5 单链表的插入和删除 245

9.8.6 循环链表和双向链表 249

9.9 共用体类型数据和枚举类型数据 250

9.9.1 共用体类型数据 250

9.9.2 枚举类型数据 255

9.10 给已有数据类型重新起名 259

知识点总结 259

课后练习 260

后续课程导引 265

第10章 对文件操作的程序设计 266

10.1 文件基本知识 266

10.1.1 文本流和二进制流 267

10.1.2 流和文件 267

10.1.3 文件FILE的数据结构 268

10.2 文件的打开和关闭 268

10.2.1 打开文件函数fopen() 268

10.2.2 关闭文件函数fclose() 270

10.3 几个反映文件状态的函数 270

10.3.1 ftell函数 271

10.3.2 feof函数 271

10.3.3 rewind函数 271

10.3.4 fseek函数 272

10.3.5 ferror函数 272

10.3.6 clearerr函数 273

10.3.7 remove函数 273

10.4 编写读写文件的程序 273

10.4.1 单字符读写函数 273

10.4.2 读写文件中字符串的函数 275

10.4.3 格式化读/写文件的函数 278

10.4.4 写入和读出大块数据的函数 281

10.5 C语言文件编程应用 281

10.5.1 用编程实现文件的复制 281

10.5.2 用编程实现学生信息处理 282

知识点总结 288

课后练习 289

后续课程导引 293

第11章 位操作程序设计 294

11.1 位的概念 294

11.2 位逻辑运算符 295

知识点总结 298

课后练习 298

后续课程导引 298

第12章 C语言实现高级功能 299

12.1 任务1:设计一个简单的窗口 299

12.1.1 实现效果 299

12.1.2 操作步骤 299

12.2 任务2:设计一个复杂点的窗口 302

12.2.1 概述 302

12.2.2 操作步骤 302

12.3 任务3:设计一个对话框程序 304

12.3.1 概述 304

12.3.2 操作步骤 304

12.3.3 程序解释 308

12.4 任务4:设计一个简易计算器 308

12.4.1 明确任务 308

12.4.2 操作步骤 308

12.4.3 程序解释 314

知识点总结 316

课后练习 316

附录A 常用ASCⅡ码字符对照表 317

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

附录C C语言常用库函数 321

参考文献 325