图书介绍

C语言从入门到精通 精粹版【2025|PDF|Epub|mobi|kindle电子书版本百度云盘下载】

C语言从入门到精通 精粹版
  • 梁义涛编著 著
  • 出版社: 北京:人民邮电出版社
  • ISBN:9787115463401
  • 出版时间:2018
  • 标注页数:544页
  • 文件大小:252MB
  • 文件页数:562页
  • 主题词:C语言-程序设计

PDF下载


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

下载说明

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

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

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

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

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

图书目录

第0章 学习攻略2

0.1 编程的魔力2

0.2 C语言的来源及特点2

0.3 让计算机开口说话4

0.4 C语言的用途5

0.5 学习C语言的方法5

第Ⅰ篇 基础知识9

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

1.1 C语言的开发环境9

1.1.1 C语言常用的开发环境9

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

1.1.3 Turbo C 2.0开发环境的安装12

1.2 认识常用开发环境13

1.2.1 认识VC++开发环境13

1.2.2 认识Turbo开发环境14

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

1.3.1 程序编写及运行流程15

1.3.2 在Visual C++ 6.0中开发C程序16

1.3.3 在Turbo C中开发C程序18

1.4 高手点拨20

1.5 实战练习20

第2章 C程序的组成22

2.1 简单例子22

2.2 声明区22

2.2.1 头文件22

2.2.2 函数声明23

2.2.3 变量声明24

2.3 主函数25

2.4 函数定义区26

2.5 注释26

2.6 代码的规矩27

2.7 高手点拨27

2.8 实战练习28

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

3.1 标识符和关键字30

3.1.1 标识符30

3.1.2 关键字30

3.2 常量30

3.2.1 什么是常量30

3.2.2 常量的声明32

3.3 常量的类别32

3.3.1 数值常量32

3.3.2 字符常量33

3.3.3 字符串常量34

3.3.4 符号常量34

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

3.5 高手点拨36

3.6 实战练习37

第4章 变量40

4.1 变量40

4.1.1 什么是变量40

4.1.2 变量的定义与声明41

4.2 变量的类别41

4.2.1 局部变量41

4.2.2 形式参数42

4.2.3 全局变量43

4.3 变量的存储类型45

4.3.1 自动变量45

4.3.2 静态变量45

4.3.3 外部变量46

4.3.4 寄存器变量47

4.4 变量的赋值和初始化48

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

4.6 高手点拨52

4.7 实战练习52

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

5.1 二进制54

5.2 八进制55

5.3 十进制55

5.4 十六进制55

5.5 数制间的转换56

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

5.7 高手点拨57

5.8 实战练习58

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

6.1 数据类型的分类60

6.1.1 基本数据类型60

6.1.2 构造数据类型60

6.1.3 指针数据类型60

6.1.4 空类型61

6.2 整型61

6.3 字符型63

6.4 浮点型65

6.5 类型转换67

6.5.1 隐式转换67

6.5.2 显式转换69

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

6.7 高手点拨70

6.8 实战练习71

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

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

7.1.1 运算符74

7.1.2 表达式74

7.2 算术运算符和表达式75

7.2.1 算术运算符75

7.2.2 算术表达式75

7.2.3 应用举例75

7.3 关系运算符和表达式77

7.3.1 关系运算符77

7.3.2 关系表达式77

7.3.3 应用举例77

7.4 逻辑运算符和表达式78

7.4.1 逻辑运算符78

7.4.2 逻辑表达式79

7.4.3 应用举例79

7.5 条件运算符和表达式81

7.6 赋值运算符和表达式82

7.6.1 赋值运算符82

7.6.2 赋值表达式82

7.6.3 应用举例83

7.7 自增、自减运算符84

7.8 逗号运算符和表达式85

7.9 位运算符86

7.9.1 按位与运算符86

7.9.2 按位或运算符87

7.9.3 按位异或运算符87

7.9.4 按位取反运算符88

7.9.5 左移运算符88

7.9.6 右移运算符89

7.9.7 位运算赋值运算符90

7.9.8 位运算应用90

7.10 优先级与结合性93

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

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

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

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

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

7.12 高手点拨95

7.13 实战练习95

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

8.1 程序流程概述98

8.2 语句98

8.2.1 基本赋值语句98

8.2.2 表达式语句99

8.2.3 基本输入/输出语句99

8.2.4 控制语句101

8.2.5 空语句和复合语句101

8.3 顺序结构与语句102

8.4 选择结构103

8.4.1 选择结构103

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

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

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

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

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

8.6 高手点拨114

8.7 实战练习115

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

9.1 循环结构与语句118

9.1.1 循环结构118

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

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

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

9.1.5 循环的嵌套125

9.2 转向语句128

9.2.1 goto语句129

9.2.2 break语句129

9.2.3 continue语句131

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

9.4 高手点拨134

9.5 实战练习134

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

10.1 标准输入/输出136

10.2 格式化输入/输出136

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

10.2.2 格式控制字符138

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

10.3 字符输入/输出144

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

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

10.4 字符串输入/输出146

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

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

10.5 高手点拨148

10.6 实战练习148

第11章 数组152

11.1 数组概述152

11.2 一维数组152

11.2.1 一维数组的定义152

11.2.2 一维数组的初始化155

11.2.3 一维数组元素的操作156

11.2.4 数组作为参数传递158

11.2.5 一维数组的应用举例160

11.3 二维数组162

11.3.1 二维数组的定义162

11.3.2 二维数组的初始化163

11.3.3 二维数组元素的操作163

11.3.4 二维数组的应用举例164

11.4 多维数组165

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

11.6 高手点拨167

11.7 实战练习168

第12章 字符数组170

12.1 字符数组概述170

12.2 字符数组170

12.2.1 字符数组的初始化170

12.2.2 字符数组的引用170

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

12.3 字符串172

12.3.1 字符串和字符数组172

12.3.2 字符串的输入/输出174

12.3.3 字符串应用举例175

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

12.5 高手点拨178

12.6 实战练习179

第Ⅱ篇 算法应用183

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

13.1 算法基础183

13.1.1 算法的概念183

13.1.2 算法的特性183

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

13.2 流程图的基础185

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

13.2.2 流程图的绘制186

13.3 如何表示一个算法188

13.3.1 用自然语言表示算法188

13.3.2 用流程图表示算法190

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

13.3.4 用N-S图表示算法193

13.3.5 用伪代码表示算法195

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

13.4 结构化程序设计方法196

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

13.6 高手点拨199

13.7 实战练习200

第14章 基础算法202

14.1 排序算法202

14.1.1 桶排序法202

14.1.2 冒泡排序法203

14.1.3 快速排序法204

14.2 栈、队列、链表算法206

14.2.1 队列206

14.2.2 栈209

14.2.3 链表211

14.2.4 模拟链表216

14.3 枚举算法218

14.4 搜索算法220

14.4.1 深度优先搜索220

14.4.2 广度优化搜索220

14.5 图的遍历算法221

14.5.1 深度和广度的区别221

14.5.2 图的深度优化遍历221

14.5.3 图的广度优化遍历223

14.6 综合应用——宝岛探险225

14.7 高手点拨227

14.8 实战练习228

第15章 C世界中的高级算法230

15.1 模拟算法230

15.2 简单动态规划231

15.3 用递归实现回溯算法233

15.4 最短路径算法236

15.4.1 只有五行的算法——Floyd-Warshall236

15.4.2 Dijkstra算法——单源最短边237

15.4.3 Bellman-Ford——解决负权边237

15.4.4 Bellman-Ford的队列优化238

15.4.5 最短路径算法对比分析238

15.5 树算法240

15.5.1 二叉树算法240

15.5.2 堆算法241

15.5.3 并查集241

15.6 综合应用——镖局运镖243

15.7 高手点拨245

15.8 实战练习246

第16章 数学在程序设计中的应用248

16.1 常用数学函数248

16.2 质因数分解249

16.3 最大公约数的欧几里得算法251

16.4 加法原理与乘法原理252

16.5 排列与组合253

16.6 综合应用——圆排列、可重集排列254

16.7 高手点拨255

16.8 实战练习256

第17章 算法设计的常用思路258

17.1 分治算法258

17.2 动态规划算法259

17.3 贪心算法261

17.4 回溯算法263

17.5 高手点拨265

17.6 实战练习265

第18章 算法竞赛实例268

18.1 衡量程序质量的标准268

18.2 Hilbert曲线269

18.3 验证四色问题271

18.4 n女王问题273

18.5 跳马问题274

18.6 生成全部排列及其应用276

18.7 贪吃蛇游戏278

18.8 快速排序283

18.9 幻方284

18.10 高精度计算288

18.11 高手点拨289

18.12 实战练习290

第Ⅲ篇 核心技术293

第19章 函数293

19.1 函数概述293

19.1.1 什么是函数293

19.1.2 函数的分类294

19.2 函数的定义294

19.3 函数的返回值及类型297

19.3.1 函数的返回值297

19.3.2 函数的类型298

19.4 函数的参数及传递方式300

19.4.1 函数的参数301

19.4.2 函数参数的传递方式302

19.5 函数的调用303

19.5.1 函数调用方式304

19.5.2 函数的声明305

19.5.3 函数的嵌套调用307

19.5.4 函数的递归调用308

19.6 内部函数和外部函数312

19.6.1 内部函数312

19.6.2 外部函数313

19.7 main()函数314

19.8 综合应用——用截弦法求方程的根315

19.9 高手点拨316

19.10 实战练习318

第20章 函数中的变量320

20.1 局部变量与全局变量320

20.1.1 局部变量320

20.1.2 全局变量321

20.2 变量的存储类别323

20.2.1 自动类型(auto)324

20.2.2 寄存器类型(register)324

20.2.3 静态类型(static)325

20.2.4 外部类型(extern)327

20.3 综合应用——日期判断328

20.4 高手点拨329

20.5 实战练习330

第21章 文件332

21.1 文件概述332

21.1.1 文件类型332

21.1.2 C如何操作文件——文件指针332

21.1.3 文件缓冲区333

21.2 文件的打开和关闭333

21.2.1 文件的打开——fopen()函数333

21.2.2 文件的关闭——fclose()函数334

21.2.3 文件结束检测——feof()函数335

21.3 文件的顺序读写335

21.3.1 文本文件中字符的输入/输出335

21.3.2 文本文件中字符串的输入/输出337

21.3.3 格式化输入/输出339

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

21.4 文件的随机读写342

21.5 综合应用——文件操作343

21.6 高手点拨345

21.7 实战练习346

第22章 库函数概览348

22.1 标准C库函数348

22.2 数学函数348

22.2.1 绝对值函数348

22.2.2 幂函数和开平方函数349

22.2.3 指数函数和对数函数350

22.2.4 三角函数350

22.2.5 取整函数和取余函数350

22.3 字符串处理函数351

22.3.1 字符串长度函数351

22.3.2 字符串连接函数352

22.3.3 字符串复制函数353

22.3.4 字符串比较函数353

22.3.5 字符串查找函数354

22.3.6 字符串填充函数355

22.4 字符处理函数356

22.4.1 字符类型判断函数356

22.4.2 字符大小写转换函数357

22.5 转换和存储管理函数358

22.5.1 转换函数358

22.5.2 存储管理函数359

22.6 随机函数360

22.6.1 初识随机函数360

22.6.2 使用随机函数361

22.7 日期和时间处理函数362

22.8 诊断函数363

22.9 命令行参数364

22.10 其他函数365

22.10.1 exit()函数366

22.10.2 qsort()函数366

22.11 综合应用——猜数字游戏367

22.12 高手点拨369

22.13 实战练习370

第23章 合理利用内存——位运算372

23.1 二进制数372

23.1.1 二进制372

23.1.2 无符号数和有符号数372

23.2 位运算符372

23.2.1 按位与运算符373

23.2.2 按位或运算符373

23.2.3 按位异或运算符374

23.2.4 按位取反运算符375

23.2.5 左移运算符375

23.2.6 右移运算符375

23.2.7 位运算赋值运算符376

23.2.8 位运算应用377

23.3 位域379

23.4 综合应用——数制转换380

23.5 高手点拨381

23.6 实战练习382

第24章 结构体和联合体384

24.1 结构体384

24.1.1 结构体类型384

24.1.2 定义结构体变量385

24.1.3 初始化结构体变量386

24.1.4 结构体变量的引用387

24.2 结构体数组388

24.2.1 定义结构体数组388

24.2.2 初始化结构体数组390

24.2.3 结构体数组元素的引用390

24.3 结构体与函数392

24.3.1 结构体作为函数的参数392

24.3.2 结构体作为函数的返回值394

24.4 联合体395

24.4.1 联合体类型395

24.4.2 联合体变量的定义396

24.4.3 联合体变量的初始化397

24.4.4 联合体变量的引用399

24.5 结构体和联合体的区别与联系400

24.6 综合应用——计算学生成绩400

24.7 高手点拨402

24.8 实战练习403

第25章 数据管理者——数据结构406

25.1 数据结构概述406

25.2 线性表406

25.2.1 顺序表407

25.2.2 单链表410

25.3 栈416

25.3.1 栈的基本运算416

25.3.2 顺序栈的类型定义417

25.3.3 链式栈的类型定义417

25.4 队列417

25.4.1 队列的基本运算418

25.4.2 顺序队列类型定义418

25.4.3 链队列类型定义419

25.5 二叉树419

25.6 查找420

25.6.1 顺序查找420

25.6.2 折半查找422

25.7 排序423

25.7.1 冒泡排序法424

25.7.2 选择排序法425

25.7.3 插入排序法426

25.8 综合应用——链表的反转427

25.9 高手点拨430

25.10 实战练习439

第Ⅳ篇 高级应用443

第26章 内存的快捷方式——指针443

26.1 指针概述443

26.1.1 指针的类型443

26.1.2 指针所指向的类型443

26.1.3 指针的值443

26.1.4 指针所占内存443

26.2 指针的算术运算444

26.2.1 指针与整数的运算444

26.2.2 指针与指针的运算445

26.3 运算符&和446

26.4 指针表达式447

26.5 综合应用——使用指针进行排序448

26.6 高手点拨449

26.7 实战练习450

第27章 指针与数组452

27.1 数组指针452

27.2 数组指针作为函数参数452

27.3 指针与字符数组453

27.4 指针数组与指针的指针454

27.5 综合应用——报数游戏456

27.6 高手点拨457

27.7 实战练习457

第28章 指针与函数460

28.1 函数指针460

28.1.1 函数指针的定义460

28.1.2 函数指针的赋值461

28.1.3 通过函数指针调用函数461

28.2 指针函数462

28.3 指向函数的指针作为函数参数463

28.4 综合应用——日期的输出465

28.5 高手点拨466

28.6 实战练习466

第29章 指针与字符串468

29.1 字符串指针468

29.1.1 创建字符串468

29.1.2 处理字符串469

29.1.3 输出字符串472

29.2 字符串指针作为函数参数472

29.3 字符指针变量与字符数组的区别474

29.4 综合应用——“回文”问题474

29.5 实战练习476

第30章 指针与结构体478

30.1 结构体指针478

30.1.1 定义结构体指针478

30.1.2 初始化结构体指针478

30.1.3 使用指针访问成员478

30.1.4 给结构体指针赋值479

30.2 指向结构体变量的指针480

30.3 指向结构体数组的指针481

30.4 综合应用——创建简单链表482

30.5 高手点拨484

30.6 实战练习484

第31章 指针的高级应用与技巧486

31.1 指向指针的指针486

31.2 void操作487

31.3 内存操作489

31.4 指针的传递491

31.5 综合应用——数值的降序排列492

31.6 高手点拨493

31.7 实战练习494

第Ⅴ篇 趣味题解497

第32章 K-均值聚类算法497

32.1 问题描述497

32.2 问题分析及实现497

32.2.1 问题分析497

32.2.2 问题实现497

32.2.3 程序运行499

32.3 开发过程常见问题及解决500

第33章 哥德巴赫猜想502

33.1 问题描述502

33.2 问题分析及实现502

33.2.1 问题分析502

33.2.2 问题实现502

33.2.3 程序运行504

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

第34章 猴子选大王游戏506

34.1 问题描述506

34.2 问题分析及实现506

34.2.1 问题分析506

34.2.2 问题实现506

34.2.3 程序运行507

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

第35章 迷宫求解510

35.1 问题描述510

35.2 问题分析及实现510

35.2.1 问题分析510

35.2.2 问题实现510

35.2.3 程序运行513

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

第36章 背包问题求解516

36.1 问题描述516

36.2 问题分析及实现516

36.2.1 问题分析516

36.2.2 问题实现516

36.2.3 程序运行518

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

第37章 火车车厢重排520

37.1 问题描述520

37.2 问题分析及实现520

37.2.1 问题分析520

37.2.2 问题实现520

37.2.3 程序运行522

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

第38章 哈夫曼编码的实现524

38.1 问题描述524

38.2 问题分析及实现524

38.2.1 问题分析524

38.2.2 问题实现524

38.2.3 程序运行526

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

第39章 八皇后问题的实现528

39.1 问题描述528

39.2 问题分析及实现528

39.2.1 问题分析528

39.2.2 问题实现528

39.2.3 程序运行530

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

第40章 商人过河游戏532

40.1 问题描述532

40.2 问题分析及实现532

40.2.1 问题分析532

40.2.2 问题实现532

40.2.3 程序运行535

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

第41章 K阶斐波那契序列的实现538

41.1 问题描述538

41.2 问题分析及实现538

41.2.1 问题分析538

41.2.2 问题实现538

41.2.3 程序运行539

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

第42章 最短路径的实现542

42.1 问题描述542

42.2 问题分析及实现542

42.2.1 问题分析542

42.2.2 问题实现542

42.2.3 程序运行543

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

热门推荐