《C程序设计教程》PDF下载

  • 购买积分:12 如何计算积分?
  • 作  者:刘振安编著
  • 出 版 社:北京:科学出版社
  • 出版年份:2005
  • ISBN:7030146484
  • 页数:319 页
图书介绍:本书以实例为蓝线,以培养C语言应用能力为主线,强调理论教学与实验密切结合的同时,注意介绍ANSI C已经更新的内容,并与C++接轨,重点介绍基本理论、基本知识和基本技能,熟练掌握编译环境。

目录 1

第1章 C程序结构基础知识 1

1.1 C语言特点 1

1.2 简单的C程序结构及函数 2

1.3 基本的输入与输出 7

1.4 典型的C程序结构 8

1.4.1 函数、主函数和函数原型 9

1.4.2 C语言预处理器 10

1.4.3 程序注释 11

1.4.4 程序语句 11

1.4.5 大小写字母的使用 13

1.4.6 程序的书写格式 13

1.5 初学者最容易出现的错误 14

1.6 使用C程序解题的简单过程 15

1.6.1 程序的编辑、编译和运行的基本概念 15

1.6.2 熟悉使用环境的重要性 16

1.6.3 解题的简单过程 16

1.7 Borland C上机基本知识 19

1.8 Visual C++6.0上机指南 22

实验1 通过调试改正程序中的错误 27

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

2.1 标识符 29

2.2 变量 30

2.3 基本数据类型 31

2.4 变量的存储类型 31

2.5.1 整数常量 36

2.5 常量 36

2.5.3 字符常量 37

2.5.2 浮点常量 37

2.5.4 const修饰符 39

2.6 匈牙利命名法 41

2.7 运算符与表达式 42

2.7.1 算术表达式 42

2.7.2 递增、递减运算 43

2.7.3 赋值运算符 43

2.7.4 复合赋值运算符 44

2.7.5 赋值表达式 44

2.7.6 逗号运算符与逗号表达式 44

2.8.1 putchar函数 45

2.8 数据输出 45

2.8.2 printf函数 46

2.9 数据输入 49

2.9.1 getchar函数 49

2.9.2 scanf函数 49

2.10 典型例题及错误分析 52

2.10.1 典型例题 52

2.10.2 典型错误分析 53

实验2 如何编辑、编译、调试和运行一个实际程序 55

第3章 结构化程序设计基础 58

3.1 结构程序设计发展简史 58

3.2.1 限制使用GOTO语句 59

3.2 结构化程序设计 59

3.2.3 自顶向下的设计和调试 61

3.2.4 主程序员组的组织形式 61

3.2.2 逐步求精的设计方法 61

3.3 关系运算 62

3.3.1 关系运算符及其优先顺序 62

3.3.2 关系表达式 63

3.4 逻辑运算 63

3.4.1 逻辑运算符及其优先次序 63

3.4.2 逻辑表达式 64

3.5 控制选择 64

3.5.1 条件分支程序设计 64

3.5.2 switch开关分支程序设计 69

3.6.1 while语句 72

3.6 循环控制程序设计 72

3.6.2 do~while语句 74

3.6.3 for语句 75

3.6.4 break语句与countinue语句 79

3.7 goto语句 81

3.8 例题及错误分析 81

3.8.1 典型例题 81

3.8.2 错误分析 86

实验3 编程与调试实验 89

实验题目1 89

实验题目2 90

4.1.1 构造指针类型 94

第4章 构造类型——数组和指针 94

4.1 指针 94

4.1.2 指针类型 96

4.1.3 指针运算符 98

4.1.4 指针运算 99

4.1.5 void指针及多级指针 101

4.1.6 动态内存分配函数 102

4.1.7 指针综合例题 104

4.2 一维数组 106

4.2.1 引入一维数组 106

4.2.2 数组与指针的关系 109

4.2.4 一维字符串数组 111

4.2.6 命令行参数 112

4.2.5 指针数组 112

4.3 数组与程序控制语句综合例题 114

4.4 使用数组与指针易犯的错误 119

4.4.1 数组使用错误 119

4.4.2 指针使用不当 119

实验4 熟悉指针和数组的使用方法 122

第5章 函数与多文件编程 126

5.1 函数 126

5.1.1 函数值和return语句 126

5.1.2 函数调用形式 130

5.1.3 递归调用 136

5.2.1 宏定义 138

5.2 C预处理器 138

5.2.2 文件包含 139

5.2.3 条件编译 140

5.3 正确使用库函数 142

5.4 多个文件中的函数调用 145

5.4.1 算法知识简介 145

5.4.2 常用过程设计算法描述方法 147

5.4.3 使用多个文件进行模块化设计 152

5.4.4 头文件和函数原型的作用 153

5.4.5 组合为一个工程项目 153

5.4.6 使用文件包含的方法 155

5.4.7 #define和const的异同 156

5.5 典型例题及错误分析 157

实验5 熟悉函数及其调用方法 159

第6章 函数、函数指针和多维数组 166

6.1 指针与const限定符 166

6.1.1 左值和右值 166

6.1.2 指向常量的指针 166

6.1.3 常量指针 169

6.1.4 指向常量的常量指针 170

6.2 函数参数的传递方式 170

6.2.1 传值 170

6.2.2 传地址…………………………17I6.2.3 使用const限定数组和指针作为函数参数 174

6.3 指针函数 176

6.4 综合例题 179

6.5 函数指针 185

6.5.1 通过函数指针变量完成对函数的调用 186

6.5.2 通过函数指针变量将函数作为参数传给其他函数 189

6.6 多维数组 191

6.6.1 多维数组和指针 191

6.6.2 字符串多维数组 195

6.7 使用数组名传递地址的注意事项 197

实验6 使用函数和函数指针 198

第7章 结构类型 202

7.1 结构定义及其变量的初始化 202

7.1.1 结构定义 202

7.1.2 构变量的初始化 204

7.2 结构数组 205

7.1.3 结构变量使用的运算符 205

7.3 构指针 207

7.3.1 结构数组的指针 207

7.3.2 结构指针的初始化 209

7.4 结构与函数 210

7.4.1 结构作为函数的参数 210

7.4.2 返回结构指针的函数 211

7.4.3 结构指针的运算 212

7.5 结构的内存分配 214

7.6 引用自身的结构 215

7.7 位操作与字段结构 217

7.7.1 位操作 217

7.7.2 字段结构 219

7.8.1 定义形式 221

7.8 联合 221

7.8.2 存储空间的分配和使用 222

7.8.3 适用的操作 224

7.9 枚举 226

7.10 使用结构应注意的问题 227

实验7 使用结构指针数组 227

第8章 文件 232

8.1 文件概述 232

8.2 文件的打开与关闭 233

8.2.1 文件的打开 233

8.2.2 文件的关闭 235

8.3.1 fputc(putc)函数和fgetc(getc)函数 236

8.3 文件的读写 236

8.3.2 fread函数和fwrite函数 240

8.3.3 文件的内存分配 245

8.3.4 其他读写函数 246

8.4 文件的定位 246

8.4.1 rewind函数 247

8.4.2 fseek函数和随机读写 247

8.4.3 ftell函数 249

8.5 出错的检测 249

8.5.1 ferror函数 249

8.5.2 clearerr函数 249

8.6 典型实例 249

8.7 文件输入/输出小结 255

实验8 在函数里使用文件 256

9.1 实用程序设计基础 258

第9章 课程设计实例 258

9.2 软件测试 260

9.2.1 模块测试 260

9.2.2 组装测试 263

9.3.3 确认测试 263

9.3 软件测试基本方法 263

9.4 测试用例设计技术 268

9.4.1 逻辑覆盖法 268

9.4.2 等价划分法 272

9.4.3 边值分析法 273

9.4.4 因果图法 273

9.5 调试程序 274

9.4.5 错误猜测法 274

9.6 程序维护 275

9.7 程序设计、管理与测试实例 276

9.7.1 record程序的总体设计 276

9.7.2 record程序的模块设计 280

9.7.3 record程序的测试 290

9.7.4 性能分析和改进的建议 298

附录1 C语言新版本与老版本的主要差别 299

附录2 C语言操作符的优先级 301

附录3 C语言关键字 302

附录4 标准库解析 304

附录5 C语言操作符的高级特征 314