《C语言程序设计自学教材 中国高等院校计算机基础教育课程体系规划教材 C程序设计教程 第3版》PDF下载

  • 购买积分:11 如何计算积分?
  • 作  者:谭浩强著
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2018
  • ISBN:9787302503828
  • 页数:287 页
图书介绍:本书由浅入深地介绍什么是程序,怎样编写程序,怎样调试和运行程序。以程序设计贯穿始终,使学生掌握程序设计的基本知识和方法。本书将算法与C语言的语法紧密结合,而不是孤立地介绍语法。作者精心考虑怎样将算法与语法紧密而巧妙地结合起来。按照“算法是程序的灵魂,语言是编程的工具”的思路组织全书。

第1章 程序设计和C语言 1

1.1 计算机与程序、程序设计语言 1

1.2 C语言的特点 2

1.3 简单的C语言程序 3

1.4 C语言程序的结构 6

1.5 运行C程序的步骤与方法 8

1.6 程序设计的任务 10

1.7 算法——程序的灵魂 11

1.7.1 程序是什么 11

1.7.2 什么是算法 12

1.7.3 怎样表示一个算法 13

1.8 结构化程序设计方法 19

1.9 学习程序设计,培养科学思维 21

本章小结 23

习题 23

第2章 最简单的C程序设计——顺序程序设计 25

2.1 顺序程序设计举例 25

2.2 数据的类型及存储形式 29

2.2.1 C语言的数据类型 29

2.2.2 数据的表现形式——常量和变量 29

2.2.3 整型数据 31

2.2.4 字符型数据 36

2.2.5 浮点型数据 41

2.3 用表达式进行数据的运算 43

2.3.1 C表达式 43

2.3.2 C运算符 44

2.3.3 运算符的优先级与结合性 46

2.3.4 不同类型数据间的混合运算 46

2.3.5 强制类型转换 47

2.4 最常用的C语句——赋值语句 48

2.4.1 C语句综述 48

2.4.2 赋值表达式 50

2.4.3 赋值语句 53

2.5 数据的输入输出 56

2.5.1 C语言中输入输出的概念 56

2.5.2 用printf函数输出数据 57

2.5.3 用scanf函数输入数据 62

2.5.4 字符数据的输入输出 65

本章小结 67

习题 68

第3章 选择结构程序设计 71

3.1 简单的选择结构程序 71

3.2 选择结构中的关系运算 73

3.2.1 关系运算符及其优先次序 73

3.2.2 关系表达式 73

3.3 选择结构中的逻辑运算 74

3.3.1 逻辑运算符及其优先次序 75

3.3.2 逻辑表达式 76

3.4 用if语句实现选择结构 78

3.4.1 if语句的三种形式 78

3.4.2 if语句的嵌套 80

3.5 用条件表达式实现选择结构 83

3.6 利用switch语句实现多分支选择结构 86

3.7 选择结构程序综合举例 88

本章小结 94

习题 94

第4章 循环结构程序设计 96

4.1 程序需要循环 96

4.2 用while语句和do…while语句实现循环 96

4.2.1 用while语句实现循环 96

4.2.2 用do…while语句实现循环 98

4.2.3 while循环和do…while循环的比较 99

4.2.4 递推与迭代 101

4.3 用for语句实现循环 104

4.3.1 for语句的执行过程 104

4.3.2 for语句的各种形式 106

4.3.3 for循环应用举例 108

4.4 循环的嵌套 110

4.5 用break语句和continue语句改变循环状态 110

4.5.1 用break语句提前退出循环 110

4.5.2 用continue语句提前结束本次循环 111

4.6 几种循环的比较 113

4.7 循环程序举例 113

本章小结 116

习题 117

第5章 利用数组处理批量数据 119

5.1 数组的作用 119

5.2 怎样定义和引用一维数组 120

5.2.1 怎样定义一维数组 120

5.2.2 怎样引用一维数组元素 120

5.2.3 一维数组的初始化 121

5.2.4 利用一维数组的典型算法——递推与排序 122

5.3 怎样定义和引用二维数组 125

5.3.1 怎样定义二维数组 125

5.3.2 怎样引用二维数组的元素 126

5.3.3 二维数组程序举例 126

5.3.4 二维数组的初始化 129

5.4 利用字符数组处理字符串数据 130

5.4.1 怎样定义字符数组 130

5.4.2 字符数组的初始化 131

5.4.3 引用字符数组的元素 132

5.4.4 字符串和字符串结束标志 133

5.4.5 字符数组的输入输出方法 135

5.4.6 有关字符处理的算法 136

5.4.7 利用字符串处理函数 139

本章小结 142

习题 143

第6章 利用函数进行模块化程序设计 145

6.1 为什么要使用函数 145

6.1.1 函数是什么 145

6.1.2 程序和函数 146

6.2 怎样定义函数 147

6.2.1 为什么要定义函数 147

6.2.2 怎样定义无参函数 148

6.2.3 怎样定义有参函数 148

6.3 函数参数和函数的值 149

6.3.1 形式参数和实际参数 149

6.3.2 函数的返回值 150

6.4 函数的调用 151

6.4.1 函数调用的一般形式 151

6.4.2 调用函数的方式 152

6.4.3 对被调用函数的声明和函数原型 152

6.5 函数的嵌套调用 155

6.6 函数的递归调用 157

6.6.1 什么是函数的递归调用 157

6.6.2 递归算法分析 157

6.6.3 用递归函数实现递归算法 160

6.7 数组作为函数参数 164

6.8 函数应用举例——编写排序程序 168

6.9 变量的作用域和生存期 171

6.9.1 局部变量 171

6.9.2 全局变量 171

6.9.3 变量的存储方式和生存期 172

6.9.4 作用域与生存期小结 176

6.10 关于变量的声明和定义 178

本章小结 179

习题 180

第7章 善于使用指针 182

7.1 什么是指针 182

7.2 变量的指针和指向变量的指针变量 184

7.2.1 怎样定义指针变量 184

7.2.2 怎样引用指针变量 187

7.2.3 指针变量作为函数参数 189

7.3 通过指针引用数组 194

7.3.1 数组元素的指针 194

7.3.2 指针的运算 195

7.3.3 通过指针引用数组元素 196

7.3.4 用数组名作函数参数 200

7.4 通过指针引用字符串 206

7.4.1 引用字符串的方法 206

7.4.2 字符指针作函数参数 209

7.4.3 对使用字符指针变量和字符数组的归纳 212

本章小结 215

习题 219

第8章 根据需要创建数据类型 221

8.1 定义和引用结构体变量 221

8.1.1 怎样创建结构体类型 221

8.1.2 怎样定义结构体类型变量 223

8.1.3 引用结构体变量 225

8.2 使用结构体数组 228

8.2.1 定义结构体数组 228

8.2.2 结构体数组应用举例 230

8.3 结构体指针 231

8.3.1 指向结构体变量的指针 231

8.3.2 指向结构体数组的指针 233

8.3.3 用结构体变量和结构体变量的指针作函数参数 234

8.4 用指针处理链表 237

8.4.1 什么是链表 237

8.4.2 建立简单的静态链表 239

8.4.3 建立动态链表 240

8.4.4 输出链表 243

8.5 使用枚举类型 246

8.5.1 什么是枚举和枚举变量 246

8.5.2 枚举型数据应用举例 247

本章小结 250

习题 251

第9章 利用文件保存数据 252

9.1 C文件的有关概念 252

9.1.1 什么是文件 252

9.1.2 文件名 253

9.1.3 文件的分类 253

9.1.4 文件缓冲区 254

9.1.5 文件类型指针 254

9.1.6 文件位置标记 255

9.2 文件的打开与关闭 256

9.2.1 用fopen函数打开文件 256

9.2.2 用fclose函数关闭文件 257

9.3 文件的顺序读写 258

9.3.1 向文件读写一个字符 258

9.3.2 向文件读写一个字符串 260

9.3.3 对文件进行格式化读写 263

9.3.4 按二进制方式对文件进行读写 264

9.4 文件的随机读写 264

9.4.1 文件位置标记的定位 264

9.4.2 对文件进行随机读写 266

本章小结 267

习题 269

附录A 常用字符与ASCII代码对照表 270

附录B C语言中的关键字 271

附录C 运算符和结合性 272

附录D C语言常用语法提要 275

附录E C库函数 280

参考文献 287