图书介绍

C语言从入门到精通 第2版PDF|Epub|txt|kindle电子书版本下载

C语言从入门到精通 第2版
  • 龙马高新教育策划;国家863中部软件孵化器编著 著
  • 出版社: 北京:人民邮电出版社
  • ISBN:9787115375285
  • 出版时间:2015
  • 标注页数:562页
  • 文件大小:76MB
  • 文件页数:595页
  • 主题词:C语言-程序设计

PDF下载


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

下载说明

C语言从入门到精通 第2版PDF格式电子书版下载

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

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

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

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

图书目录

第0章 学习攻略1

0.1 C语言的来源2

0.2 C语言的特点3

0.3 C语言无处不在4

0.4 C语言的学习经验4

0.5 C语言的学习路线5

第1篇 基础知识8

第1章 步入C的世界——Hello C8

1.1 C语言的开发环境9

1.1.1 C常用开发环境9

1.1.2 VC++开发环境的安装9

1.1.3 TurboC2.0开发环境的安装12

1.2 认识常用开发环境14

1.2.1 认识VC++开发环境14

1.2.2 认识Turbo开发环境16

1.3 开始C编程——我的第1个C程序17

1.3.1 程序编写及运行流程17

1.3.2 在VisualC++6.0中开发C程序17

1.3.3 在TurboC中开发C程序20

1.4 高手点拨22

1.5 实战练习22

第2章 C程序的组成23

2.1 简单例子24

2.2 声明区25

2.2.1 头文件25

2.2.2 函数声明25

2.2.3 变量声明26

2.3 主函数28

2.4 函数定义区29

2.5 注释30

2.6 代码的规矩30

2.7 高手点拨31

2.8 实战练习32

第3章 C语言的基本构成元素——字符集、标识符和关键字33

3.1 标识符和关键字34

3.1.1 标识符34

3.1.2 关键字34

3.2 常量35

3.2.1 什么是常量35

3.2.2 常量的声明36

3.3 常量的类别36

3.3.1 数值常量36

3.3.2 字符常量38

3.3.3 字符串常量39

3.3.4 符号常量40

3.4 综合应用——常量指针与指针常量41

3.5 高手点拨42

3.6 实战练习43

第4章 变量45

4.1 变量46

4.1.1 什么是变量46

4.1.2 变量的定义与声明47

4.2 变量的类别47

4.2.1 局部变量48

4.2.2 形式参数49

4.2.3 全局变量50

4.3 变量的存储类型52

4.3.1 自动变量52

4.3.2 静态变量52

4.3.3 外部变量54

4.3.4 寄存器变量55

4.4 变量的赋值和初始化57

4.5 综合应用——根据变量的不同决定运行的结果58

4.6 高手点拨61

4.7 实战练习62

第5章 计算机如何识数——数制63

5.1 二进制64

5.2 八进制65

5.3 十进制65

5.4 十六进制66

5.5 数制间的转换66

5.6 综合应用——数制转换68

5.7 高手点拨69

5.8 实战练习70

第6章 数据的种类——数据类型71

6.1 数据类型的分类72

6.1.1 基本数据类型72

6.1.2 构造数据类型72

6.1.3 指针数据类型73

6.1.4 空类型73

6.2 整型73

6.3 字符型75

6.4 浮点型78

6.5 类型转换80

6.5.1 隐式转换81

6.5.2 显式转换83

6.6 综合应用——类型转换83

6.7 高手点拨85

6.8 实战练习86

第7章 C世界中的加减乘除——运算符和表达式87

7.1 C中的运算符和表达式88

7.1.1 运算符88

7.1.2 表达式89

7.2 算术运算符和表达式89

7.2.1 算术运算符89

7.2.2 算术表达式89

7.2.3 应用举例90

7.3 关系运算符和表达式92

7.3.1 关系运算符92

7.3.2 关系表达式92

7.3.3 应用举例92

7.4 逻辑运算符和表达式93

7.4.1 逻辑运算符94

7.4.2 逻辑表达式94

7.4.3 应用举例94

7.5 条件运算符和表达式97

7.6 赋值运算符和表达式98

7.6.1 赋值运算符98

7.6.2 赋值表达式98

7.6.3 应用举例99

7.7 自增、自减运算符101

7.8 逗号运算符和表达式102

7.9 位运算符103

7.9.1 按位与运算符104

7.9.2 按位或运算符104

7.9.3 按位异或运算符105

7.9.4 按位取反运算符106

7.9.5 左移运算符106

7.9.6 右移运算符107

7.9.7 位运算赋值运算符108

7.9.8 位运算应用108

7.10 优先级与结合性111

7.10.1 算术运算符的优先级和结合性111

7.10.2 关系运算符的优先级和结合性111

7.10.3 逻辑运算符的优先级和结合性111

7.10.4 赋值运算符的优先级与结合性112

7.11 综合应用——根据输入值计算结果112

7.12 高手点拨113

7.13 实战练习114

第8章 顺序结构与选择结构115

8.1 程序流程概述116

8.2 语句116

8.2.1 基本赋值语句116

8.2.2 表达式语句117

8.2.3 基本输入/输出语句117

8.2.4 控制语句120

8.2.5 空语句和复合语句120

8.3 顺序结构与语句121

8.4 选择结构123

8.4.1 选择结构123

8.4.2 单分支选择结构——if语句123

8.4.3 双分支选择结构——if-else语句126

8.4.4 多分支选择结构——if-else的嵌套形式127

8.4.5 多分支选择结构——switch语句132

8.5 综合应用——根据不同的利润计算资金134

8.6 高手点拨136

8.7 实战练习137

第9章 C程序的流程——循环结构与转向语句139

9.1 循环结构与语句140

9.1.1 循环结构140

9.1.2 当型循环语——for语句141

9.1.3 当型循环语——while语句145

9.1.4 直到型循环语句——do-while语句146

9.1.5 循环的嵌套148

9.2 转向语句152

9.2.1 goto语句152

9.2.2 break语句154

9.2.3 continue语句156

9.3 综合应用——简单计算器157

9.4 高手点拨159

9.5 实战练习159

第10章 用户与计算机的交互——输入和输出161

10.1 标准输入/输出162

10.2 格式化输入/输出162

10.2.1 格式化输出函数——printf()162

10.2.2 格式控制字符164

10.2.3 格式化输入函数——scanf()169

10.3 字符输入/输出171

10.3.1 字符输出函数——putchar()171

10.3.2 字符输入函数——getchar()173

10.4 字符串输入/输出174

10.4.1 字符串输出函数——puts()174

10.4.2 字符串输入函数——gets()174

10.5 高手点拨175

10.6 实战练习176

第11章 数组179

11.1 数组概述180

11.2 一维数组180

11.2.1 一维数组的定义180

11.2.2 一维数组的初始化183

11.2.3 一维数组元素的操作185

11.2.4 数组作为参数传递187

11.2.5 一维数组的应用举例190

11.3 二维数组192

11.3.1 二维数组的定义192

11.3.2 二维数组的初始化193

11.3.3 二维数组元素的操作194

11.3.4 二维数组的应用举例194

11.4 多维数组196

11.5 综合应用——杨辉三角197

11.6 高手点拨199

11.7 实战练习200

第12章 字符数组201

12.1 字符数组概述202

12.2 字符数组202

12.2.1 字符数组的初始化202

12.2.2 字符数组的引用202

12.2.3 字符数组的输入与输出203

12.3 字符串205

12.3.1 字符串和字符数组205

12.3.2 字符串的输入/输出207

12.3.3 字符串应用举例208

12.4 综合应用——自动分类字符210

12.5 高手点拨212

12.6 实战练习213

第13章 程序的灵魂——算法与流程图215

13.1 算法基础216

13.1.1 算法的概念216

13.1.2 算法的特性217

13.1.3 简单算法举例——解方程217

13.2 流程图的基础218

13.2.1 流程图中的元素及含义219

13.2.2 流程图的绘制220

13.3 如何表示一个算法222

13.3.1 用自然语言表示算法222

13.3.2 用流程图表示算法225

13.3.3 用传统流程图表示3种基本结构227

13.3.4 用N-S图表示算法228

13.3.5 用伪代码表示算法229

13.3.6 用计算机语言表示算法230

13.4 结构化程序设计方法231

13.5 综合应用——求解一元二次方程231

13.6 高手点拨234

13.7 实战练习234

第2篇 核心技术236

第14章 函数236

14.1 函数概述237

14.1.1 什么是函数237

14.1.2 函数的分类238

14.2 函数的定义239

14.3 函数的返回值及类型242

14.3.1 函数的返回值242

14.3.2 函数的类型244

14.4 函数的参数及传递方式247

14.4.1 函数的参数247

14.4.2 函数参数的传递方式249

14.5 函数的调用251

14.5.1 函数调用方式251

14.5.2 函数的声明253

14.5.3 函数的嵌套调用255

14.5.4 函数的递归调用256

14.6 内部函数和外部函数262

14.6.1 内部函数262

14.6.2 外部函数262

14.7 main()函数264

14.8 综合应用——用截弦法求方程的根266

14.9 高手点拨267

14.10 实战练习269

第15章 函数中的变量271

15.1 局部变量与全局变量272

15.1.1 局部变量272

15.1.2 全局变量273

15.2 变量的存储类别276

15.2.1 自动类型(auto)276

15.2.2 寄存器类型(register)277

15.2.3 静态类型(static)278

15.2.4 外部类型(extem)280

15.3 综合应用——日期判断282

15.4 高手点拨283

15.5 实战练习284

第16章 文件285

16.1 文件概述286

16.1.1 文件类型286

16.1.2 C如何操作文件——文件指针286

16.1.3 文件缓冲区287

16.2 文件的打开和关闭287

16.2.1 文件的打开——fopen()函数287

16.2.2 文件的关闭——fclose()函数289

16.2.3 文件结束检测——feof()函数289

16.3 文件的顺序读写290

16.3.1 文本文件中字符的输入/输出290

16.3.2 文本文件中字符串的输入/输出292

16.3.3 格式化输入/输出295

16.3.4 二进制文件的输入/输出——数据块读写296

16.4 文件的随机读写298

16.5 综合应用——文件操作300

16.6 高手点拨301

16.7 实战练习302

第17章 C语言如何被计算机识别——编译与预处理指令303

17.1 什么是预处理指令304

17.2 宏定义304

17.2.1 变量式宏定义305

17.2.2 宏定义嵌套310

17.2.3 宏定义范围312

17.2.4 函数式宏定义313

17.2.5 多行宏定义316

17.3 文件包含317

17.3.1 什么是文件包含317

17.3.2 使用文件包含317

17.3.3 文件包含说明319

17.4 条件编译319

17.4.1 条件编译形式320

17.4.2 调试中使用条件编译323

17.4.3 文件嵌套包含和条件编译324

17.5 assert()宏325

17.6 综合应用——编译与预处理指令325

17.7 高手点拨328

17.8 实战练习329

第18章 库函数331

18.1 标准C库函数332

18.2 数学函数332

18.2.1 绝对值函数333

18.2.2 幂函数和开平方函数334

18.2.3 指数函数和对数函数335

18.2.4 三角函数335

18.2.5 取整函数和取余函数335

18.3 字符串处理函数337

18.3.1 字符串长度函数337

18.3.2 字符串连接函数337

18.3.3 字符串复制函数338

18.3.4 字符串比较函数339

18.3.5 字符串查找函数341

18.3.6 字符串填充函数342

18.4 字符处理函数343

18.4.1 字符类型判断函数343

18.4.2 字符大小写转换函数344

18.5 转换和存储管理函数345

18.5.1 转换函数345

18.5.2 存储管理函数346

18.6 随机函数348

18.6.1 初识随机函数348

18.6.2 使用随机函数348

18.7 日期和时间处理函数350

18.8 诊断函数351

18.9 命令行参数353

18.10 其他函数354

18.10.1 exit()函数354

18.10.2 qsort()函数355

18.11 综合应用——猜数字游戏356

18.12 高手点拨358

18.13 实战练习360

第19章 合理利用内存——位运算361

19.1 二进制数362

19.1.1 二进制362

19.1.2 无符号数和有符号数362

19.2 位运算符363

19.2.1 按位与运算符363

19.2.2 按位或运算符364

19.2.3 按位异或运算符364

19.2.4 按位取反运算符365

19.2.5 左移运算符365

19.2.6 右移运算符366

19.2.7 位运算赋值运算符367

19.2.8 位运算应用367

19.3 位域370

19.4 综合应用——数制转换372

19.5 高手点拨373

19.6 实战练习374

第20章 结构体和联合体375

20.1 结构体376

20.1.1 结构体类型376

20.1.2 定义结构体变量377

20.1.3 初始化结构体变量379

20.1.4 结构体变量的引用379

20.2 结构体数组381

20.2.1 定义结构体数组381

20.2.2 初始化结构体数组383

20.2.3 结构体数组元素的引用384

20.3 结构体与函数385

20.3.1 结构体作为函数的参数385

20.3.2 结构体作为函数的返回值388

20.4 联合体389

20.4.1 联合体类型389

20.4.2 联合体变量的定义390

20.4.3 联合体变量的初始化392

20.4.4 联合体变量的引用394

20.5 结构体和联合体的区别与联系395

20.6 综合应用——计算学生成绩396

20.7 高手点拨397

20.8 实战练习399

第21章 数据管理者——数据结构401

21.1 数据结构概述402

21.2 线性表403

21.2.1 顺序表403

21.2.2 单链表407

21.3 栈414

21.3.1 栈的基本运算415

21.3.2 顺序栈的类型定义415

21.3.3 链式栈的类型定义415

21.4 队列416

21.4.1 队列的基本运算416

21.4.2 顺序队列类型定义416

21.4.3 链队列类型定义417

21.5 二叉树417

21.6 查找418

21.6.1 顺序查找419

21.6.2 折半查找421

21.7 排序423

21.7.1 冒泡排序法423

21.7.2 选择排序法425

21.7.3 插入排序法426

21.8 综合应用——链表的反转428

21.9 高手点拨430

21.10 实战练习442

第3篇 高级应用446

第22章 内存的快捷方式——指针446

22.1 指针概述447

22.1.1 指针的类型447

22.1.2 指针所指向的类型447

22.1.3 指针的值447

22.1.4 指针所占内存448

22.2 指针的算术运算448

22.2.1 指针与整数的运算448

22.2.2 指针与指针的运算450

22.3 运算符&和*450

22.4 指针表达式452

22.5 综合应用——使用指针进行排序453

22.6 高手点拨454

22.7 实战练习454

第23章 指针与数组455

23.1 数组指针456

23.2 数组指针作为函数参数456

23.3 指针与字符数组458

23.4 指针数组与指针的指针458

23.5 综合应用——报数游戏460

23.6 高手点拨462

23.7 实战练习462

第24章 指针与函数463

24.1 函数指针464

24.1.1 函数指针的定义464

24.1.2 函数指针的赋值465

24.1.3 通过函数指针调用函数465

24.2 指针函数467

24.3 指向函数的指针作为函数参数468

24.4 综合应用——日期的输出470

24.5 高手点拨472

24.6 实战练习472

第25章 指针与字符串473

25.1 字符串指针474

25.1.1 创建字符串474

25.1.2 处理字符串475

25.1.3 输出字符串478

25.2 字符串指针作为函数参数479

25.3 字符指针变量与字符数组的区别480

25.4 综合应用——“回文”问题481

25.5 实战练习482

第26章 指针与结构体483

26.1 结构体指针484

26.1.1 定义结构体指针484

26.1.2 初始化结构体指针484

26.1.3 使用指针访问成员484

26.1.4 给结构体指针赋值486

26.2 指向结构体变量的指针486

26.3 指向结构体数组的指针488

26.4 综合应用——创建简单链表490

26.5 高手点拨491

26.6 实战练习492

第27章 指针的高级应用与技巧493

27.1 指向指针的指针494

27.2 void操作495

27.3 内存操作497

27.4 指针的传递500

27.5 综合应用——数值的降序排列500

27.6 高手点拨502

27.7 实战练习502

第4篇 项目实战504

第28章 项目实战前的几点忠告——项目规划504

28.1 项目开发流程505

28.1.1 策划阶段506

28.1.2 需求分析阶段506

28.1.3 开发阶段506

28.1.4 编码阶段506

28.1.5 系统测试阶段507

28.1.6 系统验收阶段507

28.1.7 系统维护阶段507

28.2 项目开发团队507

28.2.1 项目团队组成507

28.2.2 项目团队要求508

28.3 项目的实际运作508

28.4 项目规划常见问题及解决509

28.4.1 如何满足客户需求509

28.4.2 如何控制项目进度509

28.4.3 如何控制项目预算510

第29章 Linux下的C语言开发511

29.1 开发背景512

29.2 Linux系统的安装512

29.2.1 安装虚拟机512

29.2.2 安装Linux系统514

29.3 Linux下的C语言开发环境523

29.3.1 了解GCC编译器523

29.3.2 GCC编译器的使用524

29.4 编译小程序525

第30章 通讯录527

30.1 开发背景528

30.2 需求及功能分析528

30.2.1 总体功能分析528

30.2.2 功能模块分析529

30.3 系统功能的实现529

30.3.1 系统选择菜单的实现530

30.3.2 增加联系人功能的实现530

30.3.3 删除联系人功能的实现531

30.3.4 查找联系人模块的实现532

30.3.5 插入联系人模块的实现533

30.3.6 保存联系人文件模块的实现533

30.3.7 从文件加载联系人信息模块的实现534

30.3.8 显示所有联系人信息模块的实现535

30.4 系统运行535

30.5 开发过程常见问题及解决536

第31章 图书管理系统537

31.1 开发背景538

31.2 需求及功能分析538

31.2.1 总体功能分析538

31.2.2 各模块功能分析538

31.3 系统功能的实现539

31.3.1 建立相关类及属性539

31.3.2 系统选择菜单的实现540

31.3.3 借书功能的实现542

31.3.4 还书功能的实现543

31.3.5 图书上架功能的实现543

31.3.6 图书下架功能的实现544

31.4 系统运行546

31.5 开发过程常见问题及解决547

第32章 信息管理系统549

32.1 简易网络通信系统550

32.1.1 系统分析550

32.1.2 功能分析及实现550

32.1.3 开发常见问题及解决551

32.2 学生成绩管理系统552

32.2.1 系统分析552

32.2.2 功能分析及实现552

32.2.3 开发常见问题及解决557

32.3 酒店管理系统557

32.3.1 系统分析557

32.3.2 功能分析及实现558

32.3.3 开发常见问题及解决562

第5篇 趣昧题解564

第33章 K-均值聚类算法564

33.1 问题描述565

33.2 问题分析及实现565

33.2.1 问题分析565

33.2.2 问题实现565

33.2.3 程序运行568

33.3 开发过程常见问题及解决568

第34章 哥德巴赫猜想569

34.1 问题描述570

34.2 问题分析及实现570

34.2.1 问题分析570

34.2.2 问题实现570

34.2.3 程序运行572

34.3 开发过程常见问题及解决572

第35章 猴子选大王游戏573

35.1 问题描述574

35.2 问题分析及实现574

35.2.1 问题分析574

35.2.2 问题实现574

35.2.3 程序运行576

35.3 开发过程常见问题及解决576

第36章 迷宫求解577

36.1 问题描述578

36.2 问题分析及实现578

36.2.1 问题分析578

36.2.2 问题实现578

36.2.3 程序运行582

36.3 开发过程常见问题及解决582

第37章 背包问题求解583

37.1 问题描述584

37.2 问题分析及实现584

37.2.1 问题分析584

37 2.2 问题实现584

37.2.3 程序运行586

37.3 开发过程常见问题及解决586

第38章 火车车厢重排587

38.1 问题描述588

38.2 问题分析及实现588

38.2.1 问题分析588

38.2.2 问题实现588

38.2.3 程序运行591

38.3 开发过程常见问题及解决592

第39章 哈夫曼编码的实现593

39.1 问题描述594

39.2 问题分析及实现594

39.2.1 问题分析594

39.2.2 问题实现594

39.2.3 程序运行596

39.3 开发过程常见问题及解决596

第40章 八皇后问题的实现597

40.1 问题描述598

40.2 问题分析及实现598

40.2.1 问题分析598

40.2.2 问题实现598

40.2.3 程序运行600

40.3 开发过程常见问题及解决600

第41章 商人过河游戏601

41.1 问题描述602

41.2 问题分析及实现602

41.2.1 问题分析602

41.2.2 问题实现602

41.2.3 程序运行605

41.3 开发过程常见问题及解决606

第42章 K阶斐波那契序列的实现607

42.1 问题描述608

42.2 问题分析及实现608

42.2.1 问题分析608

42.2.2 问题实现608

42.2.3 程序运行610

42.3 开发过程常见问题及解决610

第43章 最短路径的实现611

43.1 问题描述612

43.2 问题分析及实现612

43.2.1 问题分析612

43.2.2 问题实现612

43.2.3 程序运行614

43.3 开发过程常见问题及解决614

热门推荐