图书介绍

轻松学通C语言PDF|Epub|txt|kindle电子书版本网盘下载

轻松学通C语言
  • 左飞,李召恒著 著
  • 出版社: 北京:中国铁道出版社
  • ISBN:9787113170202
  • 出版时间:2013
  • 标注页数:416页
  • 文件大小:198MB
  • 文件页数:444页
  • 主题词:C语言-程序设计

PDF下载


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

下载说明

轻松学通C语言PDF格式电子书版下载

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

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

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

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

图书目录

第1章 程序设计与C语言概述1

1.1计算机程序2

1.1.1什么是程序2

1.1.2什么是计算机程序3

1.1.3程序设计4

1.2计算机语言4

1.2.1语言4

1.2.2什么是计算机语言4

1.2.3计算机语言简史4

1.2.4高级语言的执行方式6

1.3C语言概述7

1.3.1为什么叫“C语言”7

1.3.2C语言的版本7

1.3.3C语言的特点7

1.3.4C语言的应用9

1.4第一个C程序9

1.4.1为什么选“Hello,World”9

1.4.2“Hello,World”程序10

1.4.3“Hello,World”程序解析10

1.4.4C程序结构特点解析10

1.4.5C程序是如何执行的12

1.5Microsoft Visual C++6.0集成开发环境简介13

1.5.1集成开发环境(IDE)13

1.5.2集成开发环境的功能13

1.5.3为什么选择Microsoft Visual C++6.014

1.5.4Microsoft Visual C++6.0的版本15

1.5.5Microsoft Visual C++6.0的安装15

1.5.6项目和工作区18

1.5.7Visual C++6.0界面简介19

1.5.8常用菜单项21

1.5.9常用工具栏22

1.5.10视图窗格简介23

1.5.11代码颜色26

1.5.12使用Visual C++6.0编写和运行“Hello,World”程序26

第2章 数据及数据类型30

2.1数据在计算机中的表示31

2.1.1数据31

2.1.2字符集和标识符31

2.1.3数据在计算机中的表示33

2.2数据类型34

2.2.1数据类型的解释35

2.2.2C语言中的数据类型35

2.3常量36

2.3.1整型常量36

2.3.2实型常量38

2.3.3字符常量39

2.3.4字符串常量40

2.3.5符号常量41

2.4变量42

2.4.1给变量命名42

2.4.2变量定义42

2.4.3变量名与变量的值43

2.4.4变量初始化44

2.4.5赋值44

2.4.6整型变量45

2.4.7实型变量48

2.4.8字符变量50

2.5数据的输入/输出50

2.5.1什么是输入/输出51

2.5.2C语言中输入/输出的实现51

2.5.3格式化输出——printf()函数51

2.5.4格式化输入——scanf()函数56

2.5.5字符的输出——putchar()函数60

2.5.6字符的输入——getchar()函数61

2.5.7输出字符串——puts()函数61

2.5.8读取字符串——gets()函数62

第3章 运算符、表达式和语句64

3.1运算符和表达式概述65

3.1.1运算符65

3.1.2表达式65

3.1.3运算符的优先级和结合性66

3.2算术运算符与算术表达式67

3.2.1算术运算符67

3.2.2算术表达式68

3.2.3算术表达式的求值68

3.3赋值运算符与赋值表达式69

3.3.1简单赋值69

3.3.2左值和右值70

3.3.3复合赋值71

3.3.4赋值运算符的副作用71

3.3.5子表达式的求值顺序72

3.4类型转换72

3.4.1类型转换简述72

3.4.2自动类型转换73

3.4.3强制类型转换76

3.5自增和自减运算符78

3.5.1简化特殊的运算符78

3.5.2使用自增和自减运算符注意事项79

3.6逗号运算符与逗号表达式79

3.6.1逗号表达式80

3.6.2使用逗号表达式注意事项80

3.7关系运算符与关系表达式81

3.7.1关系运算符81

3.7.2关系表达式的值81

3.7.3使用关系运算符注意事项81

3.8逻辑运算符与逻辑表达式82

3.8.1逻辑运算符82

3.8.2逻辑表达式82

3.8.3“短路”计算83

3.9位运算符83

3.9.1C语言的位运算符83

3.9.2按位与运算符84

3.9.3按位或运算符85

3.9.4按位异或运算符85

3.9.5按位取反运算符86

3.9.6左移运算符87

3.9.7右移运算符88

3.9.8位运算中的整数提升88

3.9.9位运算赋值运算符89

3.10sizeof运算符89

3.10.1使用sizeof89

3.10.2sizeof的结果90

3.10.3sizeof的优先级91

3.10.4各种类型数据长度的计算91

3.11语句91

3.11.1什么是语句92

3.11.2语句类型92

3.11.3赋值语句93

第4章 流程控制95

4.1流程的表示方法96

4.1.1自然语言表示法96

4.1.2流程图表示法96

4.2顺序结构97

4.2.1什么是顺序结构97

4.2.2顺序结构程序设计方法98

4.3分支结构100

4.3.1什么是分支结构100

4.3.2if语句的解释101

4.3.3if语句的3种形式101

4.3.4嵌套的if语句105

4.3.5应用if语句注意事项106

4.3.6条件运算符的解释109

4.3.7应用条件运算符注意事项110

4.3.8switch语句的解释111

4.3.9应用switch语句注意事项113

4.3.10分支结构程序设计方法113

4.4循环结构116

4.4.1什么是循环结构116

4.4.2关于while语句的解释116

4.4.3应用while语句注意事项117

4.4.4关于do…while语句的解释118

4.4.5应用do…while语句时防止死循环119

4.4.6不确定循环和计数循环119

4.4.7关于for语句的解释120

4.4.8使用for语句注意事项121

4.4.9选择哪种循环实现方式123

4.4.10循环中的循环124

4.4.11循环结构程序设计方法125

4.5跳转结构128

4.5.1什么是跳转结构128

4.5.2break语句129

4.5.3continue语句131

4.5.4goto语句132

4.5.5C语言中保留goto语句的原因133

第5章 函数136

5.1函数与结构化程序设计137

5.1.1函数是“黑盒子”137

5.1.2数学函数与C语言函数138

5.1.3C语言函数中的库函数139

5.1.4结构化的程序设计139

5.2函数的使用140

5.2.1函数的定义140

5.2.2函数的类型141

5.2.3函数的返回值142

5.2.4函数的参数145

5.2.5函数的调用148

5.2.6函数的嵌套——蒙特卡罗法求圆周率π151

5.3递归153

5.3.1递归的定义154

5.3.2使用递归的原则155

5.3.3分治法与汉诺塔162

5.3.4回溯法与八皇后问题164

5.4变量的作用域168

5.4.1局部变量168

5.4.2局部变量的作用域168

5.4.3全局变量169

5.5变量的存储类型171

5.5.1auto变量172

5.5.2static局部变量173

5.5.3register变量174

5.5.4extern变量176

5.5.5static外部变量178

5.6执行多文件程序179

5.6.1内部函数179

5.6.2外部函数179

5.6.3多文件程序实例181

第6章 数组与字符串183

6.1一维数组的使用184

6.1.1数组概念的引入——中国古代军队编制184

6.1.2数组元素的使用185

6.1.3数组的初始化185

6.1.4小心访问越界187

6.1.5数组应用举例187

6.2数组类型的参数190

6.2.1以数组作为参数190

6.2.2避免数组被修改191

6.2.3函数返回数组的两种方法192

6.3多维数组的使用195

6.3.1从一维到二维195

6.3.2初始化及使用二维数组195

6.3.3多维数组应用举例197

6.4字符数组201

6.4.1定义与初始化201

6.4.2字符串的使用201

6.4.3字符串的处理——大小写转换函数203

6.4.4字符串的处理——字符串比较函数203

6.4.5字符串的处理——字符串长度的获得204

6.4.6字符串的处理——字符串连接函数204

6.4.7字符串的处理——字符串复制函数205

6.4.8字符串应用举例207

第7章 指针210

7.1指针与地址211

7.1.1内存和地址的概念211

7.1.2定义指针变量213

7.1.3使用指针变量214

7.2指针与数组217

7.2.1用指针访问数组元素217

7.2.2直接插入排序219

7.2.3用指针操作多维数组220

7.2.4Z字形编排过程223

7.2.5复杂指针运算的解析225

7.3使用字符串指针变量226

7.3.1指向字符串的指针226

7.3.2与字符数组的比较230

7.3.3如何输出其自身的程序233

7.4指针与函数234

7.4.1将指针用作函数参数234

7.4.2指向函数的指针236

7.4.3指针对于指令的访问是受限制的238

7.4.4使用指向函数指针的语法来实现编程238

7.4.5返回值为指针的函数240

7.5复合多维指针的使用244

7.5.1指针数组的使用244

7.5.2指向指针的指针247

7.5.3main()函数的参数249

7.5.4main()函数参数应用实例249

第8章 预处理252

8.1预处理器概述253

8.1.1预处理器的工作方式253

8.1.2使用Microsoft Visual C++6.0生成预编译程序254

8.1.3预处理指示分类256

8.1.4预处理指示规则256

8.2宏定义257

8.2.1无参宏定义257

8.2.2带参宏定义258

8.2.3带参宏定义与函数259

8.2.4使用宏时注意事项261

8.2.5至关重要的圆括号262

8.2.6预定义宏263

8.3条件编译264

8.3.1条件编译的形式264

8.3.2条件编译的作用267

8.4文件包含268

8.4.1头文件268

8.4.2文件包含的形式269

8.4.3使用文件包含时注意事项270

8.5其他指示271

8.5.1#error指示271

8.5.2#line指示271

8.5.3#pragma指示272

8.6“#”和“##”运算符272

8.6.1“#”运算符272

8.6.2“##”运算符273

8.7预处理实例273

8.7.1简单计算器程序273

8.7.2程序分析276

8.7.3程序中的预处理277

第9章 结构体与共用体279

9.1结构体280

9.1.1什么是结构体280

9.1.2结构体实例——《水浒传》中的一百单八将280

9.1.3结构体类型与结构体变量281

9.1.4结构体变量的定义282

9.1.5定义结构体变量注意事项283

9.1.6结构体变量的初始化283

9.1.7结构体变量的引用284

9.1.8引用结构体变量注意事项285

9.1.9结构体数组286

9.1.10指向结构体的指针289

9.1.11结构体与函数291

9.1.12位域298

9.2共用体301

9.2.1什么是共用体301

9.2.2共用体与结构体302

9.2.3共用体变量的初始化303

9.2.4使用共用体注意事项304

9.2.5结构体和共用体综合实例——“梁山好汉的比武大会”305

9.3枚举308

9.3.1什么是枚举308

9.3.2枚举变量的定义与取值309

9.3.3“表里不一”的类型310

9.3.4枚举应用举例——“向你问好的程序”311

9.4用户自定义类型——typedef312

9.4.1什么是typedef312

9.4.2创建typedef简单方法313

9.4.3typedef和#define313

9.4.4typedef的两个重要作用314

第10章 文件316

10.1理解文件的基本概念317

10.1.1什么是文件317

10.1.2什么是流318

10.1.3处理文件的方法319

10.1.4缓存320

10.1.5文本文件和二进制文件321

10.2文件的打开与关闭321

10.2.1文件类型指针321

10.2.2文件的打开323

10.2.3文件操作类型及应用323

11.2.4文件的关闭325

10.3文件的基本操作327

10.3.1文件中的字符读/写327

10.3.2按字符进行读/写文件——文件复制的功能329

10.3.3文件中字符串读/写330

10.3.4其他文件读/写函数334

10.3.5文件位置定位334

10.3.6数据块的读/写336

10.4处理二进制文件338

10.5文件缓冲区处理341

10.5.1文件缓冲区的清除341

10.5.2文件缓冲区的设置343

10.6文件操作的检测345

第11章 动态数据结构347

11.1动态内存管理348

11.1.1为什么使用动态内存分配348

11.1.2如何实现动态内存管理348

11.1.3关于动态内存分配的说明351

11.2链表概述352

11.2.1单向链表与数组353

11.2.2单向链表——老鹰捉小鸡353

11.2.3链表存储方式优缺点354

11.2.4不同单向链表间的合并354

11.3链表的操作及实现355

11.3.1链表的建立355

11.3.2链表的遍历358

11.3.3链表结点的删除359

11.3.4链表结点的增加361

11.3.5结点删除函数中的free()函数363

11.3.6链表的应用实例363

11.4栈364

11.4.1栈定义——散乱的盘子364

11.4.2栈的特点365

11.4.3栈工作原理365

11.4.4栈与链表366

11.4.5栈的应用举例——括号匹配问题368

11.5队列369

11.5.1队列的特点369

11.5.2队列定义——排队等待买票的人370

11.5.3队列应用370

11.5.4队列与栈的不同370

11.5.5队列创建370

11.5.6基于链表实现的队列——链式队列371

11.5.7队列的实现372

附录Ⅰ C语言运算符及其优先级汇总表376

附录Ⅱ 标准ASCII码字符集378

附录Ⅲ 编程能力的培养与提高380

附录Ⅳ 程序人生395

参考文献415

热门推荐