图书介绍
C语言从入门到精通 第2版PDF|Epub|txt|kindle电子书版本网盘下载
- 著
- 出版社:
- ISBN:
- 出版时间:2016
- 标注页数:0页
- 文件大小:225MB
- 文件页数:425页
- 主题词:
PDF下载
下载说明
C语言从入门到精通 第2版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 C语言的产生3
1.2 为什么要选择C语言4
1.2.1 选择C语言的好处4
1.2.2 C语言的特点5
1.2.3 如何学好C语言6
1.3 第一个C语言程序7
1.4 小结8
习题9
第2章 C程序开发步骤及开发环境10
2.1 C程序的开发步骤10
2.2 Visual Studio 2008开发环境介绍11
2.2.1 使用Viisual Studio 2008新建项目11
2.2.2 在Viisual Studio 2008的项目中新建程序文件13
2.2.3 使用Viisual Studio 2008开发C语言程序14
2.3 小结16
习题16
第3章 基本数据类型17
3.1 写一个简单的C语言程序17
3.2 C语言中的数据类型19
3.3 变量与常量21
3.3.1 变量21
3.3.2 常量23
3.4 整型变量24
3.4.1 整型变量的定义24
3.4.2 整型变量占用的字节数与表示范围25
3.4.3 整型变量的存储26
3.4.4 整型变量的赋值27
3.4.5 一个简单的C程序——输出整型变量的值27
3.5 实型变量28
3.5.1 实型变量的定义与赋值28
3.5.2 实型变量的表示范围28
3.5.3 一个简单的C程序——输出实型变量的值28
3.6 字符型变量29
3.6.1 字符型变量的定义与赋值29
3.6.2 字符型数据的存储形式29
3.6.3 字符数据与字符串数据的区别31
3.7 小结31
习题32
第4章 运算符与表达式33
4.1 常见运算符初识33
4.2 算术运算符与算术表达式34
4.2.1 +、-、*、/、%——双目运算符34
4.2.2 算术表达式34
4.2.3 多种类型的数据混合运算——自动类型转换35
4.2.4 强制类型转换37
4.2.5 ++与-、+与-——单目运算符37
4.3 赋值运算符与赋值表达式39
4.3.1 直接赋值运算符与直接赋值表达式39
4.3.2 赋值表达式中的类型转换40
4.3.3 复合算术赋值运算符与表达式45
4.4 关系运算符与关系表达式46
4.4.1 关系运算符46
4.4.2 关系表达式46
4.5 逻辑运算符与逻辑表达式48
4.5.1 逻辑运算符48
4.5.2 逻辑表达式48
4.6 逗号运算符与逗号表达式50
4.6.1 逗号运算符50
4.6.2 逗号表达式50
4.6.3 逗号运算符应用举例51
4.7 小结52
习题52
第5章 结构化程序开发(一)54
5.1 算法及描述方法54
5.1.1 什么是算法54
5.1.2 伪码55
5.1.3 流程图56
5.2 控制结构57
5.2.1 什么是语句57
5.2.2 语句的分类57
5.2.3 顺序结构程序设计59
5.2.4 选择结构程序设计——if选择结构64
5.2.5 选择结构程序设计——switch选择结构72
5.2.6 条件运算符与条件表达式77
5.2.7 选择结构程序设计应用举例79
5.3 小结82
习题83
第6章 结构化程序设计(二)86
6.1 为什么要有循环结构86
6.1.1 如何重复输出100以内的整数86
6.1.2 如何求连续的n个自然数的和87
6.2 goto语句88
6.2.1 goto语句——无条件转移语句88
6.2.2 goto语句构成的循环语句——向前跳转88
6.3 while循环语句90
6.4 do-while循环语句92
6.5 for循环语句94
6.6 break语句和continue语句98
6.6.1 为什么要有break语句98
6.6.2 break语句98
6.6.3 为什么要有continue语句100
6.6.4 continue语句100
6.7 循环结构的嵌套102
6.8 循环结构程序设计应用举例106
6.9 小结110
习题110
第7章 数组114
7.1 为什么引入数组114
7.1.1 多变量的解决之路——引入数组114
7.1.2 认识数组115
7.2 一维数组116
7.2.1 声明一维数组116
7.2.2 引用一维数组117
7.2.3 初始化一维数组的几种方式118
7.2.4 一维数组应用举例118
7.3 二维数组124
7.3.1 为什么引入二维数组——维度的出现124
7.3.2 声明二维数组127
7.3.3 引用二维数组127
7.3.4 初始化二维数组的几种方式128
7.3.5 二维数组应用举例130
7.4 字符数组与字符串134
7.4.1 声明字符数组与初始化134
7.4.2 引用字符数组135
7.4.3 字符数组与字符串135
7.4.4 字符数组的输入与输出136
7.4.5 字符串的相关函数137
7.4.6 字符串应用举例141
7.5 小结145
习题145
第8章 函数150
8.1 函数初识与函数的分类150
8.1.1 为什么要有函数150
8.1.2 函数的分类151
8.2 函数的定义152
8.2.1 无参函数的定义152
8.2.2 有参函数的定义152
8.2.3 有参函数传统的定义方式153
8.3 函数的参数与函数返回值153
8.3.1 实际参数与形式参数154
8.3.2 函数返回值155
8.4 函数的调用156
8.4.1 函数的一般调用157
8.4.2 函数原型159
8.4.3 函数的嵌套调用161
8.5 函数的递归调用163
8.5.1 递归调用的定义164
8.5.2 递归调用应用举例164
8.6 数组作为函数的参数167
8.6.1 数组元素作为函数参数167
8.6.2 数组名作为函数参数169
8.6.3 多维数组名作为函数参数172
8.7 变量的作用域173
8.7.1 局部变量173
8.7.2 全局变量175
8.8 变量的存储类别178
8.8.1 自动变量178
8.8.2 静态变量178
8.8.3 寄存器变量180
8.8.4 外部变量180
8.9 内部函数与外部函数183
8.9.1 内部函数183
8.9.2 外部函数183
8.10 小结184
习题185
第9章 指针190
9.1 地址和指针190
9.1.1 什么是地址190
9.1.2 什么是指针——间接存取191
9.2 指针与变量192
9.2.1 定义指针变量192
9.2.2 引用指针变量193
9.2.3 指针变量作为函数参数196
9.3 指针与数组198
9.3.1 指向数组元素的指针与指向数组的指针198
9.3.2 指向多维数组的指针变量201
9.3.3 数组名(指针)作为函数参数205
9.3.4 指针数组212
9.3.5 二级指针213
9.4 指针与字符串214
9.4.1 字符串指针214
9.4.2 字符串指针作为函数参数215
9.4.3 字符指针数组217
9.4.4 指针数组作为main的参数218
9.5 指针与函数220
9.5.1 函数指针——指向函数的指针220
9.5.2 函数指针作为函数参数221
9.5.3 指针函数——返回指针值的函数224
9.5.4 void指针225
9.6 指针与const226
9.6.1 常量指针——指向常量的指针226
9.6.2 指针常量——指针不可以改变227
9.6.3 常量指针常量——指向常量的指针常量227
9.7 小结228
习题229
第10章 预处理命令233
10.1 宏定义——#define233
10.1.1 不带参数的宏定义233
10.1.2 带参数的宏定义235
10.1.3 条件编译命令中的运算符——#和##237
10.2 文件包含命令——#include238
10.2.1 文件包含命令的两种方式238
10.2.2 文件包含命令应用举例239
10.3 条件编译命令240
10.3.1 条件编译命令——#ifdef240
10.3.2 条件编译命令——#ifndef242
10.3.3 条件编译命令——#if242
10.4 小结243
习题243
第11章 结构体与联合体246
11.1 结构体246
11.1.1 为什么要有结构体246
11.1.2 定义结构体类型247
11.1.3 定义结构体变量248
11.1.4 引用结构体变量249
11.1.5 初始化结构体变量250
11.2 结构体数组252
11.2.1 定义结构体数组252
11.2.2 初始化结构体数组253
11.2.3 结构体数组应用举例254
11.3 指针与结构体256
11.3.1 指向结构体变量的指针257
11.3.2 指向结构体数组的指针258
11.3.3 结构体变量作为函数的参数260
11.3.4 指向结构体变量的指针作为函数的参数261
11.4 用typedef定义类型262
11.4.1 使用typedef定义类型262
11.4.2 typedef应用举例264
11.5 联合体265
11.5.1 定义联合体类型及变量265
11.5.2 引用联合体266
11.5.3 使用联合体应注意的问题266
11.5.4 联合体的应用举例267
11.6 枚举类型269
11.6.1 定义枚举类型及变量269
11.6.2 使用枚举类型的一些说明270
11.6.3 枚举类型应用举例270
11.7 小结272
习题273
第12章 链表276
12.1 链表的相关概念276
12.1.1 为什么要有链表——节省内存单元,不用事先定义空间大小276
12.1.2 什么是链表277
12.1.3 动态内存分配278
12.2 链表的操作279
12.2.1 创建链表279
12.2.2 输出链表281
12.2.3 链表的查找操作282
12.2.4 链表的插入操作282
12.2.5 链表的删除操作284
12.3 链表应用举例286
12.3.1 直接插入排序——使用链表实现286
12.3.2 一元多项式的相加292
12.4 小结297
习题298
第13章 文件301
13.1 文件的相关概念301
13.1.1 为什么要有文件301
13.1.2 文件的分类302
13.1.3 文件类型指针302
13.2 打开文件与关闭文件303
13.2.1 打开文件303
13.2.2 关闭文件304
13.3 文件的读取与写入304
13.3.1 fgetc函数与fputc函数304
13.3.2 fread函数与fwrite函数306
13.3.3 fscanf函数与fprintf函数——格式化读写函数309
13.3.4 fgets函数与fputs函数——字符串读写函数312
13.4 文件的定位312
13.4.1 rewind函数——重置文件指针312
13.4.2 fseek函数——定位文件指针313
13.4.3 ftell函数——得到文件指针位置315
13.5 出错检测315
13.5.1 ferror函数315
13.5.2 clearerr函数316
13.6 小结316
习题316
第14章 常用算法319
14.1 算法基础319
14.1.1 什么是算法319
14.1.2 算法的特性321
14.1.3 算法设计的目标321
14.1.4 算法的时间复杂度和空间复杂度322
14.2 迭代与递推323
14.2.1 算法思想323
14.2.2 求一个数的平方根323
14.2.3 角谷猜想324
14.2.4 母牛生小牛问题325
14.2.5 分西瓜326
14.3 穷举法327
14.3.1 算法思想327
14.3.2 填数游戏327
14.3.3 背包问题328
14.3.4 五猴分桃330
14.4 递归331
14.4.1 算法思想332
14.4.2 数制转换332
14.4.3 求n个数中的最大者333
14.4.4 字符串颠倒334
14.5 分治335
14.5.1 算法思想335
14.5.2 求n个数的最大值和最小值336
14.5.3 赛程安排问题338
14.6 贪心算法340
14.6.1 算法思想340
14.6.2 加油站问题340
14.6.3 找零钱问题342
14.6.4 0-1背包问题343
14.7 小结347
习题347
第15章 网络编程基础349
15.1 网络相关概念349
15.1.1 什么是计算机网络349
15.1.2 网络协议350
15.1.3 端口350
15.1.4 TCP/IP参考模型351
15.1.5 套接字352
15.2 基于TCP的简单网络程序352
15.2.1 基于TCP的socket编程352
15.2.2 服务器端的程序实现354
15.2.3 客户端程序的实现359
15.3 基于UDP的简单网络聊天程序361
15.3.1 基于UDP的socket编程362
15.3.2 服务器端程序的实现363
15.3.3 客户端程序的实现364
15.4 小结367
第16章 综合案例:图书管理系统368
16.1 系统分析与设计368
16.2 数据描述与存储369
16.3 详细设计与代码实现370
16.3.1 主函数模块370
16.3.2 增加图书信息模块373
16.3.3 修改图书信息模块377
16.3.4 删除图书信息模块381
16.3.5 借阅图书和归还图书模块382
16.3.6 文件读写模块385
16.4 程序调试与系统测试386
16.5 小结388
第17章 常见错误与程序调试390
17.1 为什么要调试程序390
17.2 常见错误391
17.2.1 错误分类391
17.2.2 常见错误举例392
17.3 程序调试395
17.3.1 如何利用Visual Studio 2008开发环境调试程序395
17.3.2 程序调试应用举例401
17.4 小结410
参考文献412