《“十三五”普通高等教育本科规划教材 C语言程序设计 第2版》PDF下载

  • 购买积分:12 如何计算积分?
  • 作  者:郑玲主编;魏振华,石敏,陈菲副主编
  • 出 版 社:北京:中国电力出版社
  • 出版年份:2018
  • ISBN:9787519815561
  • 页数:329 页
图书介绍:本书为“十三五”普通高等教育本科规划教材,全书共13章,内容包括:C语言程序设计初步、C语言程序基础、选择结构、循环结构、数据类型和表达式、数组、函数、指针、结构体、共用体与枚举、高级指针应用、文件、编译预处理。书中全部例题均在VisualC++6.0环境下调试通过。并免费提供全部例题的程序源代码和教学用多媒体电子课件。

第1章 C语言程序设计初步 1

1.1 C语言概述 1

1.1.1 程序设计语言 1

1.1.2 C语言简介 2

1.1.3 C++语言简介 2

1.1.4 C语言的主要特点 3

1.2 C语言程序简介 3

1.2.1 简单的C语言程序 3

1.2.2 C语言源程序的结构特点 6

1.3 运行一个C语言程序 7

1.3.1 C语言程序运行的基本步骤 7

1.3.2 Microsoft Visual C++6.0集成环境 7

1.4 小结 9

习题1 10

第2章 C语言程序基础 12

2.1 C语言程序的基本结构 12

2.2 C语言基本语法成分 13

2.2.1 C语言的字符集 13

2.2.2 标识符 13

2.2.3 关键字 14

2.2.4 运算符 14

2.2.5 分隔符 14

2.3 C语言数据类型 14

2.3.1 整型(int)数据 15

2.3.2 单精度浮点型(float)数据 16

2.3.3 字符型(char)数据 16

2.4 C语言语句 18

2.5 C语言的格式输出printf函数 19

2.5.1 格式控制字符串 19

2.5.2 输出表列 20

2.6 C语言的格式输入scanf函数 22

2.6.1 格式控制字符串 23

2.6.2 分隔符 23

2.7 小结 26

习题2 28

第3章 选择结构 31

3.1 问题的引出 31

3.2 关系运算与逻辑运算 32

3.2.1 关系运算 32

3.2.2 逻辑运算 34

3.3 二路分支的if语句 38

3.3.1 if~else~语句的基本形式 38

3.3.2 if~else~语句示例 38

3.4 单路分支的if语句 40

3.4.1 if~语句的基本形式 40

3.4.2 if~语句示例 40

3.5 多路分支的if语句 43

3.5.1 if~else if~语句的基本形式 43

3.5.2 if~else if~语句示例 43

3.6 if语句的嵌套 45

3.7 switch语句 48

3.7.1 switch语句的基本结构 48

3.7.2 switch语句示例 48

3.8 小结 53

习题3 54

第4章 循环结构 58

4.1 循环结构概述 58

4.2 while循环语句 59

4.2.1 while循环语句概述 59

4.2.2 while语句示例 61

4.3 do~while循环语句 66

4.3.1 do~while循环语句概述 66

4.3.2 do~while语句示例 67

4.4 for循环语句 69

4.4.1 for循环语句基本形式 69

4.4.2 for语句示例 72

4.4.3 三种循环的比较 73

4.5 循环嵌套 74

4.5.1 循环嵌套概述 74

4.5.2 循环嵌套示例 76

4.6 循环的辅助语句 77

4.6.1 break语句 77

4.6.2 continue语句 78

4.7 常用的循环程序设计方法 80

4.7.1 穷举法 81

4.7.2 递推法 82

4.7.3 迭代法 83

4.8 小结 84

习题4 85

第5章 数据类型和表达式 93

5.1 数据的存储格式 94

5.2 基本数据类型 95

5.2.1 整型 96

5.2.2 实型 97

5.2.3 字符型 99

5.3 运算符与表达式 102

5.3.1 算术表达式 102

5.3.2 赋值表达式 103

5.3.3 自增、自减运算符 105

5.3.4 关系表达式 106

5.3.5 逻辑表达式 108

5.3.6 条件表达式 111

5.3.7 逗号表达式 112

5.3.8 位运算 113

5.3.9 其他运算符 115

5.4 类型转换 116

5.4.1 非赋值类型转换 116

5.4.2 赋值类型转换 117

5.4.3 强制类型转换 117

5.5 小结 117

习题5 118

第6章 数组 121

6.1 一维数组 121

6.1.1 引入一维数组 121

6.1.2 一维数组的定义和引用 122

6.1.3 一维数组的存储和初始化 124

6.1.4 一维数组程序设计实例 125

6.2 二维数组 130

6.2.1 引入二维数组 130

6.2.2 二维数组的定义和引用 131

6.2.3 二维数组的存储和初始化 134

6.2.4 二维数组程序设计实例 136

6.3 字符数组与字符串 141

6.3.1 引入字符数组 141

6.3.2 字符数组的定义与初始化 142

6.3.3 字符串 143

6.3.4 字符数组与字符串程序设计实例 146

6.4 小结 149

习题6 150

第7章 函数 156

7.1 函数的概述 156

7.2 函数的简单调用 159

7.2.1 输出数字金字塔 159

7.2.2 判断素数 161

7.2.3 数值交换 163

7.3 数组作为参数的函数调用 165

7.3.1 寻找数组中最大元素 166

7.3.2 比较两个数组的大小 167

7.3.3 字符串复制 168

7.3.4 学生成绩排名 169

7.4 函数的嵌套调用 170

7.4.1 计算最大公约数和最小公倍数 171

7.4.2 计算数组元素的均方差 172

7.5 函数的递归调用 173

7.5.1 计算阶乘 174

7.5.2 汉诺塔问题 176

7.6 变量的作用域 177

7.6.1 局部变量 177

7.6.2 全局变量 179

7.7 变量的存储类型 181

7.8 小结 183

习题7 184

第8章 指针 189

8.1 认识指针 190

8.2 指针变量的声明和初始化 191

8.2.1 指针变量的声明 191

8.2.2 指针变量的初始化 192

8.3 指针变量的使用 193

8.3.1 通过指针访问变量 193

8.3.2 指针变量的地址 195

8.3.3 指针变量的算术运算 196

8.4 指针与数组 197

8.4.1 指针与一维数组 197

8.4.2 指针与字符串 201

8.4.3 指针与二维数组 202

8.5 指针数组 206

8.6 指向指针的指针 208

8.7 指针与函数 210

8.7.1 指针作为函数参数 210

8.7.2 指针作为函数返回值 213

8.7.3 指向函数的指针 213

8.8 小结 216

习题8 217

第9章 结构体 224

9.1 结构体概述 224

9.1.1 结构体类型定义 224

9.1.2 结构体变量定义 225

9.1.3 结构体变量使用 226

9.1.4 结构体嵌套定义 227

9.2 结构体变量作为函数参数 229

9.2.1 输出某学生的信息 229

9.2.2 平面上两点之间的距离 230

9.3 结构体数组 231

9.3.1 结构体数组的定义和初始化 231

9.3.2 计算学生的平均成绩 232

9.3.3 候选人得票统计程序 232

9.4 结构体指针 233

9.4.1 结构体指针概念 233

9.4.2 图书信息输出 234

9.4.3 指向结构体数组的指针 235

9.5 结构体指针作为函数参数 236

9.5.1 输出某学生信息 236

9.5.2 统计学生成绩等级 238

9.6 结构体综合应用实例 239

9.6.1 电话号码簿管理 239

9.6.2 学生成绩管理系统 242

9.7 小结 245

习题9 245

第10章 共用体与枚举 251

10.1 共用体 251

10.1.1 共用体概念 251

10.1.2 人员管理 254

10.2 枚举 255

10.2.1 枚举概念 255

10.2.2 枚举类型的应用 256

10.3 用typedef定义类型 257

10.4 小结 259

习题10 259

第11章 指针的高级应用 263

11.1 动态内存分配 263

11.1.1 动态分配内存函数 263

11.1.2 malloc函数 264

11.1.3 calloc函数 265

11.1.4 realloc函数 265

11.1.5 free函数 265

11.1.6 动态分配内存编程实例 266

11.2 链表 269

11.2.1 链表结点结构 270

11.2.2 建立和输出静态链表 270

11.2.3 建立和输出动态链表 271

11.2.4 删除链表中的结点 273

11.2.5 在链表中插入结点 275

11.2.6 链表的综合应用 277

11.2.7 链表的扩展应用 280

11.3 小结 281

习题11 281

第12章 文件 284

12.1 文件概述 284

12.1.1 将“I am a student!”写入文件 284

12.1.2 文件的概念 285

12.1.3 缓冲文件系统 286

12.1.4 文件结构与文件指针 286

12.2 文件打开与关闭 287

12.2.1 电话号码文件显示 287

12.2.2 打开文件 288

12.2.3 关闭文件 290

12.3 文本文件读/写 290

12.3.1 保存键盘读入字符及输出 290

12.3.2 字符读/写函数fgetc()和fputc() 291

12.3.3 字符串读/写函数fgets()和fputs() 293

12.3.4 格式化文件读/写函数fscanf()和fprintf() 295

12.4 二进制文件读/写 297

12.4.1 程序示例 297

12.4.2 数据块读/写函数fread()和fwrite() 298

12.4.3 文件的随机读写fseek() 298

12.5 其他相关函数 300

12.6 文件程序设计 301

12.6.1 文本文件应用 301

12.6.2 二进制文件应用 302

12.7 常见编程错误 304

12.8 小结 305

习题12 305

第13章 编译预处理 307

13.1 预处理概述 307

13.2 宏定义 307

13.2.1 无参宏定义 308

13.2.2 带参宏定义 310

13.3 文件包含 315

13.4 条件编译 316

13.5 小结 318

习题13 319

附录A C语言运算符 323

附录B ASCII表 324

附录C C语言常用库函数 326

参考文献 329