《C语言程序设计 第2版》PDF下载

  • 购买积分:12 如何计算积分?
  • 作  者:叶斌,陈世强主编;贺刚,陈自根副主编
  • 出 版 社:北京:科学出版社
  • 出版年份:2018
  • ISBN:9787030573889
  • 页数:342 页
图书介绍:本书对C语言的基本构成、语法规则、使用特性、以及程序设计的基本方法与技术作了系统而详细的介绍。全书注重算法设计与程序设计地有机地结合,强调模块化程序设计思想及其实现方法,强化工程应用训练。本书共分10章,内容分别为:C语言及程序设计的基本知识、基本数据类型与表达式、程序的控制结构、函数与编译预处理、数组、指针、结构体、联合体和枚举类型、文件、位运算、以及综合应用案例。为了使读者更好地掌握各章节内容,每章还配有大量精选的习题。本书内容充实、结构清晰、取材新颖、注重实用、语言简洁、可读性强。本书特别注重以工程应用为目的,以案例为导向,强调编程风格的培养和编程实训,对培养工程应用型人才是非常有益的。

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

1.1 程序与程序设计语言 1

1.1.1 程序的概念 1

1.1.2 程序设计语言的发展 1

1.1.3 C语言的发展及特点 3

1.1.4 C语言与C+++、Java、C#的比较 5

1.2 程序设计方法 6

1.2.1 程序设计的基本过程 6

1.2.2 结构化程序设计方法 6

1.2.3 面向对象程序设计方法 7

1.3 C语言程序的基本结构 8

1.3.1 一个简单的C语言程序 8

1.3.2 C程序的结构特点 9

1.3.3 代码编写风格 10

1.4 C语言的基本语法单位 10

1.4.1 C语言的字符集 10

1.4.2 关键字 11

1.4.3 标识符 11

1.4.4 分隔符 12

1.4.5 注释 12

1.5 C语言程序的开发过程与环境 13

1.5.1 由源程序生成可执行程序的过程 13

1.5.2 VisualC+++6.0集成开发环境 14

1.5.3 Code::Bloeks集成开发环境 17

习题1 19

第2章 基本数据类型和表达式 22

2.1 基本数据类型 22

2.1.1 整型数据 22

2.1.2 实型数据 24

2.1.3 字符型数据 24

2.2 常量与变量 26

2.2.1 常量 27

2.2.2 变量 29

2.3 运算符与表达式 32

2.3.1 算术运算符与算术表达式 32

2.3.2 自增与自减运算 34

2.3.3 关系运算符与关系表达式 35

2.3.4 逻辑运算符与逻辑表达式 36

2.3.5 赋值运算符与赋值表达式 38

2.3.6 条件运算符与求字节运算符 39

2.3.7 逗号运算符与逗号表达式 40

2.4 数据类型转换&. 40

2.4.1 自动类型转换 40

2.4.2 赋值运算时的类型转换 41

2.4.3 强制类型转换 42

习题2 42

第3章 程序的控制结构 46

3.1 算法与语句 46

3.1.1 算法及其特征 46

3.1.2 算法与程序结构 47

3.1.3 算法的描述 47

3.1.4 C语言的语句分类 52

3.2 基本输入/输出函数 54

3.2.1 字符输入/输出函数 54

3.2.2 格式化输入/输出函数 55

3.3 顺序结构 60

3.4 选择结构 61

3.4.1 if语句 61

3.4.2 if语句的嵌套 65

3.4.3 switch...case语句 68

3.5 循环结构 70

3.5.1 while语句 70

3.5.2 do...while语句 72

3.5.3 for语句 74

3.5.4 循环嵌套 77

3.6 其他控制语句 79

3.6.1 break语句 80

3.6.2 continue语句 80

3.6.3 goto语句 81

3.7 程序设计举例 82

习题3 86

第4章 函数 93

4.1 结构化程序设计与C程序结构 93

4.1.1 结构化程序设计的特征与风格 93

4.1.2 模块与函数 94

4.2 标准库函数与函数的定义 95

4.2.1 标准库函数 95

4.2.2 函数的定义 96

4.3 函数的一般调用 98

4.3.1 函数的声明 98

4.3.2 函数的调用 99

4.3.3 参数传递 100

4.3.4 函数的返回值 102

4.4 函数的嵌套调用与递归调用 104

4.4.1 函数的嵌套调用 104

4.4.2 函数的递归调用 105

4.5 变量的作用域 107

4.5.1 局部变量 107

4.5.2 全局变量 109

4.6 变量的存储类别 111

4.6.1 变量的存储方式 111

4.6.2 自动变量 112

4.6.3 静态变量 112

4.6.4 寄存器变量 113

4.6.5 外部变量 114

4.7 内部函数与外部函数 116

4.7.1 内部函数 116

4.7.2 外部函数 116

4.8 编译预处理 117

4.8.1 编译预处理简介 117

4.8.2 宏定义 118

4.8.3 文件包含 121

4.8.4 条件编译 122

4.9 程序设计举例 125

习题4 129

第5章 数组 135

5.1 一维数组 135

5.1.1 一维数组的定义 135

5.1.2 一维数组的逻辑结构和存储结构 137

5.1.3 一维数组元素的引用 137

5.1.4 一维数组的初始化 140

5.1.5 一维数组的应用举例 141

5.2 二维数组 144

5.2.1 二维数组的定义 145

5.2.2 二维数组的逻辑结构和存储结构 145

5.2.3 二维数组元素的引用 146

5.2.4 二维数组的初始化 148

5.2.5 二维数组的应用举例 149

5.3 字符数组和字符串 152

5.3.1 字符数组的定义和初始化 152

5.3.2 字符数组的输入/输出 155

5.3.3 字符串的概念和存储表示 157

5.3.4 字符串处理函数 159

5.4 数组作为函数的参数 164

5.4.1 数组元素作为函数的参数 164

5.4.2 数组名作为函数的参数 165

5.5 程序设计举例 167

习题5 171

第6章 指针 176

6.1 指针概述 176

6.1.1 变量的地址 176

6.1.2 指针和指针变量 177

6.1.3 指针变量的定义 177

6.1.4 指针变量的初始化 178

6.1.5 指针变量的引用 178

6.2 指针运算 180

6.2.1 指针的赋值运算 180

6.2.2 指针的算术运算 181

6.2.3 指针的关系运算 182

6.2.4 指针的下标运算 182

6.3 指针与函数 183

6.3.1 指针作为函数的参数 183

6.3.2 返回指针的函数 184

6.3.3 指向函数的指针 185

6.4 指针与数组 187

6.4.1 指向数组元素的指针 188

6.4.2 指向一维数组的指针 190

6.4.3 指针数组 191

6.4.4 多级指针 192

6.5 指针与字符串 194

6.5.1 字符型指针与字符串 194

6.5.2 字符串处理函数的实现 195

6.5.3 字符串数组 197

6.5.4 带参数的main()函数 199

6.6 程序设计举例 200

习题6 206

第7章 结构体、共用体和枚举类型 212

7.1 结构体 212

7.1.1 结构体类型的声明 212

7.1.2 结构体变量的定义 214

7.1.3 结构体变量的引用 216

7.1.4 结构体变量的初始化 216

7.1.5 结构体变量的有关操作 217

7.1.6 结构体数组 219

7.1.7 结构体指针变量 222

7.1.8 结构体与函数 224

7.2 共用体 229

7.2.1 共用体类型声明及共用体类型变量的定义 229

7.2.2 共用体变量的引用 230

7.2.3 共用体变量的初始化 231

7.3 枚举类型 233

7.3.1 枚举类型的声明 233

7.3.2 枚举类型变量的定义 234

7.4 用typedef定义类型 236

7.4.1 typedef的意义 236

7.4.2 typedef的用法 236

7.5 链表 237

7.5.1 单链表的构造 237

7.5.2 单链表的操作 239

7.6 程序设计举例 247

习题7 253

第8章 文件 262

8.1 文件概述 262

8.1.1 文件的基本概念 262

8.1.2 文件的分类 262

8.1.3 文件缓冲区 263

8.2 文件类型指针 264

8.3 文件的打开与关闭 265

8.3.1 文件的打开 265

8.3.2 文件的关闭 267

8.4 文件的读/写操作 267

8.4.1 字符读/写函数 267

8.4.2 字符串读/写函数 271

8.4.3 数据块读/写函数 272

8.4.4 格式化读/写函数 275

8.5 文件的随机读/写操作 276

8.5.1 重返文件头函数 276

8.5.2 指针位置移动函数 277

8.5.3 检测指针当前位置函数 279

8.5.4 文件操作出错检测函数 279

8.5.5 文件处理范例 280

习题8 285

第9章 位运算 288

9.1 位运算符与位运算 288

9.1.1 按位取反运算符 288

9.1.2 左移运算符 289

9.1.3 右移运算符 290

9.1.4 按位与运算符 291

9.1.5 按位或运算符 292

9.1.6 按位异或运算符 293

9.2 位段 294

9.2.1 位段结构体的说明 294

9.2.2 位段的引用 295

9.3 程序设计举例 296

习题9 297

第10章 综合应用案例 300

10.1 系统设计要求 300

10.2 系统设计及函数实现 301

10.2.1 系统设计 301

10.2.2 数据结构 302

10.2.3 函数设计 303

10.3 参考程序 312

10.3.1 源代码清单 312

10.3.2 电话本软件开发过程简介 327

习题10 327

附录A ASCII码表 329

附录B C语言的关键字及说明 330

附录C 运算符的优先级和结合性 331

附录D 常用的C语言库函数 332

附录E 用户自定义标识符的命名规则 340

参考文献 342