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

  • 购买积分:10 如何计算积分?
  • 作  者:白忠建,杨剑,丁晓峰编著
  • 出 版 社:北京:人民邮电出版社
  • 出版年份:2013
  • ISBN:9787115325716
  • 页数:228 页
图书介绍:本书主要内容共10章,包括:第1章引论、第2章数据类型和运算、第3章顺序结构、第4章选择结构、第5章循环结构、第6章函数、第7章数组、第8章指针、第9章结构体、第10章文件等内容。每章前有问题引入,每章后有本章小结和习题。

第1章 引论 1

1.1程序设计概述 1

1.1.1为什么需要程序设计 2

1.1.2什么是程序设计语言 4

1.1.3程序设计语言的多样性 4

1.1.4高级程序设计语言的基本结构 5

1.1.5高级程序设计语言的开发过程 6

1.1.6高级程序设计语言的标准化 7

1.2计算机系统 8

1.2.1硬件系统 8

1.2.2软件系统 9

1.2.3关于使用计算机系统的一些话题 10

1.3 C语言程序设计起步 10

1.3.1 C程序的基本结构 10

1.3.2 C程序的设计流程 13

1.3.3 C程序的编辑、编译、链接和运行 15

1.4关于数据结构和算法 17

1.5贯穿全书的案例 18

本章小结 19

第2章 数据类型和运算 20

2.1问题的引入 20

2.2数据类型 21

2.2.1整数类型 22

2.2.2字符类型 22

2.2.3浮点类型 24

2.3标识符与变量 25

2.3.1标识符 25

2.3.2变量 26

2.4常量和枚举类型 28

2.4.1字面常量、命名常量和符号常量 28

2.4.2枚举类型 30

2.5运算符和表达式 30

2.5.1运算符和表达式概述 30

2.5.2赋值运算符和赋值表达式 31

2.5.3算术运算符和算术表达式 32

2.5.4关系运算符和关系表达式 34

2.5.5逻辑运算符和逻辑表达式 35

2.5.6条件运算符和条件表达式 35

2.5.7逗号运算符和逗号表达式 36

2.5.8移位运算符和移位表达式 36

2.5.9位运算符和位运算表达式 37

2.5.10复合赋值运算符和复合赋值表达式 37

2.5.11 sizeof运算符 38

2.6混合运算 39

2.6.1运算符的优先级规则 39

2.6.2类型转换 40

2.7编程实例 42

2.8 C程序的书写风格 45

2.9解决方案 45

本章小结 46

第3章 控制结构——顺序结构 47

3.1问题引入 47

3.2 C语句概述 48

3.2.1 C语句的分类 48

3.2.2非语句的情况 49

3.3顺序控制结构 50

3.4字符输入、输出 51

3.4.1 getchar()函数(字符输入函数 51

3.4.2 putchar()函数(字符输出函数) 52

3.5格式化输入、输出 52

3.5.1格式化输出函数printf() 53

3.5.2格式化输入函数scanf() 55

3.6编译预处理 58

3.6.1文件包含 59

3.6.2宏替换 59

3.6.3条件编译 60

3.7解决方案 60

本章小结 61

第4章 控制结构——选择结构 62

4.1问题引入 62

4.2选择结构概述 62

4.3 if语句 63

4.3.1单/双路选择if语句 63

4.3.2多路选择if-else if语句 65

4.3.3 if语句的嵌套 67

4.4多路选择switch语句 69

4.4.1 switch语句的基本语法 69

4.4.2使用break语句终止switch语句的执行 70

4.4.3 switch语句与if-else if 语句的异同 73

4.4.4在switch语句中声明变量 73

4.5解决方案 73

本章小结 75

第5章 控制结构——循环结构 76

5.1问题引入 76

5.2循环结构的概述 76

5.3 while语句 77

5.3.1 while语句的语法 77

5.3.2死循环 78

5.3.3程序实例 79

5.4 do-while语句 80

5.4.1 do-while语句的语法 80

5.4.2迭代法 80

5.5 for语句 83

5.5.1 for语句的语法 83

5.5.2 for语句的变体形式 83

5.5.3穷举法 84

5.6循环嵌套 86

5.7 break和continue语句 88

5.7.1 break语句 88

5.7.2 continue语句 89

5.8循环的应用 90

5.8.1迭代法的应用 90

5.8.2处理多个字符输入 90

5.8.3穷举法应用 92

5.9解决方案 94

本章小结 94

第6章 函数 95

6.1问题引入 95

6.2函数的声明和定义 96

6.2.1函数的分类 96

6.2.2函数原型的声明 96

6.2.3函数的定义 97

6.2.4 函数类型 98

6.3函数的调用 99

6.3.1函数的参数 99

6.3.2函数的返回值和return 语句 100

6.3.3函数的调用过程 102

6.3.4函数的嵌套调用 102

6.4函数的设计 103

6.5存储分类 105

6.5.1局部变量和全局变量 105

6.5.2自动变量和静态变量 107

6.6外部声明 109

6.7函数递归 110

6.8解决方案 114

本章小结 115

第7章 数组 116

7.1问题引入 116

7.2一维数组 117

7.2.1一维数组的声明 117

7.2.2一维数组元素的使用 118

7.2.3一维数组的初始化 119

7.2.4一维数组作为函数的参数 121

7.2.5一维数组的应用 123

7.3二维数组 129

7.3.1二维数组的声明和使用 129

7.3.2二维数组的初始化 131

7.3.3二维数组作为函数的参数 133

7.3.4二维数组的应用 134

7.3.5二维数组和一维数组的关系 136

7.4字符数组 138

7.4.1字符数组、字符串及其初始化 138

7.4.2字符串处理函数 140

7.4.3一维、二维字符数组和字符串处理函数的应用 142

7.5高维数组 144

7.6解决方案 145

本章小结 148

第8章 指针 149

8.1问题引入 149

8.2指针的声明和使用 150

8.2.1指针变量的声明 150

8.2.2指针的使用 151

8.2.3 const作用于指针 154

8.3指针的运算 156

8.3.1指针的赋值运算 156

8.3.2指针的比较运算 157

8.3.3指针的算术运算 157

8.4指针和数组 159

8.4.1指向数组元素的指针 159

8.4.2指向字符的指针、字符数组和字符串 162

8.4.3指针数组 164

8.4.4指向数组的指针 166

8.5指向指针的指 167

8.6指针和函数 168

8.6.1指针作为函数的参数 168

8.6.2 函数返回指针 173

8.6.3指向函数的指针 174

8.6.4使用typedef来简化类型 178

8.7动态内存管理 179

8.8解决方案 182

本章小结 182

第9章 结构体 183

9.1问题引入 183

9.2结构体类型声明和使用 184

9.2.1结构体类型声明 184

9.2.2结构体变量声明 186

9.2.3结构体变量的使用和初始化 187

9.2.4何时使用结构体 189

9.3结构体数组 189

9.4结构体与指针 191

9.4.1指针变量作为结构体的成员 191

9.4.2指向结构体变量的指针 192

9.4.3指向结构体数组元素的指针 195

9.5结构体与函数 198

9.5.1结构体变量作为函数参数传递 198

9.5.2函数返回结构体类型值 201

9.6位域 204

9.7联合体 205

9.8解决方案 205

本章小结 207

第10章 文件 208

10.1问题引入 208

10.2 C文件概述 208

10.3文件的打开和关闭 210

10.3.1 fopen()函数(文件打开函数) 210

10.3.2 fclose()函数 211

10.4文件的读写 212

10.4.1字符的读写 212

10.4.2格式化读写 213

10.4.3字符串读写 214

10.4.4数据块读写 216

10.5关于文件操作的其他函数 217

10.5.1 rewind()函数 217

10.5.2 fseek()函数 218

10.5.3 ftell()函数 218

10.5.4 ferror()函数 219

10.5.5 feof()函数 219

10.6解决方案 219

附录A C99关键字 222

附录B C语言的运算符 223

附录C 运算符的优先级和结合性 224

附录D ASCII码表 225

附录E 标准C语言头文件 227

参考文献 228