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

  • 购买积分:11 如何计算积分?
  • 作  者:郭有强,王磊,姚保峰,朱洪浩,马程编著
  • 出 版 社:北京:人民邮电出版社
  • 出版年份:2016
  • ISBN:9787115411976
  • 页数:286 页
图书介绍:本书注重培养读者的程序阅读能力和程序设计能力,是一本集知识性和实用性的C语言程序设计教材。全书由10章组成,全面系统地介绍了C语言的基本语法和基本结构、流程控制、数组、函数、指针、结构体与共用体、编译预处理、位运算、文件等内容,介绍了结构化程序设计思想和方法以及解决实际问题的技巧。

第1章 C语言概述 1

1.1 程序设计概述 1

1.1.1 程序设计语言 1

1.1.2 C语言的发展 2

1.1.3 C语言的特点 2

1.2 C语言程序的语法 3

1.2.1 C语言的字符集、词汇和语句 5

1.2.2 数据类型 8

1.2.3 常量 9

1.2.4 变量 12

1.2.5 各类数值型数据间的混合运算及数据类型转换 16

1.2.6 标准库函数和输入、输出函数 17

1.3 基本运算符和表达式 25

1.3.1 运算符、表达式、优先级和结合性 26

1.3.2 算术运算符与算术表达式 28

1.3.3 赋值运算符与赋值表达式 29

1.3.4 自增、自减运算符与表达式 32

1.3.5 关系运算符与关系表达式 33

1.3.6 逻辑运算符与逻辑表达式 34

1.3.7 逗号运算符及逗号表达式 36

1.3.8 条件运算符与条件表达式 36

1.3.9 sizeof运算符 37

1.4 C语言程序的开发过程 37

1.4.1 问题分析与算法设计 37

1.4.2 编辑程序 39

1.4.3 编译与连接 40

1.4.4 运行与调试 41

本章小结 42

习题1 42

第2章 程序流程控制 46

2.1 顺序结构程序设计 46

2.2 选择结构程序设计 47

2.2.1 if语句 47

2.2.2 switch语句 52

2.3 循环结构程序设计 55

2.3.1 while语句 55

2.3.2 do-while语句 58

2.3.3 for循环 59

2.3.4 循环的嵌套 61

2.3.5 几种循环的比较 65

2.4 几种控制语句 65

2.4.1 break语句 65

2.4.2 continue语句 66

2.4.3 return语句 66

本章小结 67

习题2 68

第3章 数组 72

3.1 一维数组 72

3.2 二维数组与多维数组 78

3.2.1 二维数组 78

3.2.2 多维数组 83

3.3 字符数组 83

3.3.1 字符数组的定义与初始化 83

3.3.2 字符串与字符数组 85

3.3.3 字符数组的输入和输出 86

3.3.4 字符串处理函数 87

本章小结 93

习题3 93

第4章 函数 100

4.1 函数 100

4.2 函数参数 106

4.2.1 值传递方式 106

4.2.2 地址传递方式 107

4.2.3 数组作为函数参数 109

4.3 函数的嵌套调用与递归调用 112

4.3.1 函数的嵌套调用 112

4.3.2 函数的递归调用 113

4.4 变量的存储类别与作用域 115

4.4.1 变量的作用域:局部变量和全局变量 115

4.4.2 变量的存储类别 118

本章小结 123

习题4 123

第5章 指针 130

5.1 地址、指针、指针变量 130

5.1.1 地址 130

5.1.2 指针 131

5.1.3 指针变量 131

5.2 指针的运算 134

5.2.1 指针的算术运算 134

5.2.2 指针的关系运算 135

5.2.3 多级指针 136

5.2.4 指向void类型的指针 137

5.3 指针变量作为函数参数 137

5.4 指针与数组 141

5.4.1 指向一维数组的指针变量 142

5.4.2 数组指针作函数参数 144

5.4.3 指向二维数组的指针变量 148

5.4.4 内存的动态分配 152

5.5 指针与字符串 154

5.5.1 字符串的指针表示 154

5.5.2 字符串指针作函数参数 156

5.5.3 字符串指针变量与字符数组的区别 157

5.6 指针数组 158

5.6.1 指针数组的概念 158

5.6.2 带参数的main函数 161

5.7 指针与函数 163

5.7.1 指针型函数 163

5.7.2 指向函数的指针变量 164

本章小结 165

习题5 167

第6章 结构体与共用体 173

6.1 结构体类型的定义与应用 173

6.1.1 结构体类型的定义 173

6.1.2 结构体变量的定义与引用 174

6.2 结构体数组的定义与应用 178

6.2.1 对结构体数组元素的操作 178

6.2.2 结构体数组作为函数参数 180

6.3 指向结构体的指针 184

6.3.1 指向结构体变量的指针 184

6.3.2 指向结构体数组的指针 185

6.4 链表 186

6.4.1 单链表的建立 186

6.4.2 单链表的基本操作 191

6.5 共用体类型的定义与应用 196

6.6 枚举类型的定义与应用 200

6.7 typedef重定义类型名 201

本章小结 202

习题6 203

第7章 编译预处理 209

7.1 编译预处理 209

7.2 宏定义与宏替换 209

7.3 文件包含 214

7.4 条件编译 215

本章小结 218

习题7 218

第8章 位运算 222

8.1 数的机器码表示方法 222

8.1.1 字节与位 222

8.1.2 原码、反码、补码 222

8.2 位运算符和位运算 223

8.2.1 按位取反运算符~ 224

8.2.2 按位与运算符& 224

8.2.3 按位或运算符| 225

8.2.4 按位异或运算符^ 226

8.2.5 左位移运算符<< 226

8.2.6 右位移运算符>> 228

8.3 位域(位段) 229

8.3.1 位域的定义和位域变量的说明 229

8.3.2 位域的使用 231

本章小结 232

习题8 232

第9章 文件 235

9.1 文件及文件指针 235

9.1.1 文件的概念 235

9.1.2 文件指针 236

9.2 文件的打开与关闭 237

9.2.1 文件的打开(fopen函数) 237

9.2.2 文件关闭函数(fclose函数) 238

9.3 文件的读写 238

9.3.1 字符读写函数fgetc和fputc 239

9.3.2 字符串读写函数fgets和fputs 241

9.3.3 数据块读写函数fread和fwrite 242

9.3.4 格式化读写函数fscanf和fprintf 245

9.4 文件的随机读写 246

9.4.1 文件定位 246

9.4.2 文件的随机读写 247

9.5 文件检测函数 249

本章小结 249

习题9 249

第10章 综合实训 253

10.1 通信录管理程序 253

10.1.1 项目要求 253

10.1.2 项目分析 253

10.1.3 总体设计 253

10.1.4 代码实现 254

10.1.5 测试结果 261

10.2 学生成绩管理系统 262

10.2.1 项目要求 262

10.2.2 项目分析 262

10.2.3 总体设计 262

10.2.4 代码实现 263

10.2.5 测试结果 275

本章小结 275

附录A 标准ASCII码表 276

附录B 运算符的优先级和结合性 278

附录C C语言的库函数 280

参考文献 286