图书介绍
C语言程序设计 第2版PDF|Epub|txt|kindle电子书版本网盘下载
![C语言程序设计 第2版](https://www.shukui.net/cover/60/35106200.jpg)
- 苏小红,王宇颖,孙志岗等编著 著
- 出版社: 北京:高等教育出版社
- ISBN:9787040377040
- 出版时间:2013
- 标注页数:422页
- 文件大小:172MB
- 文件页数:438页
- 主题词:C语言-程序设计-高等学校-教材
PDF下载
下载说明
C语言程序设计 第2版PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
第1章 为什么要学C语言1
1.1引言1
1.2游戏、黑客和C语言1
1.3 C语言,不老的传说4
1.4 C语言的爱与恨5
1.5 C语言教给我们的事5
1.6什么是“编程”8
1.7本章小结9
习题19
第2章 C数据类型10
2.1常量与变量10
2.1.1常量10
2.1.2变量12
2.2简单的屏幕输出14
2.3数据类型15
2.4如何计算变量或数据类型所占内存空间的大小17
2.5变量的赋值和赋值运算符19
2.6本章扩充内容20
2.7本章知识点小结23
2.8本章常见错误小结24
习题224
本章实验题24
第3章 简单的算术运算和表达式25
3.1 C运算符和表达式25
3.1.1算术运算符和表达式25
3.1.2复合的赋值运算符28
3.1.3增1和减1运算符29
3.2宏常量与宏替换31
3.3 const常量33
3.4自动类型转换与强制类型转换运算符34
3.5常用的标准数学函数37
3.6本章知识点小结39
3.7本章常见错误小结40
习题340
本章实验题41
第4章 键盘输入和屏幕输出42
4.1单个字符的输入/输出42
4.1.1字符常量42
4.1.2字符的输入/输出43
4.2数据的格式化屏幕输出45
4.3数据的格式化键盘输入48
4.4本章扩充内容52
4.5本章知识点小结55
4.6本章常见错误小结56
习题456
本章实验题58
第5章 选择控制结构59
5.1生活中与计算机中的问题求解方法59
5.2算法的概念及其描述方法60
5.2.1算法的概念60
5.2.2算法的描述方法61
5.3关系运算符与关系表达式63
5.4用于单分支控制的条件语句64
5.5用于双分支控制的条件语句65
5.6条件运算符和条件表达式66
5.7用于多分支控制的条件语句67
5.8用于多路选择的switch语句72
5.9逻辑运算符和逻辑表达式76
5.10本章扩充内容79
5.10.1程序测试79
5.10.2对输入非法字符的检查与处理87
5.10.3位运算符90
5.11本章知识点小结93
5.12本章常见错误小结94
习题595
本章实验题97
第6章 循环控制结构98
6.1循环控制结构与循环语句98
6.2计数控制的循环106
6.3嵌套循环109
6.4条件控制的循环112
6.5流程的转移控制124
6.5.1 goto语句124
6.5.2 break语句124
6.5.3 continue语句126
6.5.4穷举法编程实例128
6.6本章扩充内容131
6.6.1结构化程序设计的核心思想131
6.6.2常用的程序调试与排错方法132
6.6.3类型溢出133
6.7本章知识点小结134
6.8本章常见错误小结135
习题6136
本章实验题142
第7章 函数144
7.1分而治之与信息隐藏144
7.2函数的定义145
7.2.1函数的分类145
7.2.2函数的定义146
7.3向函数传递值和从函数返回值147
7.3.1函数调用147
7.3.2函数原型149
7.3.3函数封装与防御性程序设计151
7.3.4函数设计的基本原则158
7.4函数的递归调用和递归函数159
7.5变量的作用域和存储类型162
7.5.1变量的作用域162
7.5.2变量的存储类型164
7.6模块化程序设计172
7.6.1模块分解的基本原则172
7.6.2自顶向下、逐步求精172
7.6.3模块化程序设计实例174
7.7本章扩充内容180
7.8本章知识点小结182
7.9本章常见错误小结183
习题7184
本章实验题187
第8章 数组189
8.1一维数组的定义和初始化189
8.2二维数组的定义和初始化194
8.3向函数传递一维数组197
8.4排序和查找203
8.5向函数传递二维数组215
8.6本章知识点小结220
8.7本章常见错误小结221
习题8222
本章实验题228
第9章 指针230
9.1变量的内存地址230
9.2指针变量的定义和初始化231
9.3间接寻址运算符235
9.4按值调用与按地址调用237
9.5用指针变量作函数参数的程序实例243
9.6函数指针及其应用246
9.7本章知识点小结254
9.8本章常见错误小结254
习题9255
本章实验题257
第10章 字符串258
10.1字符串常量258
10.2字符串的存储258
10.3字符指针260
10.4字符串的访问和输入/输出261
10.4.1如何访问字符串中的单个字符261
10.4.2字符串的输入/输出261
10.5字符串处理函数266
10.6向函数传递字符串270
10.7从函数返回字符串指针274
10.8本章扩充内容277
10.9本章知识点小结285
10.10本章常见错误小结286
习题10287
本章实验题290
第11章 指针和数组291
11.1指针和一维数组间的关系291
11.2指针和二维数组间的关系298
11.3指针数组及其应用305
11.3.1指针数组用于表示多个字符串305
11.3.2指针数组用于表示命令行参数312
11.4动态数组313
11.4.1 C程序的内存映像313
11.4.2动态内存分配函数314
11.4.3长度可变的一维动态数组316
11.4.4长度可变的二维动态数组318
11.5本章扩充内容320
11.5.1常见的内存错误及其对策320
11.5.2缓冲区溢出攻击329
11.6本章知识点小结331
11.7本章常见错误小结332
习题11332
本章实验题336
第12章 结构体和共用体338
12.1从基本数据类型到抽象数据类型338
12.2结构体的定义339
12.2.1为什么要定义结构体类型339
12.2.2结构体变量的定义341
12.2.3用typedef定义数据类型343
12.2.4结构体变量的初始化344
12.2.5嵌套的结构体345
12.2.6结构体变量的引用346
12.2.7结构体所占内存的字节数350
12.3结构体数组的定义和初始化351
12.3.1结构体数组的定义351
12.3.2结构体数组的初始化352
12.4结构体指针的定义和初始化354
12.4.1指向结构体变量的指针354
12.4.2指向结构体数组的指针355
12.5向函数传递结构体355
12.6共用体362
12.7枚举数据类型365
12.8动态数据结构——单向链表366
12.8.1问题的提出366
12.8.2链表的定义367
12.8.3单向链表的建立368
12.8.4单向链表的删除操作372
12.8.5单向链表的插入操作373
12.9本章知识点小结376
12.10本章常见错误小结377
习题12378
本章实验题379
第13章 文件操作381
13.1二进制文件和文本文件381
13.2文件的打开和关闭383
13.3按字符读写文件384
13.4按格式读写文件391
13.5按数据块读写文件397
13.6本章扩充内容402
13.6.1文件的随机读写402
13.6.2标准输入/输出重定向405
13.7本章知识点小结406
13.8本章常见错误小结407
习题13407
本章实验题408
附录A C关键字410
附录B Visual C++下基本数据类型的取值范围411
附录C C运算符的优先级与结合性412
附录D 常用字符与ASCII值对照表413
附录E 常用的ANSI C标准库函数414
参考文献422