图书介绍

C语言教程 原书第4版2025|PDF|Epub|mobi|kindle电子书版本百度云盘下载

C语言教程 原书第4版
  • (美)凯利等著 著
  • 出版社: 北京:机械工业出版社
  • ISBN:9787111346852
  • 出版时间:2011
  • 标注页数:454页
  • 文件大小:33MB
  • 文件页数:465页
  • 主题词:C语言-程序设计-教材

PDF下载


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

下载说明

C语言教程 原书第4版PDF格式电子书版下载

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

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

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

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

图书目录

第0章 从零开始1

0.1为什么要用C1

0.2 ANSI C标准2

0.3从C到C++3

0.4从C和C++到Java3

第1章 C语言概述4

1.1编程和预备知识4

1.2程序输出4

1.3变量、表达式和赋值7

1.4使用#define和#include9

1.5使用printf()和scanf()12

1.6控制流14

1.7函数19

1.8数组、字符串和指针24

1.8.1数组24

1.8.2字符串25

1.8.3指针28

1.9文件31

1.10与操作系统有关的内容35

1.10.1编写和运行C程序35

1.10.2中断程序36

1.10.3输入文件尾标志37

1.10.4输入和输出的重定向37

1.11总结38

1.12练习39

第2章 词法元素、操作符和C系统45

2.1字符和词法元素46

2.2语法规则48

2.3注释49

2.4关键字50

2.5标识符50

2.6常量51

2.7字符串常量52

2.8操作符和标点符号53

2.9操作符的优先级和结合性53

2.10增值操作符和减值操作符55

2.11赋值操作符56

2.12例子:计算2的乘方57

2.13 C系统58

2.13.1预处理器59

2.13.2标准函数库59

2.14总结62

2.15 练习63

第3章 基本数据类型69

3.1声明、表达式和赋值69

3.2基本数据类型71

3.3字符和char数据类型72

3.4 int数据类型75

3.5整数类型short、long和unsigned76

3.6浮点类型77

3.7 typedef的用法79

3.8 sizeof操作符79

3.9使用getchar()和putchar()80

3.10数学函数82

3.10.1使用abs()和fabs()84

3.10.2 UNIX和数学函数库84

3.11隐式类型转换和强制类型转换84

3.11.1整型提升85

3.11.2寻常算术转换85

3.11.3强制类型转换86

3.12十六进制和八进制常量87

3.13总结89

3.14练习89

第4章 控制流96

4.1关系操作符、相等操作符和逻辑操作符96

4.2关系操作符和表达式97

4.3相等操作符和表达式99

4.4逻辑操作符和表达式100

4.5复合语句103

4.6表达式和空语句103

4.7 if和if-else语句104

4.8 while语句106

4.9 for语句108

4.10例子:布尔变量110

4.11逗号操作符111

4.12 do语句112

4.13例子:斐波那契数113

4.14 goto语句115

4.15 break和continue语句116

4.16 switch语句117

4.17条件操作符118

4.18总结119

4.19练习120

第5章 函数128

5.1函数定义128

5.2 return语句130

5.3函数原型131

5.4例子:创建乘方表132

5.5从编译器的角度观察函数原型133

5.6函数定义顺序的另一种风格134

5.7函数调用和传值调用134

5.8开发大型程序136

5.9使用断言138

5.10作用域规则139

5.10.1平行和嵌套代码块140

5.10.2以调试为目的使用代码块140

5.11存储类型141

5.11.1 auto存储类型141

5.11.2 extern存储类型141

5.11.3 register存储类型143

5.11.4 static存储类型143

5.12静态外部变量144

5.13默认初始化145

5.14递归145

5.15例子:汉诺塔149

5.16总结152

5.17练习153

第6章 数组、指针和字符串159

6.1一维数组159

6.1.1初始化160

6.1.2下标160

6.2指针161

6.3传引用调用164

6.4数组和指针之间的关系165

6.5指针运算和元素的大小166

6.6数组作为函数的实参166

6.7例子:冒泡排序167

6.8用calloc()和malloc()进行动态内存分配168

6.9例子:归并和归并排序171

6.10字符串175

6.11标准函数库中的字符串处理函数177

6.12多维数组180

6.12.1二维数组180

6.12.2存储映射函数180

6.12.3形式参数声明181

6.12.4三维数组182

6.12.5初始化182

6.12.6使用typedef183

6.13指针数组184

6.14 main()函数的参数188

6.15不规则数组189

6.16函数作为参数190

6.17例子:使用二分法寻找函数的根192

6.18函数指针数组196

6.19类型限定符const和volatile199

6.20总结200

6.21练习202

第7章 位操作符和枚举类型214

7.1位操作符和表达式214

7.1.1按位求反215

7.1.2补码215

7.1.3位逻辑操作符216

7.1.4左移位和右移位操作符217

7.2掩码218

7.3软件工具:打印int值的二进制形式219

7.4包装和解包220

7.5枚举类型223

7.6例子:“石头、剪刀、布”游戏225

7.7总结229

7.8练习230

第8章 预处理器235

8.1 #include的使用235

8.2使用#define236

8.3带参数的宏237

8.4 stddef.h中的类型定义和宏239

8.5例子:用qsort()进行排序239

8.6例子:带参数的宏243

8.7 stdio.h和ctype.h中的宏246

8.8条件编译247

8.9预定义的宏249

8.10“#”和“##”操作符249

8.11 assert()宏250

8.12使用#error和#pragma250

8.13行号251

8.14对应的函数251

8.15例子:快速排序251

8.16总结254

8.17练习254

第9章 结构和联合262

9.1结构262

9.2访问结构成员264

9.3操作符的优先级和结合性的总结267

9.4在函数中使用结构268

9.5结构的初始化269

9.6例子:玩扑克牌269

9.7联合273

9.8位字段275

9.9例子:访问位和字节276

9.10 ADT堆栈277

9.11总结280

9.12练习281

第10章 结构和列表处理288

10.1自引用的结构288

10.2线性链表289

10.3链表操作290

10.4一些链表处理函数293

10.4.1插入294

10.4.2删除295

10.5堆栈296

10.6例子:波兰记法和堆栈求值298

10.7队列303

10.8二叉树306

10.8.1二叉树的遍历307

10.8.2创建树308

10.9普通的树309

10.9.1遍历311

10.9.2 calloc()的用法以及树的创建311

10.10总结312

10.11练习313

第11章 输入/输出和操作系统318

11.1输出函数printf()318

11.2输入函数scanf()321

11.3 fprintf()、fscanf()、sprintf()和sscanf()函数324

11.4 fopen()和fclose()函数325

11.5例子:对文件进行空间加倍327

11.6使用临时文件和优雅函数329

11.7随机访问文件331

11.8文件描述符输入/输出332

11.9文件访问权限333

11.10在C程序内部执行命令334

11.11在C程序内部使用管道335

11.12环境变量336

11.13 C编译器337

11.14使用性能评估程序338

11.15函数库339

11.16对C代码进行计时340

11.17使用make343

11.18使用touch347

11.19其他有用的工具348

11.20总结349

11.21练习350

第12章 高级应用358

12.1用fork()创建并发进程358

12.2进程的叠加:exec…()函数族系360

12.3使用pipe()实现进程间的通信362

12.4信号363

12.5例子:哲学家用餐问题365

12.6矩阵的动态分配368

12.6.1为什么二维数组无法满足要求368

12.6.2用指针数组创建矩阵369

12.6.3调整下标范围371

12.6.4一次分配所有内存373

12.7返回状态374

12.8总结377

12.9练习378

第13章 从C到C++383

13.1输出383

13.2输入384

13.3函数386

13.4类和抽象数据类型387

13.5重载389

13.6构造函数和析构函数390

13.7面向对象编程和继承392

13.8多态393

13.9模板395

13.10 C++的异常396

13.11面向对象编程的优点396

13.12总结397

13.13练习398

第14章 从C到Java402

14.1输出402

14.2变量和类型403

14.3类和抽象数据类型404

14.4重载406

14.5类的创建和销毁406

14.6面向对象编程和继承406

14.7多态和重写方法407

14.8 Applet408

14.9 Java的异常409

14.10 Java和OOP的优势410

14.11总结410

14.12练习411

附录A 标准函数库413

附录B C的语法441

附录C ANSI C与传统C的比较446

附录D ASCII字符码452

附录E 操作符的优先级和结合性454

热门推荐