图书介绍
C语言详解 第5版2025|PDF|Epub|mobi|kindle电子书版本百度云盘下载

- (美)汉利(Hanly,J.R.),(美)科夫曼(Koffman,E.B.)著;万波等译(西安电子科技大学) 著
- 出版社: 北京:人民邮电出版社
- ISBN:7115164274
- 出版时间:2007
- 标注页数:539页
- 文件大小:97MB
- 文件页数:555页
- 主题词:C语言-程序设计
PDF下载
下载说明
C语言详解 第5版PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
第1章 计算机与程序设计概述1
1.1 电子计算机的过去和现在1
1.2 计算机硬件2
1.2.1 存储器3
1.2.2 中央处理器6
1.2.3 输入/输出设备6
1.2.4 计算机网络7
1.3 计算机软件9
1.3.1 操作系统9
1.3.2 应用软件10
1.3.3 计算机语言10
1.3.4 执行程序13
1.4 软件开发方法14
1.4.1 软件开发方法14
1.4.2 注意:失败是编程过程的一部分16
1.5 应用软件开发方法16
实例研究:英里到公里的转换16
复习18
快速测试19
快速测试答案19
复习题19
第2章 C概述20
2.1 C语言要素20
2.1.1 预处理指令20
2.1.2 预处理指令的语法展示21
2.1.3 main函数22
2.1.4 保留字22
2.1.5 标准标识符23
2.1.6 用户定义的标识符23
2.1.7 大写和小写字母24
2.1.8 程序风格:选择标识符名称24
2.2 变量声明和数据类型24
2.2.1 变量声明24
2.2.2 数据类型25
2.3 可执行语句27
2.3.1 内存中的程序27
2.3.2 赋值语句27
2.3.3 输入/输出操作和函数28
2.3.4 printf函数29
2.3.5 scanf函数31
2.3.6 return语句32
2.4 C程序的一般形式33
2.4.1 程序风格:程序中的空格33
2.4.2 程序的注释34
2.4.3 程序风格:使用注释34
2.5 算术表达式35
2.5.1 运算符/和%36
2.5.2 表达式的数据类型37
2.5.3 混合类型赋值语句37
2.5.4 强制类型转换38
2.5.5 具有多个运算符的表达式38
2.5.6 用C语言编写数学公式40
实例研究:对收集的硬币求值41
2.6 在程序输出中格式化数值44
2.6.1 格式化int型值44
2.6.2 格式化double型值45
2.6.3 程序风格:消除前导空白46
2.7 交互模式、批处理模式和数据文件46
2.7.1 输入重定向46
2.7.2 程序风格:回显与提示符47
2.7.3 输出重定向47
2.7.4 程序控制的输入和输出文件48
2.8 常见编程错误49
2.8.1 语法错误49
2.8.2 运行时错误51
2.8.3 未检测到的错误51
2.8.4 逻辑错误53
复习53
快速测试54
快速测试答案55
复习题55
程序设计项目56
第3章 函数的自顶向下设计58
3.1 利用已有信息编程58
实例研究:求圆的面积和周长59
实例研究:计算一批平垫圈的重量61
3.2 库函数64
3.2.1 预定义函数和代码复用64
3.2.2 使用灰色区分新结构65
3.2.3 C库函数65
3.2.4 本节目标67
3.3 自顶向下设计和结构图68
实例研究:画简单的图68
3.4 无参函数69
3.4.1 函数原型70
3.4.2 函数定义70
3.4.3 程序中函数的位置72
3.4.4 程序风格:在含有函数的程序中使用注释73
3.4.5 子函数和主函数的执行顺序73
3.4.6 使用子函数的优点74
3.4.7 显示用户指令74
3.5 带输入参数的函数75
3.5.1 带输入参数的void函数76
3.5.2 带输入参数和单一结果的函数77
3.5.3 程序风格:函数接口注释79
3.5.4 带多个参数的函数79
3.5.5 参数表一致性80
3.5.6 函数数据域81
3.5.7 使用驱动测试函数81
3.6 常见编程错误82
复习82
快速测试83
快速测试答案84
复习题84
程序设计项目84
第4章 选择结构:if语句和switch语句88
4.1 控制结构88
4.2 条件88
4.2.1 关系运算符和判等运算符89
4.2.2 逻辑运算符89
4.2.3 运算符优先级90
4.2.4 短路求值法92
4.2.5 用C语言表示条件92
4.2.6 比较字符93
4.2.7 逻辑赋值93
4.2.8 条件取反94
4.2.9 德摩根定理95
4.3 if语句96
4.3.1 有两个选项的if语句96
4.3.2 只有一个选项的if语句96
4.3.3 比较一个选项的if语句和两个选项的if语句97
4.3.4 程序风格:if语句格式98
4.4 具有复合语句的if语句98
4.4.1 程序风格:编写具有复合语句的if语句99
4.4.2 跟踪if语句99
4.5 算法中的决策步骤101
实例研究:水费问题101
4.5.1 程序风格:在函数中使用一致的名称106
4.5.2 程序风格:内聚函数106
4.5.3 程序风格:使用常量宏来增强可读性和易维护性107
4.6 解决更多问题107
4.6.1 结构图中的数据流信息107
4.6.2 使用子函数修改程序108
实例研究:具有节约需求的水费问题108
4.7 嵌套if语句和多选项决策109
4.7.1 比较嵌套if和if序列110
4.7.2 嵌套if的多选项决策形式110
4.7.3 多选项决策中条件的顺序111
4.7.4 程序风格:确认变量的值113
4.7.5 具有多个变量的嵌套if语句113
4.8 switch语句116
4.9 常见编程错误119
复习120
快速测试121
快速测试答案123
复习题123
程序设计项目124
第5章 重复和循环语句128
5.1 程序中的重复128
5.2 计数循环和while语句129
5.3 在循环中计算和或者乘积131
5.3.1 程序风格:编写通用循环133
5.3.2 计算一列数的乘积133
5.3.3 复合赋值运算符134
5.4 for语句135
5.4.1 程序风格:格式化for语句136
5.4.2 递增和递减运算符136
5.4.3 1之外的递增和递减138
5.4.4 显示值构成的表格139
5.5 条件循环140
程序风格:在子函数中执行循环处理144
5.6 循环设计144
5.6.1 标记控制循环145
5.6.2 使用for语句实现标记循环146
5.6.3 文件结束控制循环147
5.6.4 错误数据上的无限循环148
5.7 嵌套循环149
5.8 do-while语句和标志控制循环152
5.9 问题求解示例154
实例研究:太阳能加热房的采集面积154
5.10 如何调试并测试程序159
5.10.1 使用调试器程序159
5.10.2 不使用调试器进行调试159
5.10.3 循环次数差1的错误160
5.10.4 测试160
5.11 常见编程错误161
复习162
快速测试164
快速测试答案165
复习题165
程序设计项目166
第6章 模块化编程171
6.1 带简单输出参数的函数171
6.2 带输入输出参数函数的多次调用176
程序风格:首选的函数类型179
6.3 名字的作用域180
6.4 输出形参作为实参变量181
6.5 由多个函数构成的程序184
实例研究:普通分数的算术运算184
6.6 程序系统的调试与测试190
6.7 常见编程错误192
复习192
快速测试193
快速测试答案194
复习题194
程序设计项目195
第7章 简单数据类型201
7.1 数值类型的表示与转换201
7.1.1 数值类型的差异201
7.1.2 数值的不精确性203
7.1.3 数据类型的自动转换203
7.1.4 数据类型的显式转换204
7.2 字符类型的表示与转换205
7.3 枚举类型206
7.4 迭代近似211
实例研究:求根的二分方法212
7.5 常见编程错误217
复习217
快速测试218
快速测试答案219
复习题219
程序设计项目220
第8章 数组225
8.1 声明和引用数组225
8.2 数组下标228
8.3 使用循环顺序存取229
8.3.1 使用数组进行统计计算230
8.3.2 程序风格:使用循环控制变量作为数组下标232
8.4 将数组元素作为函数参数使用232
8.5 数组参数234
8.5.1 形参数组234
8.5.2 和形参数组对应的实参235
8.5.3 数组作为输入参数236
8.5.4 返回数组结果237
8.5.5 部分填充数组239
8.5.6 栈240
8.6 数组搜索和排序243
8.6.1 数组搜索243
8.6.2 数组排序244
8.7 多维数组246
8.7.1 多维数组的初始化248
8.7.2 多维数组248
8.8 数组处理示例249
实例研究:销售数据分析249
8.9 常见编程错误255
复习256
快速测试257
快速测试答案257
复习题258
程序设计项目258
第9章 字符串264
9.1 字符串基础264
9.1.1 声明并初始化字符串变量264
9.1.2 字符串数组265
9.1.3 使用printf和scanf进行输入/输出265
9.2 字符串库函数:赋值和子串268
9.2.1 字符串赋值268
9.2.2 子串270
9.3 较长的字符串:拼接和整行输入274
9.3.1 拼接274
9.3.2 字符和字符串的区别275
9.3.3 输入一个完整的行275
9.4 字符串比较277
9.5 指针数组279
9.6 字符操作283
9.6.1 字符输入/输出283
9.6.2 字符分析和转换284
9.7 字符串到数值和数值到字符串的转换286
9.8 字符串处理示例290
实例研究:文本编辑器291
9.9 常见编程错误297
复习298
快速测试299
快速测试答案300
复习题301
程序设计项目302
第10章 递归305
10.1 递归的本质305
10.2 跟踪递归函数308
10.2.1 带返回值的递归函数的跟踪308
10.2.2 void类型递归函数的跟踪309
10.2.3 参数与局部变量栈311
10.2.4 C中参数栈的实现312
10.2.5 何时、如何跟踪递归函数313
10.3 递归数学函数314
10.4 带数组和字符串参数的递归函数318
实例研究:找出字符串中的大写字母318
实例研究:递归选择排序320
10.5 用递归解决问题322
实例研究:集合运算322
10.6 递归的经典实例研究:汉诺塔327
10.7 常见编程错误331
复习332
快速测试332
快速测试答案333
复习题333
程序设计项目334
第11章 结构体与共用体类型337
11.1 用户自定义结构体类型337
11.1.1 结构体类型定义337
11.1.2 操作结构化数据对象的单个成员339
11.1.3 运算符优先级回顾339
11.1.4 操作结构体整体340
11.1.5 程序风格:类型命名约定340
11.2 结构体类型数据作为输入/输出参数341
11.3 返回值为结构体类型的函数345
11.4 用结构体类型解决问题347
实例研究:用于复数的用户自定义类型347
11.5 并行数组和结构体的数组352
11.5.1 并行数组352
11.5.2 结构体数组的声明352
实例研究:通用计量转换353
11.6 共用体类型(可选)359
11.7 常见编程错误363
复习364
快速测试365
快速测试答案365
复习题366
程序设计项目367
第12章 文本文件和二进制文件的处理372
12.1 输入/输出文件:回顾与进一步研究372
12.1.1 键盘和屏幕作为文本流372
12.1.2 换行与EOF373
12.1.3 转义序列373
12.1.4 printf的格式输出373
12.1.5 文件指针变量374
12.1.6 获取文件指针参数的函数375
12.1.7 关闭文件376
12.2 二进制文件378
12.3 数据库查询382
实例研究:数据库查询382
12.4 常见编程错误389
复习390
快速测试391
快速测试答案391
复习题392
程序设计项目392
第13章 大型程序设计395
13.1 使用抽象处理复杂问题395
13.1.1 过程抽象395
13.1.2 数据抽象396
13.1.3 信息隐藏396
13.1.4 可重用代码396
13.2 个人库:头文件397
13.2.1 头文件398
13.2.2 头文件设计的忠告399
13.3 个人库:实现文件400
13.4 存储类402
13.4.1 全局变量403
13.4.2 static和register存储类404
13.5 库中包含函数的修改405
13.6 条件编译407
13.7 函数main的参数410
13.8 定义带参数的宏411
13.8.1 在宏体中使用括号413
13.8.2 在两行以上扩展宏414
13.9 常见编程错误415
复习415
快速测试417
快速测试答案417
复习题418
程序设计项目418
第14章 动态数据结构421
14.1 指针421
14.1.1 作为函数参数的指针422
14.1.2 表示数组和字符串的指针422
14.1.3 指向结构体的指针423
14.1.4 指针使用的小结423
14.2 动态内存分配424
14.2.1 访问动态分配的结构体成员425
14.2.2 使用calloc动态分配数组426
14.2.3 返回堆单元426
14.3 链表428
14.3.1 带指针成员的结构体428
14.3.2 连接结点429
14.3.3 链表的优点431
14.4 链表运算符432
14.4.1 遍历链表432
14.4.2 获得输入表434
14.4.3 在表中查询目标435
14.4.4 避免跟踪NULL指针435
14.5 用链表表示栈436
14.6 用链表表示队列438
14.7 有序表443
实例研究:维护一个整数有序表443
14.8 二叉树451
14.8.1 二叉查找树452
14.8.2 搜索二叉查找树452
14.8.3 建立二叉查找树454
14.8.4 显示二叉查找树456
14.9 常见编程错误458
复习459
快速测试460
快速测试答案461
复习题461
程序设计项目462
第15章 使用进程和线程的多进程464
15.1 多任务464
15.1.1 串行程序设计和并行程序设计464
15.1.2 分时多任务465
15.1.3 抢占式多任务465
15.1.4 时间片和并行466
15.1.5 并发程序设计467
15.2 进程467
15.2.1 进程创建467
15.2.2 进程等待469
15.2.3 从进程中执行另一个程序470
15.3 进程间通信和管道471
15.3.1 管道471
15.3.2 管道的用法472
15.3.3 使用标准输入的进程间通信473
15.3.4 父进程和子进程间通信举例474
15.4 线程476
15.4.1 线程的创建477
15.4.2 线程的同步478
15.4.3 互斥锁479
15.4.4 死锁481
15.5 线程举例484
实例研究:生产者/消费者模型484
15.6 常见编程错误493
复习493
C语言结构的复习493
快速测试494
快速测试答案495
复习题495
程序设计项目496
第16章 关于C++497
16.1 C++控制结构、输入/输出以及函数497
16.1.1 使用名字空间std497
16.1.2 C++标准输入/输出500
16.1.3 引用参数500
16.1.4 输出格式化502
16.2 C++对面向对象编程的支持503
16.2.1 头文件complex.h504
16.2.2 类名和构造函数505
16.2.3 成员函数和运算符506
16.2.4 实现文件complex.cpp506
16.2.5 数据成员509
16.2.6 输入/输出运算符重载510
复习512
快速测试513
快速测试答案514
复习题514
程序设计项目515
附录A 字符集516
附录B ANSI C标准库518
附录C C运算符529
附录D 关于指针的更多信息533
附录E ANSI C保留字537
附录F ANSI C结构的参照指南538
热门推荐
- 3126343.html
- 2279920.html
- 2056890.html
- 872817.html
- 849290.html
- 2829041.html
- 2759477.html
- 1842812.html
- 67623.html
- 197843.html
- http://www.ickdjs.cc/book_708570.html
- http://www.ickdjs.cc/book_615466.html
- http://www.ickdjs.cc/book_3648864.html
- http://www.ickdjs.cc/book_2697848.html
- http://www.ickdjs.cc/book_450955.html
- http://www.ickdjs.cc/book_2938623.html
- http://www.ickdjs.cc/book_3274541.html
- http://www.ickdjs.cc/book_3620403.html
- http://www.ickdjs.cc/book_15112.html
- http://www.ickdjs.cc/book_212511.html