C语言从入门到精通(第4版)pdf下载

C语言从入门到精通(第4版)百度网盘pdf下载

作者:
简介:C语言从入门到精通(第4版)
出版社:
出版时间:2019-01
pdf下载价格:0.00¥

免费下载


书籍下载


内容介绍

产品特色

编辑推荐

“软件开发视频大讲堂”丛书是清华社计算机专业基础类零售图书畅销的品牌之一。
(1)丛书累计销售200多万册,深受广大开发者喜爱。
(2)4本荣获“全行业优畅销书”奖,1本荣获清华社“专业畅销书”一等奖。
(3)绝大多数品种在“全国计算机零售图书排行榜”同品种排行中名列前茅。
(4)实用、易懂、资源丰富,被 数百所高校选为专业课教材。
本书推荐:
1. 循序渐进,实战讲述:基础知识→核心技术→高级应用→项目实战,符合认知规律。
2. 168个应用实例+32个实践练习+126集高清微视频,边学边练,在实践中提升技能。
3. 超值赠送海量开发资源库资源,助力你夯实基础,精准,有效,速练,练就转岗就业不败之力。
(1)实例资源库+源码资源库:881个实例及源码详细分析,多练实例,多读源码,是快速学习之道。
(2)模块资源库:15个经典模块开发过程完整展现,拿来改改就能用。
(3)项目资源库:15个企业项目开发过程的完整展现,帮助你反复练习,触类旁通。
(4)面试资源库:371个企业面试真题及面试技巧,帮你进行职业规划,转岗就业不用愁。
(5)测试题库系统:616道能力测试题目,由易及难,快速判断自己的真实水平,熟能生巧。
4. 在线解答,高效学习。
?(1)在线答疑QQ及技术支持网站。
?(2)不定期进行在线直播课程。

内容简介

《C语言从入门到精通(第4版)》从初学者的角度出发,以通俗易懂的语言,丰富多彩的实例,详细介绍了使用C语言进行程序开发需要掌握的各方面知识。全书共分为17章,包括C语言概述、算法、数据类型、运算符与表达式、常用的数据输入/输出函数、选择结构程序设计、循环控制、数组、函数、指针、结构体和共用体、位运算、预处理、文件、存储管理、网络套接字编程和学生成绩管理系统。

作者简介

明日科技,是一个拥有软件开发和项目实施方面的资深专家和学习型技术团队,利用积累的专业知识和经验,已开发出版了“从入门到精通”“软件开发实战1200例”“软件开发实战宝典”“软件项目开发全程实录”等系列丛书,是国内畅销的编程图书品牌。

目录

篇 基础知识

章 C语言概述2

视频讲解:33分钟

1.1C语言的发展史3

1.1.1程序语言简述3

1.1.2C语言的历史3

1.2C语言的特点4

1.3一个简单的C程序5

1.4一个完整的C程序7

1.5C语言程序的格式11

1.6开发环境12

1.6.1Visual C6.012

1.6.2Visual Studio201719

1.7小结25

第2章 算法26

视频讲解:22分钟

2.1算法的基本概念27

2.1.1算法的特性27

2.1.2算法的优劣28

2.2算法的描述28

2.2.1自然语言29

2.2.2流程图29

2.2.3N-S流程图32

2.3小结34

第3章 数据类型35

视频讲解:39分钟

3.1编程规范36

3.2关键字37

3.3标识符37

3.4数据类型38

3.5常量39

3.5.1整型常量40

3.5.2实型常量42

3.5.3字符型常量43

3.5.4转义字符46

3.5.5符号常量46

3.6变量47

3.6.1整型变量47

3.6.2实型变量50

3.6.3字符型变量52

3.7变量的存储类别53

3.7.1静态存储与动态存储54

3.7.2auto变量54

3.7.3static变量55

3.7.4register变量55

3.7.5extern变量56

3.8混合运算57

3.9小结58

3.10实践与练习58

第4章 运算符与表达式59

视频讲解:31分钟

4.1表达式60

4.2赋值运算符与赋值表达式62

4.2.1变量赋初值62

4.2.2自动类型转换64

4.2.3强制类型转换64

4.3算术运算符与算术表达式65

4.3.1算术运算符65

4.3.2算术表达式66

4.3.3优先级与结合性67

4.3.4自增/自减运算符69

4.4关系运算符与关系表达式71

4.4.1关系运算符71

4.4.2关系表达式71

4.4.3优先级与结合性72

4.5逻辑运算符与逻辑表达式73

4.5.1逻辑运算符74

4.5.2逻辑表达式74

4.5.3优先级与结合性74

4.6位逻辑运算符与位逻辑表达式75

4.6.1位逻辑运算符76

4.6.2位逻辑表达式76

4.7逗号运算符与逗号表达式76

4.8复合赋值运算符78

4.9小结79

4.10实践与练习80

第5章 常用的数据输入/输出函数81

视频讲解:40分钟

5.1语句82

5.2字符数据输入/输出82

5.2.1字符数据输出82

5.2.2字符数据输入83

5.3字符串输入/输出85

5.3.1字符串输出函数85

5.3.2字符串输入函数86

5.4格式输出函数87

5.5格式输入函数90

5.6顺序程序设计应用94

5.7小结96

5.8实践与练习96

第6章 选择结构程序设计97

视频讲解:39分钟

6.1if语句98

6.2if语句的基本形式98

6.2.1if语句形式98

6.2.2if…else语句形式101

6.2.3elseif语句形式105

6.3if的嵌套形式108

6.4条件运算符111

6.5switch语句112

6.5.1switch语句的基本形式113

6.5.2多路开关模式的switch语句116

6.6if…else语句和switch语句的区别118

6.7小结120

6.8实践与练习120

第7章 循环控制121

视频讲解:43分钟

7.1循环语句122

7.2while语句122

7.3do…while语句125

7.4for语句127

7.4.1for语句使用127

7.4.2for循环的变体130

7.4.3for语句中的逗号应用132

7.53种循环语句的比较134

7.6循环嵌套134

7.6.1循环嵌套的结构134

7.6.2循环嵌套实例135

7.7转移语句137

7.7.1goto语句137

7.7.2break语句139

7.7.3continue语句140

7.8小结141

7.9实践与练习141

第2篇 核心技术

第8章 数组144

视频讲解:1小时7分钟

8.1一维数组145

8.1.1一维数组的定义和引用145

8.1.2一维数组初始化147

8.1.3一维数组的应用149

8.2二维数组150

8.2.1二维数组的定义和引用150

8.2.2二维数组初始化151

8.2.3二维数组的应用154

8.3字符数组155

8.3.1字符数组的定义和引用155

8.3.2字符数组初始化156

8.3.3字符数组的结束标志158

8.3.4字符数组的输入和输出159

8.3.5字符数组的应用160

8.4多维数组161

8.5数组的排序算法161

8.5.1选择法排序162

8.5.2冒泡法排序164

8.5.3交换法排序165

8.5.4插入法排序168

8.5.5折半法排序170

8.5.6排序算法的比较172

8.6字符串处理函数173

8.6.1字符串复制173

8.6.2字符串连接174

8.6.3字符串比较176

8.6.4字符串大小写转换177

8.6.5获得字符串长度179

8.7数组应用180

8.7.1反转输出字符串180

8.7.2输出系统日期和时间181

8.7.3字符串的加密和解密183

8.8小结185

8.9实践与练习185

第9章 函数186

视频讲解:55分钟

9.1函数概述187

9.2函数的定义189

9.2.1函数定义的形式189

9.2.2定义与声明191

9.3返回语句193

9.3.1从函数返回193

9.3.2返回值194

9.4函数参数196

9.4.1形式参数与实际参数196

9.4.2数组作函数参数198

9.4.3main函数的参数204

9.5函数的调用205

9.5.1函数的调用方式205

9.5.2嵌套调用208

9.5.3递归调用210

9.6内部函数和外部函数212

9.6.1内部函数213

9.6.2外部函数214

9.7局部变量和全局变量215

9.7.1局部变量215

9.7.2全局变量218

9.8函数应用220

9.9小结226

9.10实践与练习227

0章 指针228

视频讲解:1小时2分钟

10.1指针相关概念229

10.1.1地址与指针229

10.1.2变量与指针229

10.1.3指针变量230

10.1.4指针自加自减运算234

10.2数组与指针236

10.2.1一维数组与指针236

10.2.2二维数组与指针240

10.2.3字符串与指针243

10.2.4字符串数组245

10.3指向指针的指针246

10.4指针变量作函数参数249

10.5返回指针值的函数258

10.6指针数组作main函数的参数260

10.7小结262

10.8实践与练习262

第3篇 不错应用

1章 结构体和共用体264

视频讲解:40分钟

11.1结构体265

11.1.1结构体类型的概念265

11.1.2结构体变量的定义266

11.1.3结构体变量的引用268

11.1.4结构体类型的初始化270

11.2结构体数组272

11.2.1定义结构体数组272

11.2.2初始化结构体数组274

11.3结构体指针276

11.3.1指向结构体变量的指针276

11.3.2指向结构体数组的指针279

11.3.3结构体作为函数参数281

11.4包含结构的结构283

11.5链表285

11.5.1链表概述285

11.5.2创建动态链表286

11.5.3输出链表289

11.6链表相关操作291

11.6.1链表的插入操作291

11.6.2链表的删除操作293

11.7共用体297

11.7.1共用体的概念297

11.7.2共用体变量的引用298

11.7.3共用体变量的初始化299

11.7.4共用体类型的数据特点300

11.8枚举类型300

11.9小结301

11.10实践与练习302

2章 位运算303

视频讲解:36分钟

12.1位与字节304

12.2位运算操作符304

12.2.1“与”运算符304

12.2.2“或”运算符306

12.2.3“取反”运算符307

12.2.4“异或”运算符308

12.2.5“左移”运算符310

12.2.6“右移”运算符311

12.3循环移位312

12.4位段315

12.4.1位段的概念与定义315

12.4.2位段相关说明316

12.5小结318

12.6实践与练习318

3章 预处理319

视频讲解:40分钟

13.1宏定义320

13.1.1不带参数的宏定义320

13.1.2带参数的宏定义321

13.2#include指令323

13.3条件编译325

13.3.1#if命令325

13.3.2#ifdef及#ifndef命令328

13.3.3#undef命令329

13.3.4#line命令330

13.3.5#pragma命令330

13.4小结331

13.5实践与练习331

4章 文件332

视频讲解:58分钟

14.1文件概述333

14.2文件基本操作333

14.2.1文件指针333

14.2.2文件的打开334

14.2.3文件的关闭335

14.3文件的读写335

14.3.1fputc函数335

14.3.2fgetc函数336

14.3.3fputs函数337

14.3.4fgets函数338

14.3.5fprintf函数339

14.3.6fscanf函数340

14.3.7fread和fwrite函数341

14.4文件的定位343

14.4.1fseek函数343

14.4.2rewind函数345

14.4.3ftell函数346

14.5小结349

14.6实践与练习349

5章 存储管理350

视频讲解:22分钟

15.1内存组织方式351

15.1.1内存的组织方式351

15.1.2堆与栈351

15.2动态管理353

15.2.1malloc函数353

15.2.2calloc函数354

15.2.3realloc函数355

15.2.4free函数356

15.3内存丢失357

15.4小结358

15.5实践与练习358

6章 网络套接字编程359

视频讲解:39分钟

16.1计算机网络基础360

16.1.1IP地址360

16.1.2OSI七层参考模型360

16.1.3地址解析361

16.1.4域名系统362

16.1.5TCP/IP协议362

16.1.6端口364

16.1.7套接字的引入364

16.1.8网络字节顺序364

16.2套接字基础365

16.2.1套接字概述365

16.2.2TCP的套接字的socket编程365

16.2.3UDP的套接字的socket编程366

16.3套接字函数367

16.3.1套接字函数介绍367

16.3.2基于TCP的网络聊天程序372

16.4小结378

16.5实践与练习378

第4篇 项目实战

7章 学生成绩管理系统380

视频讲解:40分钟

17.1需求分析381

17.2系统设计381

17.3功能设计382

17.3.1功能选择界面382

17.3.2录入学生成绩信息383

17.3.3查询学生成绩信息386

17.3.4删除学生成绩信息387

17.3.5修改学生成绩信息388

17.3.6插入学生成绩信息390

17.3.7统计学生人数392

17.4小结392

附录ASCII表393

前言/序言

前 言
丛书说明:“软件开发视频大讲堂”丛书(第1版)于2008年8月出版,因其编写细腻,易学实用,配备海量学习资源和全程视频等,在软件开发类图书市场上产生了很大反响,绝大部分品种在全国软件开发零售图书排行榜中名列前茅,2009年多个品种被评为“全国优秀畅销书”。
“软件开发视频大讲堂”丛书(第2版)于2010年8月出版,第3版于2012年8月出版,第4版于2016年10月出版。十年锤炼,打造经典。丛书迄今累计重印426次,销售200多万册。不仅深受广大程序员的喜爱,还被百余所高校选为计算机、软件等相关专业的教学参考用书。
“软件开发视频大讲堂”丛书(第5版)在继承前4版所有优点的基础上,将开发环境和工具全部更新为最新的JDK10和Eclipse最新版本,并且全部重新录制了视频,结合目前市场需要,进一步对丛书品种进行了完善,对相关内容进行了更新优化,使之更适合读者学习,为了方便教学,还提供了教学课件PPT。
C语言是Combined Language(组合语言)的简称。作为一种计算机设计语言,它同时具有高级语言和汇编语言两者的特点,因此受到广大编程人员的喜爱。C语言的应用非常广泛,既可以编写系统程序,也可以编写应用程序,还可以应用到单片机及嵌入式系统的开发中。这就是为什么大多数开发人员初学编程都选择C语言的原因。
本书内容
本书提供了从入门到编程高手所必备的各类知识,共分4篇。
第1篇:基础知识。本篇讲解了C语言基础知识,只有具备扎实的基础知识才能更快地掌握高级的技术内容。通过对C语言的历史和特性、C语言的开发环境、算法、数据类型、运算符与表达式、常用的数据输入/输出函数、选择结构程序设计和循环控制等内容的介绍,结合流程图和实例,并通过视频的指导讲解,可帮助读者为以后编程奠定坚实的基础。
第2篇:核心技术。本篇介绍了C语言的数组、函数和指针这三大部分内容,并将前面所学的基础内容融入其中,是更高级的程序设计内容。读者学习完这一部分,能够编写一些简单的C语言应用程序。
第3篇:高级应用。本篇介绍了结构体和共用体、位运算、预处理、文件、存储管理和网络套接字编程的内容。读者学习完这一部分,能够设计出较复杂的程序,并且涉及的范围更广。
第4篇:项目实战。本篇通过一个大型的学生成绩管理系统,运用软件工程的设计思想,介绍如何进行软件项目的开发。书中按照“需求分析→系统设计→功能设计”的步骤,带领读者一步一步地亲身体验项目开发的全过程。
本书特点
由浅入深,循序渐进。本书以初、中级程序员为对象,先从C语言基础学起,再学习C语言的程序结构,然后学习C语言的高级应用,最后学习开发一个完整项目。讲解详尽,层次清晰,并且在叙述过程中会给出相应的实例以便于读者理解所讲解的知识。在讲解实例时分步骤进行,使读者在阅读时一目了然,从而快速把握书中内容。
微课视频,讲解详尽。为便于读者直观感受程序开发的全过程,书中大部分章节都配备了教学微视频,使用手机扫描正文小节标题一侧的二维码,即可观看学习,能快速引导初学者入门,感受编程的快乐和成就感,进一步增强学习的信心。
实例典型,轻松易学。通过实例学习是最好的学习方式,本书通过“一个知识点、一个例子、一个结果、一段评析、一个综合应用”的模式,透彻、详尽地讲述了实际开发中所需的各类知识。另外,为了便于读者阅读程序代码,快速学习编程技能,书中几乎为每行关键代码都提供了注释。
精彩栏目,贴心提醒。本书根据需要在各章安排了很多“注意”“说明”“技巧”等小栏目,读者可以在学习过程中更轻松地理解相关知识点及概念,更快地掌握个别技术的应用技巧。
应用实践,随时练习。书中几乎每章都提供了“实践与练习”,读者通过对问题的解答可重新回顾、熟悉所学的知识,举一反三,为进一步学习做好充分的准备。
读者对象
初学编程的自学者;编程爱好者;大中专院校的老师和学生;相关培训机构的老师和学员;做毕业设计的学生;初、中级程序开发人员;程序测试及维护人员;参加实习的“菜鸟”级程序员
读者服务
学习本书时,请先扫描封底的权限二维码(需要刮开涂层)获取学习权限,然后即可免费学习书中的所有线上线下资源。本书所附赠的各类学习资源,读者可登录清华大学出版社网站(www.tup.com.cn),在对应图书页面下获取其下载方式。也可扫描图书封底的“文泉云盘”二维码,获取其下载方式。
为了方便解决本书疑难问题,读者朋友可加企业QQ,也可以登录明日科技官方网站留言,我们将竭诚为您服务。