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

  • 购买积分:13 如何计算积分?
  • 作  者:张毅坤,张亚玲主编
  • 出 版 社:北京:高等教育出版社
  • 出版年份:2011
  • ISBN:7040314878
  • 页数:360 页
图书介绍:C语言是计算机程序设计的主流语言之一,是目前大部分理工科院校开设程序设计课程的首选教学语言。本书共分9章,以国际标准C89为准则,以程序设计的基本概念及方法讲授为主线,以C99标准及难点问题为扩展贯穿全书,并以知识点的综合应用案例作为总结,详细、全面地介绍了C语言程序设计的基本结构、函数、数组、结构体与共用体、指针、文件等内容。全书深入浅出,循序渐进;并强调库函数的引用,倡导程序复用的思想,注重程序流程图的应用,以及程序书写的规范性等,突出重点章节总结性案例的综合性和趣味性。本书既可以作为高等院校计算机专业和理工科其他专业程序设计基础课程的教科书,又可作为工程技术人员与程序设计爱好者的参考书。

第1章 C语言概述 1

1.1 程序设计语言及分类 1

1.2 C语言简介 3

1.2.1 C语言的产生与发展 3

1.2.2 C语言程序的构成 4

1.2.3 C语言程序的运行过程 8

1.3 C语言的特点 9

1.4 C语言与C++、Java和C#之间的关系 10

小结 11

习题 11

第2章 数据类型、运算符及表达式 12

2.1 C语言数据类型 13

2.1.1 C语言数据类型分类 13

2.1.2 C语言的基本数据类型 14

2.2 常量 15

2.2.1 整型、实型常量 15

2.2.2 符号常量 16

2.2.3 字符型常量 17

2.3 变量 19

2.3.1 变量的概念 19

2.3.2 整型、实型变量 21

2.3.3 字符型变量 22

2.4 运算符与表达式 22

2.4.1 C语言运算符概述 22

2.4.2 算术运算符与算术表达式 24

2.4.3 基本数据类型转换 25

2.4.4 赋值运算符与赋值表达式 28

2.5 扩充与进阶 29

小结 31

习题 31

第3章 基本结构程序设计 34

3.1 程序基本结构的引出 34

3.2 算法及其表述 35

3.2.1 算法 35

3.2.2 算法的表示 37

3.2.3 程序基本结构 38

3.2.4 结构化程序设计 40

3.3 顺序结构程序设计 41

3.3.1 顺序结构语句概述 41

3.3.2 数据的输入与输出 42

3.3.3 顺序结构程序举例 50

3.4 选择结构程序设计 51

3.4.1 关系运算与逻辑运算 51

3.4.2 if语句 53

3.4.3 if语句的嵌套 56

3.4.4 switch语句 58

3.5 循环结构程序设计 60

3.5.1 while语句 60

3.5.2 do…while语句 63

3.5.3 for语句 66

3.5.4 循环嵌套 67

3.5.5 循环的提前结束 68

3.6 综合应用举例 71

3.7 扩充与进阶 74

3.7.1 条件运算符与条件表达式 74

3.7.2 灵活的for语句形式 75

小结 77

习题 78

第4章 函数 81

4.1 函数的引出 81

4.2 C语言程序结构与函数分类 82

4.2.1 C语言程序的结构 82

4.2.2 函数分类 84

4.3 标准库函数 84

4.4 函数的定义与调用 85

4.4.1 函数定义 85

4.4.2 函数调用 87

4.5 变量作用域 94

4.5.1 局部变量 94

4.5.2 全局变量 96

4.6 函数嵌套与递归 98

4.6.1 函数的嵌套调用 98

4.6.2 函数的递归调用 101

4.7 综合应用举例 103

4.8 扩充与进阶 108

4.8.1 变量的存储类别 109

4.8.2 C99中函数的不同之处 112

小结 112

习题 113

第5章 数组 115

5.1 一维数组 118

5.1.1 一维数组元素的引用 118

5.1.2 一维字符数组 127

5.1.3 一维数组应用举例 129

5.2 二维数组 131

5.2.1 二维数组元素的引用 132

5.2.2 二维字符数组 136

5.2.3 二维数组应用举例 137

5.3 字符串 141

5.3.1 字符串数组 142

5.3.2 字符串处理函数 145

5.3.3 字符串应用举例 148

5.4 综合应用举例 150

5.5 扩充与进阶 154

5.5.1 可变长度数组 154

5.5.2 数组声明中的static限定符 155

小结 156

习题 157

第6章 结构体与共用体 161

6.1 结构体的引出 161

6.2 结构体 162

6.2.1 结构体类型定义 162

6.2.2 结构体变量定义与引用 164

6.2.3 结构体变量作函数参数 169

6.3 结构体数组 172

6.3.1 结构体数组定义与引用 172

6.3.2 结构体数组作函数参数 174

6.3.3 应用举例 175

6.4 共用体 178

6.4.1 共用体类型定义 179

6.4.2 共用体变量定义与引用 179

6.4.3 应用举例 181

6.5 枚举类型与自定义类型名 184

6.5.1 枚举类型 184

6.5.2 自定义类型名 189

6.6 综合应用举例 190

6.7 扩充与进阶 196

6.7.1 位段结构 196

6.7.2 位运算和位运算符 200

6.7.3 有关类型在C99中的不同之处 204

小结 205

习题 206

第7章 指针 210

7.1 指针与地址 211

7.1.1 指针的概念 211

7.1.2 指针变量 212

7.1.3 指针运算符 213

7.2 指针与数组 214

7.2.1 指向一维数组的指针 215

7.2.2 指向多维数组的指针 223

7.3 指针与字符串 230

7.4 指针与结构体 236

7.4.1 指针与结构体变量 236

7.4.2 结构体变量作函数的参数 237

7.4.3 指针与结构体数组 239

7.5 指针与函数 241

7.5.1 指针变量作函数参数 241

7.5.2 返回指针值的函数 245

7.5.3 指向函数的指针 247

7.6 综合应用举例 251

7.7 扩充与进阶 255

7.7.1 指向指针的指针变量 255

7.7.2 指针数组 256

7.7.3 命令行参数 260

7.7.4 指向函数的指针数组 262

7.7.5 用restrict修饰的指针 264

7.7.6 动态存储分配与释放 264

7.7.7 动态数据结构——链表 267

小结 270

习题 271

第8章 文件 275

8.1 文件介绍 275

8.1.1 文件的概念及分类 275

8.1.2 缓冲型文件 276

8.1.3 文件操作 277

8.1.4 文件结构体和文件指针 277

8.2 文件的打开、关闭和检测函数 278

8.2.1 打开文件函数 278

8.2.2 关闭文件函数 280

8.2.3 文件检测函数 280

8.3 文件的字符和字符串读写 281

8.3.1 字符读写函数 281

8.3.2 字符串读写函数 285

8.4 文件的格式化读写 287

8.5 文件的块读写 289

8.5.1 文件定位 289

8.5.2 文件的块读写 290

8.6 综合应用举例 294

小结 299

习题 299

第9章 集成开发环境和编译预处理 300

9.1 Visual C++6.0开发环境简介 300

9.1.1 Visual C++6.0集成开发环境简介 300

9.1.2 新建和输入源程序 302

9.1.3 程序调试 312

9.2 Turbo C 2.0集成开发环境的使用 315

9.2.1 Turbo C 2.0集成开发环境简介 315

9.2.2 编译环境使用 316

9.2.3 Turbo C 2.0的配置文件 323

9.3 GCC编译器简介 323

9.4 编译预处理 325

9.4.1 文件包含命令#include 325

9.4.2 宏定义#define 328

9.4.3 条件编译 332

小结 333

附录Ⅰ 常用字符与ASCII代码对照表 335

附录Ⅱ 运算符和结合性 336

附录Ⅲ C库函数 337

参考文献 359