推荐:C语言的经典著作《C Primer Plus》

发布时间:2010-12-25 19:14    发布者:ztb
关键词: c语言
C Primer Plus 第五版 中英文版和习题大全

下载地址:
http://download.csdn.net/source/2933780  是 part1.rar
http://download.csdn.net/source/2933786  是 part2.rar
http://download.csdn.net/source/2933792  是 part3.rar
http://download.csdn.net/source/2933793  是 part4.rar

仅Part1.rar 是收费10分的,可以在这里下载:
C Primer Plus 第五版 中英大全.part1.part1.rar (9.77 MB)
C Primer Plus 第五版 中英大全.part1.part2.rar (9.31 MB)

请下载解压后修改后缀为*part1.RAR后再与其它3个文件一起解压即可。

下面是书签
-----------------------
封面 -11
内容提要 -9
前言 -8
目录 -7
第1章 概览 1
1.1 C语言的起源 l
1.2 使用C语言的理由 1
  1.2.1 设计特性 1
  1.2.2 高效性 2
  1.2.3 可移植性 2
  1.2.4 强大的功能和灵活性 2
1.2 ,5面向编程人员 3
  1.2.6 缺点 3
1.3 C语言的发展方向 3
1.4 计算机l一作的基本原理 4
1.5 高级计算机语言和编译器 4
1.6 使用C语言的7个步骤 5
  1.6.1 第1步:定义程序目标 5
  1.6.2 第2步:设计程序 6
  1.6.3 第3步:编写代码 6
  1.6.4 第4步:编译 6
  1.6.5 第5步:运行程序 6
  1.6.6 第6步:测试和调试程序 7
  1.6.7 第7步:维护和修改程序 7
  1.6.8 总结 7
1.7 编程机制 7
  1.7.1 目标代码文件、可执行文件和库 8
  1.7.2 UNIX系统 9
  1.7.3 Linux系统 10
  1.7.4 集成开发环境(Windows系统下) 10
  1.7.5 IBMPC的DOS编译器 II
  1.7.6 Macintosh上的C II
1.8 语言标准 11
  1.8.1 第1个ANSI/ISOC标准 12
  1.8.2 C99标准 12
1.9 本书的组织结构 12
1.10 本书体例 13
  1.10.1 字体 13
  1.10.2 屏幕输出 13
1.11 总结 14
1.12 复习题 14
1.13 编程练习 14
第2章 C语言概述 15
2.1 C语言的一个简单实例 15
2.2 实例说明 16
  2.2.1 第一遍快速简介 16
  2.2.2 第二遍程序细节 17
2.3 一个简单程序的结构 22
2.4 使程序可读的技巧 23
2.5 更进一步 24
  2.5.1 说明 24
  2.5.2 多个声明 24
  2.5.3 乘法 24
  2.5.4 输出多个值 25
2.6 多个函数 25
2.7 调试 26
2.7 ,1语法错误 26
  2.7.2 语义错误 27
  2.7.3 程序状态 28
2.8 关键字和保留标识符 28
2.9 关键概念 29
2.10 总结 29
2.11 复习题 30
2.12 编程练习 31
第3章 数据和C 32
3.1 示例程序 32
3.2 变量与常量数据 34
3.3 数据:数据类型关键字 34
  3.3.1 整数类型与浮点数类型 35
  3.3.2 整数 35
  3.3.3 浮点数 36
3.4 C数据类型 36
  3.4.1 int类型 36
  3.4.2 其他整数类型 39
  3.4.3 使用字符:char类型 42
  3.4.4 一Bool类型 46
  3.4.5 可移植的类型:inttypes.h 46
  3.4.6 float、double和longdouble类型 47
  3.4.7 复数和虚数类型 50
  3.4.8 其他类型 50
  3.4.9 类型大小 52
3.5 使用数据类型 53
3.6 参数和易犯的错误 54
3.7 另一个例子:转义序列 55
  3.7.1 过程分析 55
  3.7.2 刷新输出 56
3.8 关键概念 56
3.9 总结 56
3.10 复习题 57
3.11 编程练习 58
第4章 字符串和格式化输入/输出 60
4.1 前导程序 60
4.2 字符串简介 61
  4.2.1 char数组类型和空字符 61
  4.2.2 使用字符串 62
  4.2.3 strlen()函数 63
4.3 常量和C预处理器 64
  4.3.1 const修饰符 66
  4.3.2 系统定义的明显常量 66
4.4 研究和利用printf()和scanf() 67
  4.4.1 printf()函数 68
  4.4.2 使用printf() 68
  4.4.3 printf()的转换说明修饰符 70
  4.4.4 转换说明的意义 73
  4.4.5 使用scanf() 78
  4.4.6 printf()和scanf()的*修饰符 81
  4.4.7 printf的用法提示 82
4.5 关键概念 83
4.6 总结 83
4.7 复习题 84
4.8 编程练习 85
第5章 运算符、表达式和语句 87
5.1 循环简介 87
5.2 基本运算符 89
  5.2.1 赋值运算符:= 89
  5.2.2 加法运算符:+ 90
  5.2.3 减法运算符:- 90
  5.2.4 符号运算符:-和+ 90
  5.2.5 乘法运算符:* 91
  5.2.6 除法运算符:/ 92
  5.2.7 运算符的优先级 93
  5.2.8 优先级和求值顺序 94
5.3 其他运算符 95
  5.3.1 sizeof运算符和size_t类型 95
  5.3.2 取模运算符:  96
  5.3.3 增量和减量运算符:++和-- 97
  5.3.4 减量:-- IOO
  5.3.5 优先级 100
  5.3.6 不要太聪明 101
5.4 表达式和语句 102
5.4 I表达式 102
  5.4.2 语句 102
  5.4.3 复合语句(代码块) 104
5.5 类型转换 105
5.6 带有参数的函数 107
5.7 -个示例程序 109
5.8 关键概念 11O
5.9 总结 110
5.10 复习题 111
5.11 编程练习 113
第6章 C控制语句:循环 115
6.1 再探while循环 115
  6.1.1 程序注解 116
  6.1.2 C风格的读循环 117
6.2 while语句 118
  6.2.1 终止while循环 118
  6.2.2 循环何时终止 118
  6.2.3 wlule:入口条件循环 119
  6.2.4 语法要点 119
6.3 比较大小:使用关系运算符和表达式 120
  6.3.1 什么是真 122
  6.3.2 还有什么是真 122
  6.3.3 真值的问题 123
  6.3.4 新的_Bool类型 124
  6.3.5 关系运算符的优先级 125
6.4 不确定循环与计数循环 127
6.5 for循环 128
6.6 更多赋值运算符:+=、-=、*=、/=和 = 132
6.7 逗号运算符 133
6.8 退出条件循环:dowhilc 136
6.9 选择哪种循环 138
6.10 嵌套循环 138
6.10 ,1程序讨论 139
  6.10.2 嵌套变化 139
  6.1.1 数组 140
6.12 使用函数返回值的循环例子 142
  6.12.1 程序讨论 144
  6.12.2 使用具有返回值的函数 144
6.13 关键概念 145
6.14 总结 145
6.15 复习题 146
6.16 编程练习 149
第7章 C控制语句:分支和跳转 152
7.1 if语句 152
7.2 在if语句中添加else关键字 154
  7.2.1 另一个例子:介绍getchar()和putchar() 155
  7.2.2 ctype.h系列字符函数 157
  7.2.3 多重选择elseif 158
  7.2.4 把else与if配对 160
  7.2.5 多层嵌套的if 161
7.3 获得逻辑性 164
  7.3.1 改变拼写法:is0646.h头文件 166
  7.3.2 优先级 166
  7.3.3 求值的顺序 166
  7.3.4 范围 167
7.4 -个统计字数的程序 168
7.5 条件运算符?: 170
7.6 循环辅助手段:continue和break 172
  7.6.1 continue语句 172
  7.6.2 break语句 174
7.7 多重选择:switch和break 175
  7.7.1 使用switch语句 177
  7.7.2 只读取一行的首字符 178
  7.7.3 多重标签 178
  7.7.4 switch和ifelse 180
7.8 goto语句 180
7.9 关键概念 183
7.10 总结 183
7.11 复习题 184
7.12 编程练习 186
第8章 字符输入输出和输入确认 188
8.1 单字符I/O:getchar()和putchar() 188
8.2 缓冲区 189
8.3 终止键盘输入 190
  8.3.1 文件、流和键盘输入 190
  8.3.2 文件结尾 191
8.4 重定向和文件 192
8.5 创建一个更友好的用户界面 196
  8.5.1 使用缓冲输入 196
  8.5.2 混合输入数字和字符 198
8.6 输入确认 200
  8.6.1 分析程序 203
  8.6.2 输入流和数值 204
8.7 菜单浏览 204
  8.7.1 任务 205
  8.7.2 使执行更顺利 205
  8.7.3 混合字符和数值输入 207
8.8 关键概念 209
8.9 总结 209
8.10 复习题 210
8.11 编程练习 210
第9章 函数 212
9.1 函数概述 212
91.1 编写和使用一个简单的函数 213
  9.1.2 程序分析 214
  9.1.3 函数参数 215
  9.1.4 定义带有参数的函数:形式参量 216
  9.1.5 带参数函数的原型声明 217
  9.1.6 调用带有参数的函数:实际参数 217
  9.1.7 黑盒子观点 218
  9.1.8 使用retum从函数中返回一个值 218
  9.1.9 函数类型 221
9.2 ANSIC的函数原型 221
  9.2.1 产生的问题 222
  9.2.2 ANSI的解决方案 222
  9.2.3 无参数和不确定参数 224
  9.2.4 函数原型的优点 224
9.3 递归 224
  9.3.1 递归的使用 224
  9.3.2 递归的基本原理 226
  9.3.3 尾递归 226
  9.3.4 递归和反向计算 228
  9.3.5 递归的优缺点 229
9.4 多源代码文件程序的编译 230
  9.4.1 UNIX 230
  9.4.2 Linux 230
  9.4.3 DOS命令行编译嚣 230
  9.4.4 Windows和Macintosh编译器 230
  9.4.5 头文件的使用 231
9.5 地址运算符:& 233
9.6 改变调用函数中的变量 235
9.7 指针简介 236
  9.7.1 间接运算符:* 237
  9.7.2 指针声明 237
  9.7.3 使用指针在函数间通信 238
9.8 关键概念 241
9.9 总结 242
9.10 复习题 242
9.1 l编程练习 243
第10章 数组和指针 244
10.1 数组 244
  10.1.1 初始化 244
  10.1.2 j 定初始化项目(C99) 248
  10.1.3 为数组赋值 249
  10.1.4 数组边界 249
  10.1.5 指定数组大小 250
10.2 多维数组 251
  10.2.1 初始化二维数组 253
  10.2.2 更多维数的数组 254
10.3 指针和数组 254
10.4 函数、数组和指针 256
  10.4.1 使用指针参数 258
  10.4.2 评论:指针和数组 260
10.5 指针操作 260
10.6 保护数组内容 263
  10.6.1 对形式参量使用const 264
  10.6.2 有关const的其他内容 265
10.7 指针和多维数组 267
  10.7.1 指向多维数组的指针 268
  10.7.2 指针兼容性 269
  10.7.3 函数和多维数组 270
10.8 变长数组(VLA) 273
10.9 复合文字 276
1O.10 关键概念 278
10.11 总结 278
10.12 复习题 279
10.13 编程练习 281
第11章 字符串和字符串函数 282
11.1 字符串表示和字符串I/O 282
  11.1.1 在程序中定义字符串 283
  11.1.2 指针和字符串 288
11.2 字符串输入 289
  11.2.1 创建存储空间 289
11.2 ,2gets()函数 289
  11.2.3 fgets()函数 291
  11.2.4 scanf()函数 292
11.3 字符串输出 293
  11.3.1 puts()函数 293
  11.3.2 fputs()函数 294
  11.3.3 printf()函数 294
11.4 自定义字符串输入/输出函数 295
11.5 字符串函数 297
  11.5.1 sttien()画数 297
  11.5.2 strcat()函数 298
  11.5.3 strncat()函数 299
  11.5.4 strcmp()函数 299
  11.5.5 strncmp()变种 303
  11.5.6 strcpy()和stmcpy()函数 303
  11.5.7 sprintf()函数 307
  11.5.8 其他字符串函数 307
11.6 字符串例子:字符串排序 309
  11.6.1 排序指针而不是字符串 310
  11.6.2 选择排序算法 310
11.7 ctype.h字符函数和字符串 311
11.8 命令行参数 312
  11.8.1 集成环境下的命令行参数 314
  11.8.2 Macintosh的命令行参数 314
11.9 把字符串转换为数字 314
11.1 O关键概念 316
11.11 总结 316
11.12 复习题 317
11.13 编程练习 319
第12章 存储类、链接和内存管理 321
12.1 存储类 321
  12.1.1 作用域 321
  12.1.2 链接 323
  12.1.3 存储时期 323
  12.1.4 自动变量 324
  12.1.5 寄存器变量 326
  12.1.6 具有代码块作用域的静态变量 327
  12.1.7 具有外部链接的静态变量 328
  12.1.8 具有内部链接的静态变量 331
  12.1.9 多文件 332
12.2 存储类说明符 332
12.3 存储类和函数 334
12.4 随机数函数和静态变量 335
12.5 掷骰子 337
12.6 分配内存:malloc()和free() 340
  12.6.1 free()的重要性 343
  12.6.2 函数calloc() 343
  12.6.3 动态内存分配与变长数组 344
  12.6.4 存储类与动态内存分配 344
12.7 ANSIC的类型限定词 345
  12.7.1 类型限定词const 345
  12.7.2 类型限定词volatile 347
  12.7.3 类型限定词festrict 347
  12.7.4 旧关键字的新位置 348
12.8 关键概念 348
12.9 总结 349
12.10 复习题 350
12.11 编程练习 351
第13章 文件输入输出 354
13.1 和文件进行通信 354
  13.1.1 文件是什么 354
  13.1.2 文本视图和二进制视图 355
  13.1.3110 级别 355
  13.1.4 标准文件 355
13.2 标准I/0 356
  13.2.1 检查命令行参数 357
  13.2.2 fopen()函数 357
  13.2.3 getc()函数和putc()函数 358
  13.2.4 文件结尾 358
  13.2.5 fclose()函数 359
  13.2.6 标准文件指针 359
13.3 -个简单的文件压缩程序 360
13.4 文件I/O:fprintf()、fscanf()、fgets()和fputs()函数 361
  13.4.1 fprintf()和fscanf()函数 361
  13.4.2 fgets()和fputs()函数 362
  13.4.3 注释:gets()函数和fgets()函数 364
13.5 随机存取:fseek()和ftell()函数 364
  13.5.1 fseek()和ftell()如何工作 365
13.5 ,2二进制模式和文本模式 366
  13.5.3 可移植性 366
  13.5.4 fgetpos()和fsetpos()函数 367
13.6 标准I/O内幕 367
13.7 其他标准I/O函数 368
  13.7.1 intungetc(intc,FILE*fp)函数 368
  13.7.2 intfflush()函数 368
  13.7.3 intsetvbuf()函数 368
  13.7.4 二进制I/O:fread()和fwrite()函数 369
  13.7.5 size_tfwrite()函数 369
  13.7.6 size_tfread()函数 370
  13.7.7 intfeof(FILE*fp)和intferror(FILE*fp)函数 370
  13.7.8 -个fread()和fwrite()的例子 370
  13.7.9 使用二进制I/O进行随机存取 372
13.8 关键概念 374
13.9 总结 374
13.10 复习题 375
13.11 编程练习 376
第14章 结构和其他数据形式 378
14.1 示例问题:创建图书目录 378
14.2 建立结构声明 379
14.3 定义结构变量 380
  14.3.1 初始化结构 381
  14.3.2 访问结构成员 381
  14.3.3 结构的指定初始化项目 382
14.4 结构数组 382
  14.4.1 声明结构教组 384
  14.4.2 标识结构数组的成员 384
  14.4.3 程序讨论 385
14.5 嵌套结构 385
14.6 指向结构的指针 387
  14.6.1 声明和初始化结构指针 388
  14.6.2 使用指针访问成员 388
14.7 向函数传递结构信息 389
  14.7.1 传递结构成员 389
  14.7.2 使用结构地址 390
  14.7.3 把结构作为参数传递 391
  14.7.4 其他结构特性 391
  14.7.5 结构还是指向结构的指针 394
  14.7.6 在结构中使用字符数组还是字符指针 395
  14.7.7 结构、指针和malloc() 395
  14.7.8 复合文字和结构(C99) 397
  14.7.9 伸缩型数组成员(C99) 398
  14.7.10 使用结构数组的函数 400
14.8 把结构内容保存到文件中 401
  14.8.1 一个结构保存的实例 402
  14.8.2 程序要点 404
14.9 结构:下一步是什么 405
14.10 联合简介 405
14.11 枚举类型 407
  14.11.1 enum常量 408
  14.11.2 默认值 408
  14.11.3 指定值 408
  14.11.4 enum用法 408
  14.11.5 共享的名字空间 410
14.12 typedef简介 410
14.13 奇特的声明 412
14.14 函数和指针 413
14.15 关键概念 418
14.16 总结 418
14.17 复习题 419
14.18 编程练习 421
第15章 位操作 423
15.1 二进制数、位和字节 423
  15.1.1 二进制整数 424
  15.1.2 有符号整数 424
  15.1.3 二进制浮点数 424
15.2 其他基数 425
  15.2.1 八进制 425
  15.2.2 十六进制 425
15.3 C的位运算符 426
  15.3.1 位逻辑运算符 426
  15.3.2 用法:掩码 428
  15.3.3 用法:打开位 428
  15.3.4 用法:关闭位 428
  15.3.5 用法:转置位 429
  15.3.6 用法:查看一位的值 429
  15.3.7 移位运算符 429
  15.3.8 编程实例 430
  15.3.9 另一个实例 432
15.4 位字段 434
  15.4.1 位字段实例 435
  15.4.2 位字段和位运算符 437
15.5 关键概念 443
15.6 总结 443
15.7 复习题 443
15.8 编程练习 444
第16章 C预处理器和C库 446
16.1 翻译程序的第一步 446
16.2 明显常量:#difine 447
  16.2.1 语言符号 449
  16.2.2 重定义常量 450
16.3 在#define中使用参数 450
  16.3.1 利用宏参数创建字符串:#运算符 452
  16.3.2 预处理器的粘合剂:##运算符 453
  16.3.3 可变宏:...和__VA_ARGS__ 454
16.4 宏还是函数 455
16.5 文件包含:#include 455
  16.5.1 头文件:一个实例 456
  16.5.2 使用头文件 458
16.6 其他指令 459
  16.6.1 #undef指令 459
  16.6.2 已定义:C预处理器的观点 459
  16.6.3 条件编译 459
  16.6.4 预定义宏 463
  16.6.5 #line和#error 464
  16.6.6 #pragma 464
16.7 内联函数 465
16.8 C库 467
  16.8.1 访问C库 467
  16.8.2 参考库描述 467
16.9 数学库 468
16.10 通用工具库 471
  16.10.1 exit()和atexit()函数 471
  16.10.2 qsort()函数 472
16.11 诊断库 476
16.12 string.h库中的memcpy()和memmove() 477
16.13 可变参数:stdarg.h 478
16.14 关键概念 480
16.15 总结 481
16.16 复习题 481
16.17 编程练习 482
第17章 高级数据表示 484
17.1 研究数据表示 484
17.2 从数组到链表 486
  17.2.1 使用链表 488
  17.2.2 反思 491
17.3 抽象数据类型(ADT) 492
  17.3.1 变得抽象 492
  17.3.2 构造接口 493
  17.3.3 使用接口 496
  17.3.4 实现接口 498
17.4 队列ADT 504
  17.4.1 定义队列抽象数据类型 504
  17.4.2 定义接口 504
  17.4.3 实现接口的数据表示 505
  17.4.4 测试队列 511
17.5 用队列进行模拟 513
17.6 链表与数组 517
17.7 二叉搜索树 519
  17.7.1 二叉树ADT 520
  17.7.2 二叉搜索树的接口 520
  17.7.3 二叉树的实现 522
17.7 ,4试用树 533
  17.7.5 树的思想 536
17.8 其他说明 537
17.9 关键概念 537
17.10 总结 538
17.11 复习题 538
17.12 编程练习 538
附录A复习题答案 540
附录B参考资料 570
B.1 参考资料l:参阅书籍 570
B.2 参考资料2:C运算符 572
B.3 参考资料3:基本类型和存储类 576
B.4 参考资料4:表达式、语句和程序流 579
B.5 参考资料5:添加了C99的标准ANSIC库 584
B.6 参考资料6:扩展的整数类型 614
B.7 参考资料7:扩展的字符支持 617
B.8 参考资料8:C99的数值计算增强 620
B.9 参考资料9:C和C++的差别 622
本文地址:https://www.eechina.com/thread-47657-1-1.html     【打印本页】

本站部分文章为转载或网友发布,目的在于传递和分享信息,并不代表本网赞同其观点和对其真实性负责;文章版权归原作者及原出处所有,如涉及作品内容、版权和其它问题,我们将根据著作权人的要求,第一时间更正或删除。
ztb 发表于 2010-12-25 20:09:05
是我觉得这里下载的速度比CSDN慢许多了,并且只能上传10M的文件。总共65M呢!还是建议去CSDN下载其余3个文件吧。
左左 发表于 2010-12-25 21:48:40
csdn积分不好挣呀
ztb 发表于 2010-12-25 23:40:28
这本书一共分为4个部分,就第一部分是要10分的所以我把它上传到这里了,其它3部分都是0分下载的。
rinllow3 发表于 2010-12-26 03:08:01
thanks
lhtlht888 发表于 2010-12-28 18:40:39
Good Book for reference..........
migliu 发表于 2010-12-31 16:25:10
very good
lfy129977 发表于 2011-7-17 20:50:09
谢谢!
lfy129977 发表于 2011-7-17 21:07:31
资料不错啊!谢谢!
rinllow6 发表于 2013-1-30 14:13:20
谢谢!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
春夏秋冬 发表于 2015-1-16 21:53:10
感谢分享!
您需要登录后才可以发表评论 登录 | 立即注册

厂商推荐

关于我们  -  服务条款  -  使用指南  -  站点地图  -  友情链接  -  联系我们
电子工程网 © 版权所有   京ICP备16069177号 | 京公网安备11010502021702
快速回复 返回顶部 返回列表