C语言教程

C语言教程

(美) 凯利 (Kelly,A.) , (美) 波尔 (Pohl,I) , 著

出版社:机械工业出版社

年代:2006

定价:40.0

书籍简介:

本书全面介绍了ANSIC程序设计语言的概念、语法及其结构的正确使用。

书籍目录:

"第0章从零开始1

0.1为什么要用C1

0.2ANSIC标准2

0.3从C到C++2

0.4从C和C++到Java3

第1章C语言概述5

1.1编程和预备知识5

1.2程序输出5

1.3变量、表达式和赋值8

1.4使用#define和#include10

1.5使用printf()和scanf()12

1.6控制流14

1.7函数19

1.8数组、字符串和指针23

1.8.1数组23

1.8.2字符串25

1.8.3指针27

1.9文件29

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

1.10.1编写和运行C程序33

1.10.2中断程序35

1.10.3输入文件尾标志35

1.10.4输入和输出的重定向35

1.11总结36

1.12练习37

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

2.1字符和词法元素43

2.2语法规则45

2.3注释46

2.4关键字47

2.5标识符48

2.6常量49

2.7字符串常量49

2.8操作符和标点符号50

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

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

2.11赋值操作符53

2.12例子:计算2的乘方54

2.13C系统55

2.13.1预处理器55

2.13.2标准函数库56

2.14总结58

2.15练习59

第3章基本数据类型65

3.1声明、表达式和赋值65

3.2基本数据类型66

3.3字符和char数据类型67

3.4int数据类型70

3.5整数类型short、long和unsigned71

3.6浮点类型723.7typedef的用法74

3.8sizeof操作符74

3.9使用getchar()和putchar()75

3.10数学函数77

3.10.1使用abs()和fabs()78

3.10.2UNIX和数学函数库79

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

3.11.1整型提升79

3.11.2寻常算术转换79

3.11.3强制类型转换81

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

3.13总结83

3.14练习84

第4章控制流89

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

4.2关系操作符和表达式90

4.3相等操作符和表达式92

4.4逻辑操作符和表达式93

4.5复合语句95

4.6表达式和空语句95

4.7if和if-else语句96

4.8while语句98

4.9for语句100

4.10例子:布尔变量102

4.11逗号操作符102

4.12do语句103

4.13例子:斐波那契数105

4.14goto语句107

4.15break和continue语句108

4.16switch语句108

4.17条件操作符109

4.18总结110

4.19练习111

第5章函数119

5.1函数定义119

5.2return语句121

5.3函数原型121

5.4例子:创建乘方表122

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

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

5.7函数调用和传值调用125

5.8开发大型程序126

5.9使用断言128

5.10作用域规则129

5.10.1平行和嵌套代码块130

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

5.11存储类型130

5.11.1auto存储类型130

5.11.2extern存储类型131

5.11.3register存储类型1325.11.4static存储类型133

5.12静态外部变量133

5.13默认初始化134

5.14递归135

5.15例子:汉诺塔138

5.16总结141

5.17练习142

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

6.1一维数组149

6.1.1初始化150

6.1.2下标150

6.2指针151

6.3传引用调用153

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

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

6.6数组作为函数的实参156

6.7例子:冒泡排序156

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

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

6.10字符串164

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

6.12多维数组168

6.12.1二维数组168

6.12.2存储映射函数169

6.12.3形式参数声明169

6.12.4三维数组170

6.12.5初始化170

6.12.6使用typedef171

6.13指针数组172

6.14main()函数的参数176

6.15不规则数组176

6.16函数作为参数178

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

6.18函数指针数组183

6.19类型限定符const和volatile186

6.20总结187

6.21练习188

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

7.1位操作符和表达式201

7.1.1按位求反202

7.1.2补码202

7.1.3位逻辑操作符203

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

7.2掩码204

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

7.4包装和解包206

7.5枚举类型209

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

7.7总结215

7.8练习216第8章预处理器221

8.1#include的使用221

8.2使用#define221

8.3带参数的宏222

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

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

8.6例子:带参数的宏228

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

8.8条件编译232

8.9预定义的宏234

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

8.11assert()宏235

8.12使用#error和#pragma235

8.13行号236

8.14对应的函数236

8.15例子:快速排序236

8.16总结238

8.17练习239

第9章结构和联合247

9.1结构247

9.2访问结构成员249

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

9.4在函数中使用结构252

9.5结构的初始化253

9.6例子:玩扑克牌254

9.7联合257

9.8位字段259

9.9例子:访问位和字节260

9.10ADT堆栈261

9.11总结264

9.12练习265

第10章结构和列表处理271

10.1自引用的结构271

10.2线性链表272

10.3链表操作273

10.4一些链表处理函数275

10.4.1插入277

10.4.2删除277

10.5堆栈278

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

10.7队列285

10.8二叉树287

10.8.1二叉树的遍历288

10.8.2创建树290

10.9普通的树290

10.9.1遍历292

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

10.10总结293

10.11练习294

第11章输入/输出和操作系统29911.1输出函数printf()299

11.2输入函数scanf()302

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

11.4fopen()和fclose()函数306

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

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

11.7随机访问文件311

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

11.9文件访问权限313

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

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

11.12环境变量316

11.13C编译器316

11.14使用性能评估程序318

11.15函数库319

11.16对C代码进行计时320

11.17使用make323

11.18使用touch327

11.19其他有用的工具327

11.20总结328

11.21练习329

第12章高级应用337

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

12.2进程的叠加:exec...()函数族系338

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

12.4信号342

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

12.6矩阵的动态分配346

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

12.6.2用指针数组创建矩阵347

12.6.3调整下标范围348

12.6.4一次分配所有内存350

12.7返回状态351

12.8总结354

12.9练习355

第13章从C到C++359

13.1输出359

13.2输入360

13.3函数362

13.4类和抽象数据类型363

13.5重载364

13.6构造函数和析构函数366

13.7面向对象编程和继承367

13.8多态368

13.9模板370

13.10C++的异常371

13.11面向对象编程的优点371

13.12总结372

13.13练习373

第14章从C到Java37714.1输出377

14.2变量和类型378

14.3类和抽象数据类型379

14.4重载380

14.5类的创建和销毁380

14.6面向对象编程和继承381

14.7多态和重写方法381

14.8Applet382

14.9Java的异常383

14.10Java和OOP的优势384

14.11总结384

14.12练习385

附录A标准函数库387

附录BC的语法413

附录CANSIC与传统C的比较419

附录DASCII字符码424

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

"

内容摘要:

  本书是ANSIC程序设计语言的最畅销的教材和参考书之一,完整描述了ANSIC语言及其语法特性,并对C语言的高级特性和应用作了深入阐述。作者通过循序渐进地解析程序代码,阐明了C语言结构的正确使用和语法,并揭示出其应用的基础逻辑。全书阐述清晰、层次分明,提供了大量示例和练习帮助读者深入理解书中讲解的每个概念,是一本全面论述C语言的权威著作。初学者和专业程序员都可以从本书受益。  本书是一本优秀的C程序设计语言教材,完整描述了ANSIC语言及其语法特性,并对C语言的高级特性和应用作了深入阐述,介绍了从C到C++和Java过渡的相关知识。本书的一个鲜明特色就是结合大量示例描述C语言的重要特征,并对很多工作代码给出了逐步的分析,以这种独特的教学方法向读者解释新接触的编程元素及一些惯用法。本书系统、完整,可作为C语言的参考手册,也非常适合作为学习c语言的入门和高级课程教材。

书籍规格:

书籍详细信息
书名C语言教程站内查询相似图书
丛书名计算机科学丛书
9787111202134
如需购买下载《C语言教程》pdf扫描版电子书或查询更多相关信息,请直接复制isbn,搜索即可全网搜索该ISBN
出版地北京出版单位机械工业出版社
版次1版印次1
定价(元)40.0语种简体中文
尺寸26装帧平装
页数 380 印数 5000

书籍信息归属:

C语言教程是机械工业出版社于2007.01出版的中图分类号为 TP312 的主题关于 C语言-程序设计-教材 的书籍。