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

  • 购买积分:12 如何计算积分?
  • 作  者:张小东,郑宏珍主编
  • 出 版 社:北京:人民邮电出版社
  • 出版年份:2009
  • ISBN:9787115193193
  • 页数:324 页
图书介绍:本书是学习C语言程序设计的基础教材,适合作为大中专各专业公共课教材、全国计算机等级考试参考书及C语言自学教材。它以最基本的工程实践为基础,以教育部考试中心最新公布的全国计算机等级考试大纲(二级C语言)为依据,是一本充满趣味性和实用性语言教材。书中内容的安排采用循序渐进的方式进行编写。全书共分9章,内容包括:简单C程序设计、简单的判定性问题的求解、循环结构及其应用、模块化设计与应用、相同类型的数据集合、深入模块化设计与应用、构造性数据集合、综合设计与应用、数据的永久性存储等。本书注重教材的可读性和实用性,从计算机工程角度着眼,展开讲解、探索和论述。每章开头都有关键字和难点提示,每章结尾安排本章小节,并从知识层面和方法层面对本章进行总结;由日常生活或实际工程中所遇到的问题着手,典型例题一题多解,由浅入深,循序渐进,强化知识点、算法、编程方法与技巧;还将程序测试、程序调试、软件的健壮性和代码风格、结构化设计与模块化程序设计方法等软件工程知识融入其中;语言通俗易懂,适合对C语言感兴趣的读者学习。

第1章 简单C程序设计 1

1.1 C程序的构成 2

1.1.1 简单的C程序实例 2

1.1.2 阅读C程序 3

1.1.3 C程序结构 6

1.2 简单程序扩展 7

1.2.1 计算器基本功能 7

1.2.2 计算器解决方案 8

1.2.3 计算过程实现及分析 9

1.2.4 深入解读 13

1.3 Visual C++6.0编译环境简介 16

1.3.1 Visual C++6.0的启动 16

1.3.2 源程序录入 16

1.3.3 编译、链接和运行 18

1.3.4 调试 18

1.3.5 退出编译环境 22

1.4 本章小结 22

练习与思考1 23

第2章 简单判定性问题求解 25

2.1 判定性问题及判定条件的描述 26

2.1.1 关系型判定条件 26

2.1.2 逻辑型判定条件 27

2.1.3 按位进行的逻辑运算 28

2.2 if-else判定性结构 30

2.2.1 if判定结构 30

2.2.2 if语句的嵌套问题 39

2.2.3 条件运算符和条件表达式 39

2.3 switch判定结构 40

2.4 应用实例 41

2.4.1 计算器 41

2.4.2 学生成绩管理 44

2.5 本章小结 47

练习与思考2 47

第3章 循环结构及应用 50

3.1 概述 51

3.2 for循环 51

3.2.1 for循环的一般结构 51

3.2.2 for循环的深入探讨 54

3.3 while循环 57

3.4 do while循环 60

3.5 关于循环的一些问题 62

3.5.1 循环的嵌套 62

3.5.2 无限循环 64

3.5.3 循环语句的选择 67

3.6 如何从循环中跳出 68

3.6.1 break语句 68

3.6.2 continue语句 70

3.6.3 goto语句 71

3.7 应用实例 72

3.7.1 计算器 72

3.7.2 学生成绩档案管理系统 77

3.8 本章小结 80

练习与思考3 80

第4章 模块化设计与应用 83

4.1 模块化程序设计方法 84

4.1.1 模块化程序设计思想 84

4.1.2 模块规划实例 84

4.2 函数 86

4.2.1 函数的定义 87

4.2.2 函数的调用 89

4.3 预处理 95

4.3.1 文件包含 95

4.3.2 宏定义 96

4.4 应用实例 104

4.5 本章小结 119

练习与思考4 119

第5章 相同类型数据集合 122

5.1 数组与数组元素的概念 123

5.2 相同类型数据的一维线性存储 125

5.2.1 一维数组的定义 125

5.2.2 一维数组的初始化 127

5.2.3 一维数组的引用 128

5.2.4 一维数组程序举例 129

5.3 相同类型数据的二维及多维存储 131

5.3.1 二维数组的定义 131

5.3.2 二维数组的初始化 132

5.3.3 二维数组的引用 134

5.3.4 多维数组的初始化和引用 136

5.3.5 数组程序举例 137

5.4 字符类型数据集合的存储 138

5.5 字符串处理函数 141

5.6 字符串指针变量与字符数组 147

5.7 应用实例 148

5.8 本章小结 161

练习与思考5 162

第6章 深入模块化设计与应用 165

6.1 算法基本概念 166

6.1.1 概念 166

6.1.2 引例 167

6.2 简单的排序算法 170

6.2.1 冒泡排序算法 171

6.2.2 选择排序算法 174

6.3 嵌套与递归设计及应用 179

6.3.1 函数的嵌套调用 179

6.3.2 函数的递归调用 182

6.4 模块间的批量数据传递 187

6.4.1 指针作为函数参数 187

6.4.2 一维数组作为函数参数 188

6.4.3 二维数组作为函数参数 189

6.5 模块化设计中程序代码的访问 191

6.6 应用实例 192

6.6.1 计算器 192

6.6.2 学生成绩管理 194

6.7 本章小结 206

练习与思考6 206

第7章 构造数据类型 210

7.1 结构体 212

7.1.1 结构体类型的定义 212

7.1.2 结构体变量 212

7.1.3 结构体数组 215

7.1.4 结构体指针 219

7.1.5 结构体与函数 222

7.1.6 位段 223

7.2 共用体 224

7.2.1 共用体类型的定义 224

7.2.2 共用体变量的定义 224

7.2.3 共用体变量的赋值和引用 225

7.3 枚举 227

7.4 自定义类型 228

7.5 应用实例 228

7.6 本章小结 236

练习与思考7 237

第8章 综合设计与应用 240

8.1 变量的作用域与存储类别 241

8.1.1 变量的作用域 241

8.1.2 变量的存储类别 244

8.2 指针与数组 248

8.2.1 一维数组与指针 248

8.2.2 多维数组与指针 251

8.2.3 指针数组 254

8.3 函数main()中的参数 256

8.4 指针型函数 258

8.5 动态存储空间分配 260

8.6 链表 263

8.6.1 链表的概念 263

8.6.2 链表的基本操作 265

8.6.3 带头结点链表简介 276

8.7 本章小结 277

练习与思考8 278

第9章 数据永久性存储 282

9.1 数据的永久性存储 283

9.2 文件组织方式 284

9.3 文件操作 285

9.3.1 标准输入/输出头文件stdio.h 285

9.3.2 文件打开与关闭 287

9.3.3 文件读/写函数 290

9.3.4 文件定位函数 300

9.4 应用实例 302

9.5 本章小结 305

练习与思考9 305

附录 C语言参考 308

附1 C语言发展史及版本历程 309

附1.1 C语言的发展史 309

附1.2 C语言的版本历程 310

附2 C语言关键字 310

附3 ASCII表 311

附4 Visual C++各数据类型所占字节数和取值范围 313

附5 C运算符及优先级 314

附6 格式化输入/输出控制字符列表 315

附6.1 函数printf() 315

附6.2 函数scanf() 316

附7 ANSIC常用标准库函数 317

附7.1 数学函数 317

附7.2 字符处理函数 318

附7.3 字符串处理函数 319

附7.4 缓冲文件系统的输入/输出函数 320

附7.5 动态内存分配函数 322

附7.6 非缓冲文件系统的输入/输出函数 323

参考文献 324