图书介绍
C语言入门经典 第4版PDF|Epub|txt|kindle电子书版本网盘下载
- (美)霍顿著 著
- 出版社: 北京:清华大学出版社
- ISBN:7302170835
- 出版时间:2008
- 标注页数:571页
- 文件大小:103MB
- 文件页数:584页
- 主题词:C语言-程序设计
PDF下载
下载说明
C语言入门经典 第4版PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
第1章 C语言编程1
1.1 创建C程序1
1.1.1 编辑1
1.1.2 编译2
1.1.3 链接2
1.1.4 执行3
1.2 创建第一个程序4
1.3 编辑第一个程序4
1.4 处理错误5
1.5 剖析一个简单的程序6
1.5.1 注释6
1.5.2 预处理指令7
1.5.3 定义main()函数7
1.5.4 关键字8
1.5.5 函数体8
1.5.6 输出信息9
1.5.7 参数10
1.5.8 控制符10
1.6 用C语言开发程序12
1.6.1 了解问题12
1.6.2 详细设计12
1.6.3 实施13
1.6.4 测试13
1.7 函数及模块化编程13
1.8 常见错误17
1.9 要点17
1.10 小结18
1.11 习题18
第2章 编程初步19
2.1 计算机的内存19
2.2 什么是变量21
2.3 存储数值的变量21
2.3.1 整数变量21
2.3.2 变量的命名25
2.3.3 变量的使用26
2.3.4 变量的初始化28
2.3.5 算术语句28
2.4 变量与内存34
2.5 整数变量类型35
2.5.1 无符号的整数类型35
2.5.2 使用整数类型36
2.5.3 指定整数常量37
2.6 浮点数38
2.7 浮点数变量38
2.8 使用浮点数完成除法运算39
2.8.1 控制小数位数40
2.8.2 控制输出的字段宽度41
2.9 较复杂的表达式41
2.10 定义常量44
2.10.1 极限值46
2.10.2 sizeof运算符49
2.11 选择正确的类型50
2.12 强制类型转换53
2.12.1 自动转换类型53
2.12.2 隐式类型转换的规则54
2.12.3 赋值语句中的隐式类型转换54
2.13 再谈数值数据类型55
2.13.1 字符类型56
2.13.2 字符的输入输出57
2.13.3 宽字符类型60
2.13.4 枚举60
2.13.5 存储布尔值的变量63
2.13.6 复数类型63
2.14 赋值操作的op=形式66
2.15 数学函数68
2.16 设计一个程序69
2.16.1 问题69
2.16.2 分析69
2.16.3 解决方案71
2.17 小结75
2.18 练习76
第3章 条件判断79
3.1 判断过程79
3.1.1 算术比较80
3.1.2 涉及关系运算符的表达式80
3.1.3 基本的if语句81
3.1.4 扩展if语句:if-else84
3.1.5 在if语句中使用代码块86
3.1.6 嵌套的if语句87
3.1.7 更多的关系运算符90
3.1.8 逻辑运算符93
3.1.9 条件运算符97
3.1.10 运算符的优先级99
3.2 多项选择问题103
3.2.1 给多项选择使用else-if语句104
3.2.2 switch语句104
3.2.3 goto语句113
3.3 按位运算符114
3.3.1 按位运算符的op=用法116
3.3.2 使用按位运算符117
3.4 设计程序120
3.4.1 问题120
3.4.2 分析120
3.4.3 解决方案121
3.5 小结124
3.6 练习124
第4章 循环127
4.1 循环127
4.2 递增和递减运算符128
4.3 for循环129
4.4 for循环的一般语法132
4.5 再谈递增和递减运算符133
4.5.1 递增运算符133
4.5.2 递增运算符的前置和后置形式134
4.5.3 递减运算符134
4.6 再论for循环135
4.6.1 修改for循环变量137
4.6.2 没有参数的for循环138
4.6.3 循环内的break语句138
4.6.4 使用for循环限制输入141
4.6.5 生成伪随机整数143
4.6.6 再谈循环控制选项145
4.6.7 浮点类型的循环控制变量146
4.7 while循环147
4.8 嵌套循环150
4.9 嵌套循环和goto语句153
4.10 do-while循环154
4.11 continue语句157
4.12 设计程序157
4.12.1 问题157
4.12.2 分析157
4.12.3 解决方案158
4.13 小结170
4.14 习题170
第5章 数组173
5.1 数组简介173
5.1.1 不用数组的程序173
5.1.2 什么是数组175
5.1.3 使用数组176
5.2 内存179
5.3 数组和地址182
5.4 数组的初始化184
5.5 确定数组的大小184
5.6 多维数组185
5.7 多维数组的初始化187
5.8 设计一个程序191
5.8.1 问题192
5.8.2 分析192
5.8.3 解决方案193
5.9 小结200
5.10 习题200
第6章 字符串和文本的应用201
6.1 什么是字符串201
6.2 处理字符串和文本的方法203
6.3 字符串操作206
6.3.1 连接字符串206
6.3.2 字符串数组208
6.4 字符串库函数210
6.4.1 使用库函数复制字符串210
6.4.2 使用库函数确定字符串的长度211
6.4.3 使用库函数连接字符串212
6.4.4 比较字符串213
6.4.5 搜索字符串216
6.5 分析和转换字符串219
6.5.1 转换字符222
6.5.2 将字符串转换成数值225
6.7 使用宽字符串225
6.8 设计一个程序228
6.8.1 问题229
6.8.2 分析229
6.8.3 解决方案229
6.9 小结237
6.10 习题237
第7章 指针239
7.1 指针初探239
7.1.1 声明指针240
7.1.2 通过指针访问值241
7.1.3 使用指针244
7.1.4 指向常量的指针248
7.1.5 常量指针248
7.1.6 指针的命名249
7.2 数组和指针249
7.3 多维数组252
7.3.1 多维数组和指针255
7.3.2 访问数组元素257
7.4 内存的使用260
7.4.1 动态内存分配:malloc()函数260
7.4.2 分配内存时使用sizeof运算符261
7.4.3 用calloc()函数分配内存265
7.4.4 释放动态分配的内存265
7.4.5 重新分配内存267
7.5 使用指针处理字符串268
7.5.1 更多地控制字符串输入268
7.5.2 使用指针数组269
7.6 设计程序280
7.6.1 问题280
7.6.2 分析281
7.6.3 解决方案281
7.7 小结291
7.8 习题291
第8章 程序的结构293
8.1 程序的结构293
8.1.1 变量的作用域和生存期294
8.1.2 变量的作用域和函数297
8.2 函数297
8.2.1 定义函数298
8.2.2 return语句301
8.3 按值传递机制304
8.4 函数声明305
8.5 指针用作参数和返回值307
8.5.1 常量参数310
8.5.2 从函数中返回指针值318
8.5.3 在函数中递增指针322
8.6 小结322
8.7 习题323
第9章 函数再探325
9.1 函数指针325
9.1.1 声明函数指针325
9.1.2 通过函数指针调用函数326
9.1.3 函数指针数组329
9.1.4 作为变元的函数指针331
9.2 函数中的变量334
9.2.1 静态变量:函数内部的追踪334
9.2.2 在函数之间共享变量336
9.3 调用自己的函数:递归338
9.4 变元个数可变的函数341
9.4.1 复制va_list344
9.4.2 长度可变的变元列表的基本规则344
9.5 main()函数345
9.6 结束程序346
9.7 函数库:头文件347
9.8 提高性能348
9.8.1 内联声明函数348
9.8.2 使用restrict关键字348
9.9 设计程序349
9.9.1 问题349
9.9.2 分析349
9.9.3 解决方案351
9.10 小结367
9.11 习题368
第10章 基本输入和输出操作369
10.1 输入和输出流369
10.2 标准流370
10.3 键盘输入371
10.3.1 格式化键盘输入371
10.3.2 输入格式控制字符串372
10.3.3 输入格式字符串中的字符377
10.3.4 输入浮点数的各种变化378
10.3.5 读取十六进制和八进制值379
10.3.6 用scanf()读取字符381
10.3.7 scanf()的陷阱383
10.3.8 从键盘上输入字符串383
10.3.9 键盘的非格式化输入384
10.4 屏幕输出389
10.4.1 使用printf()格式输出到屏幕389
10.4.2 转义序列391
10.4.3 整数输出392
10.4.4 输出浮点数394
10.4.5 字符输出395
10.5 其他输出函数398
10.5.1 屏幕的非格式化输出398
10.5.2 数组的格式化输出399
10.5.3 数组的格式化输入400
10.6 打印机输出400
10.7 小结401
10.8 习题401
第11章 结构化数据403
11.1 数据结构:使用struct403
11.1.1 定义结构类型和结构变量405
11.1.2 访问结构成员405
11.1.3 未命名的结构408
11.1.4 结构数组408
11.1.5 表达式中的结构411
11.1.6 结构指针411
11.1.7 为结构动态分配内存412
11.2 再探结构成员414
11.2.1 将一个结构作为另一个结构的成员414
11.2.2 声明结构中的结构415
11.2.3 将结构指针用作结构成员416
11.2.4 双向链表420
11.2.5 结构中的位字段423
11.3 结构与函数424
11.3.1 结构作为函数的变元424
11.3.2 结构指针作为函数变元425
11.3.3 作为函数返回值的结构426
11.3.4 修改程序430
11.3.5 二叉树433
11.4 共享内存442
11.4.1 联合442
11.4.2 联合指针444
11.4.3 联合的初始化444
11.4.4 联合中的结构成员444
11.5 定义自己的数据类型446
11.5.1 结构与类型定义(typedef)功能446
11.5.2 使用typedef简化代码447
11.6 设计程序448
11.6.1 问题448
11.6.2 分析448
11.6.3 解决方案448
11.7 小结459
11.8 习题459
第12章 处理文件461
12.1 文件的概念461
12.1.1 文件中的位置462
12.1.2 文件流462
12.2 文件访问462
12.2.1 打开文件463
12.2.2 文件重命名465
12.2.3 关闭文件465
12.2.4 删除文件466
12.3 写入文本文件466
12.4 读取文本文件467
12.5 将字符串写入文本文件470
12.6 从文本文件中读入字符串471
12.7 格式化文件的输入输出474
12.7.1 格式化文件输出474
12.7.2 格式化文件输入475
12.8 错误处理477
12.9 再探文本文件操作模式478
12.10 二进制文件的输入输出479
12.10.1 指定二进制模式479
12.10.2 写入二进制文件480
12.10.3 读取二进制文件480
12.11 在文件中移动488
12.11.1 文件定位操作489
12.11.2 找出我们在文件中的位置489
12.11.3 在文件中设定位置490
12.12 使用临时文件496
12.12.1 创建临时文件496
12.12.2 创建唯一的文件名496
12.13 更新二进制文件497
12.13.1 修改文件的内容502
12.13.2 从键盘读取记录503
12.13.3 将记录写入文件504
12.13.4 从文件中读取记录505
12.13.5 写入文件506
12.13.6 列出文件内容507
12.13.7 更新已有的文件内容508
12.14 文件打开模式小结515
12.15 设计程序516
12.15.1 问题516
12.15.2 分析516
12.15.3 解决方案516
12.16 小结522
12.17 习题522
第13章 支持功能523
13.1 预处理523
13.1.1 在程序中包含头文件523
13.1.2 外部变量及函数524
13.1.3 替换程序源代码525
13.1.4 宏替换526
13.1.5 看起来像函数的宏526
13.1.6 多行上的预处理指令528
13.1.7 字符串作为宏参数528
13.1.8 结合两个宏展开式的结果529
13.2 预处理器逻辑指令530
13.2.1 条件编译530
13.2.2 测试指定值的指令531
13.2.3 多项选择531
13.2.4 标准预处理宏532
13.3 调试方法533
13.3.1 集成的调试器533
13.3.2 调试阶段的预处理器533
13.3.3 使用assert()宏537
13.4 其他库函数539
13.4.1 日期和时间函数库539
13.4.2 获取日期543
13.5 小结549
13.6 习题549
附录A 计算机中的数学知识551
附录B ASCII字符代码定义559
附录C C语言中的保留字565
附录D 输入输出格式指定符567