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

  • 购买积分:12 如何计算积分?
  • 作  者:潘广贞,康珺,薛海丽编著
  • 出 版 社:北京:国防工业出版社
  • 出版年份:2014
  • ISBN:9787118096484
  • 页数:339 页
图书介绍:本书主要内容包括:概述、C语言数据类型、运算符和表达式、结构化程序设计(顺序、选择和循环结构程序设计)、数组、函数、指针、结构体与共用体、文件、位运算和预处理命令。每章有本章的学习内容、基本要求及小结,并附有习题供读者练习。适合作高等院校计算机、软件工程等专业的程序设计基础课程教材,也可供对C语言及软件开发感兴趣的自学者使用。

第1章 概述 1

1.1 计算机简介 1

1.1.1 计算机发展简史 1

1.1.2 计算机工作原理 5

1.1.3 现代计算机硬件系统的构成 6

1.1.4 计算机软件系统的构成 7

1.2 程序设计语言 8

1.3 C语言简介 9

1.3.1 C语言的特点 10

1.3.2 C语言的发展和标准化 11

1.4 简单的C语言程序 11

1.4.1 C语言程序的特点 11

1.4.2 C语言程序的编译和运行 14

1.4.3 C语言程序的书写格式 16

1.5 解决实际问题的过程 16

1.5.1 解决问题的基本步骤 16

1.5.2 算法的概念 17

1.5.3 算法的特性 18

1.5.4 算法的表示 19

1.6 小结 20

习题 21

第2章 C语言数据类型、运算符和表达式 22

2.1 基本字符、关键字和标识符 23

2.2 常量 24

2.3 变量的定义和使用 26

2.3.1 变量的定义及变量类型 26

2.3.2 变量的属性和分类 27

2.3.3 变量的使用及赋初值 28

2.4 基本数据类型及其在计算机中的表示 29

2.4.1 数的进制 29

2.4.2 整型数据 35

2.4.3 整型变量 36

2.5 实型数据 39

2.5.1 实型常量的表示方法 39

2.5.2 实型变量 40

2.6 字符型数据 40

2.6.1 字符型常量 40

2.6.2 字符变量 42

2.6.3 字符变量在内存中的存储方式 42

2.6.4 字符数据和整型数据的关系 42

2.6.5 字符串常量 44

2.7 不同运算中各种数据类型间的相互转换 44

2.8 运算符和表达式 47

2.8.1 算术运算符和算术表达式 48

2.8.2 赋值运算符和赋值表达式 55

2.8.3 关系运算符和关系表达式 56

2.8.4 逻辑运算符和逻辑表达式 57

2.8.5 条件运算符和条件表达式 59

2.8.6 逗号运算符和逗号表达式 61

2.8.7 其他运算符及其运算 61

2.9 小结 62

习题 62

第3章 结构化程序设计 64

3.1 什么是结构化程序设计 64

3.2 程序流程图 65

3.2.1 传统流程图 65

3.2.2 N-S结构化流程图 66

3.3 3种基本结构及流程图表示 67

3.3.1 顺序结构 67

3.3.2 选择结构 67

3.3.3 循环结构 67

3.4 小结 68

习题 68

第4章 顺序结构程序设计 69

4.1 字符型数据的输入/输出函数 69

4.1.1 putchar函数 69

4.1.2 getchar函数 70

4.2 格式输入/输出函数 71

4.2.1 printf函数 71

4.2.2 scanf函数 77

4.3 程序举例 81

4.4 小结 83

习题 83

第5章 选择结构程序设计 85

5.1 if语句 85

5.1.1 if语句的标准格式 85

5.1.2 if语句的嵌套 87

5.2 switch语句 91

5.3 程序举例 93

5.4 小结 98

习题 98

第6章 循环结构程序设计 100

6.1 循环结构问题的提出 100

6.2 for循环 100

6.2.1 for循环语句 100

6.2.2 for循环的简单举例 102

6.3 while循环 103

6.3.1 while循环语句 103

6.3.2 while循环的简单举例 105

6.4 do-while循环 105

6.4.1 do-while循环语句 105

6.4.2 do-while循环的简单举例 106

6.5 循环语句的嵌套 107

6.5.1 循环语句的嵌套形式 107

6.5.2 循环语句的嵌套举例 107

6.6 break语句和continue语句 108

6.6.1 break语句 108

6.6.2 continue语句 110

6.7 程序举例 111

6.8 小结 117

习题 117

第7章 数组 119

7.1 一维数组 119

7.1.1 一维数组的定义 119

7.1.2 一维数组的初始化 120

7.1.3 一维数组元素的引用 120

7.1.4 一维数组程序举例 122

7.2 二维数组 124

7.2.1 二维数组的定义 124

7.2.2 二维数组的初始化 125

7.2.3 二维数组元素的引用 126

7.2.4 二维数组程序举例 127

7.3 字符数组 128

7.3.1 字符数组的定义、初始化及引用 128

7.3.2 字符串处理函数 131

7.3.3 字符数组程序举例 133

7.4 小结 135

习题 135

第8章 函数 137

8.1 C语言程序的一般结构 137

8.2 函数的定义和返回值 138

8.2.1 函数的定义及声明 138

8.2.2 函数的返回值 142

8.3 函数间的数据传递 142

8.3.1 实参与形参 143

8.3.2 值传递与地址传递 144

8.3.3 简单变量作参数 148

8.3.4 数组作参数 150

8.4 函数的调用 154

8.4.1 函数调用的语法要求 154

8.4.2 函数的嵌套调用 154

8.4.3 函数的递归调用 155

8.5 变量的作用域及其存储类型 160

8.5.1 变量的作用域 160

8.5.2 变量的存储类型 163

8.5.3 变量分类总结 168

8.6 内部函数和外部函数 169

8.6.1 内部函数 169

8.6.2 外部函数 171

8.7 小结 173

习题 173

第9章 指针 175

9.1 指针的概念 175

9.1.1 变量的地址 175

9.1.2 变量的访问方式 176

9.1.3 指针和地址 176

9.2 指针变量 177

9.2.1 指针变量的定义 177

9.2.2 指针变量的初始化 177

9.2.3 指针的基本运算 178

9.2.4 指针程序举例 179

9.3 指针变量作函数参数 181

9.4 指向数组的指针 184

9.4.1 指向一维数组元素的指针 184

9.4.2 数组名或指针变量作函数参数 189

9.4.3 二维数组的指针 191

9.5 指向字符串的指针 197

9.5.1 指向字符串的指针变量 197

9.5.2 字符串指针作函数参数 200

9.6 指针数组 203

9.6.1 指针数组的概念 203

9.6.2 命令行参数 206

9.7 函数的指针和返回指针值的函数 208

9.7.1 函数的指针 208

9.7.2 指针型函数 211

9.8 指针的指针 214

9.9 小结 215

习题 216

第10章 结构体与共用体 217

10.1 结构体概述 217

10.1.1 结构体的概念 217

10.1.2 结构体类型的定义 217

10.2 结构体变量 219

10.2.1 结构体变量的定义 219

10.2.2 结构体变量的初始化 220

10.2.3 结构体变量的引用 221

10.3 结构体变量作为函数参数 222

10.4 结构体数组 224

10.4.1 结构体数组的定义 224

10.4.2 结构体数组的初始化 225

10.4.3 结构体数组元素的引用 226

10.5 指向结构体类型数据的指针 227

10.5.1 指向结构体变量的指针 227

10.5.2 指向结构体数组的指针 229

10.5.3 结构体指针变量作函数参数 230

10.6 动态存储分配 232

10.7 链表 233

10.7.1 链表的概念 233

10.7.2 链表的操作 234

10.8 共用体 241

10.8.1 共用体类型定义 242

10.8.2 共用体变量的定义与引用 242

10.8.3 应用举例 243

10.9 枚举类型 246

10.9.1 枚举类型的定义和枚举变量的说明 246

10.9.2 枚举类型变量的赋值和使用 247

10.10 类型定义符typedef 248

10.11 小结 249

习题 250

第11章 文件 253

11.1 文件概述 253

11.1.1 文件的概念及分类 253

11.1.2 文件指针 254

11.2 文件的打开与关闭 255

11.2.1 fopen函数 255

11.2.2 fclose函数 256

11.3 文件的读写 257

11.3.1 字符读写函数fgetc和fputc 257

11.3.2 字符串读写函数fgets和fputs 259

11.3.3 数据块读写函数fread和fwrite 261

11.3.4 磁盘文件读写函数fscanf和fprintf 263

11.3.5 文件的定位 265

11.4 文件检测函数 268

11.5 C语言库文件 268

11.6 小结 269

习题 270

第12章 位运算 271

12.1 位运算符 271

12.1.1 按位与运算 271

12.1.2 按位或运算 271

12.1.3 按位异或运算 272

12.1.4 求反运算 272

12.1.5 左移运算 272

12.1.6 右移运算 272

12.2 位段 272

12.2.1 位段的定义和位段变量的说明 273

12.2.2 位段的使用 274

12.3 小结 275

习题 275

第13章 预处理命令 277

13.1 概述 277

13.2 宏定义 277

13.2.1 不带参数的宏定义 277

13.2.2 带参数的宏定义 280

13.3 文件包含 283

13.4 条件编译 285

13.5 小结 286

习题 287

第14章 图形函数及简单界面设计介绍 288

14.1 屏幕显示模式概述 288

14.1.1 屏幕显示模式简介 288

14.1.2 设置和关闭图形模式 289

14.2 基本图形绘制函数简介 293

14.2.1 画直线函数 293

14.2.2 画矩形函数 293

14.2.3 画圆和圆弧函数 294

14.2.4 设置线型和线宽 296

14.3 设置屏幕显示颜色 298

14.3.1 颜色简介 298

14.3.2 设置屏幕颜色 299

14.4 图形填充函数 301

14.4.1 图形填充模式的设置 301

14.4.2 填充基本图形的函数 302

14.4.3 填充任意封闭图形的函数 306

14.5 图形模式字符的显示 307

14.5.1 指定字符当前输出位置 307

14.5.2 图形模式下文本信息的输出 308

14.6 小结 310

习题 311

第15章 综合应用 312

15.1 模拟时钟 312

15.1.1 程序功能 312

15.1.2 程序设计思想 312

15.1.3 程序源代码 313

15.1.4 程序输出结果 316

15.2 24点扑克牌游戏 317

15.2.1 程序功能 317

15.2.2 程序设计思想 317

15.2.3 程序源代码 317

15.2.4 程序输出结果 325

15.3 简单的物流管理系统 326

15.3.1 程序功能 326

15.3.2 程序设计思想 326

15.3.3 程序源代码 326

15.3.4 程序输出结果 333

15.4 小结 333

习题 333

附录A C语言运算符优先级和结合性 334

附录B ASCII代码与字符对照表 336

参考文献 338