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

  • 购买积分:13 如何计算积分?
  • 作  者:杜忠友,刘浩,孙晓燕,张海林,娄晓红编著
  • 出 版 社:北京:中国水利水电出版社
  • 出版年份:2014
  • ISBN:9787517020080
  • 页数:352 页
图书介绍:本书主要内容包括:C语言概述,数据类型、运算符与表达式,顺序结构程序设计,选择结构程序设计,循环结构程序设计,数组与字符串,函数,编译预处理,指针,结构体、共用体、枚举和用户定义的类型,位运算,文件,上机实验与指导。

第1章 C语言概述 1

1.1 C语言的发展史及特点 1

1.2 C语言的特点 2

1.3简单的C语言程序、C语言程序的结构和书写格式 3

1.3.1简单的C语言程序 3

1.3.2 C语言程序的结构 6

1.3.3 C语言程序的书写格式 6

1.4 C语言程序的开发过程及开发环境 7

1.4.1 C语言程序的开发过程 7

1.4.2 Turbo C集成开发环境及其使用 8

1.4.3 Visual C++开发环境及其使用 11

1.5算法和结构化(模块化)程序设计 16

1.5.1算法 16

1.5.2结构化(模块化)程序设计 18

1.5.3简单程序的设计 19

习题1 20

第2章 数据类型、运算符与表达式 22

2.1 C语言的数据类型 22

2.2常量、变量 24

2.2.1常量 24

2.2.2变量 27

2.2.3变量赋初值 29

2.3 C语言的运算符和表达式 29

2.3.1算术运算符和算术表达式 30

2.3.2赋值运算符和赋值表达式 32

2.3.3复合的赋值运算符和赋值表达式 32

2.3.4逗号运算符和逗号表达式 33

2.4不同类型数据之间的转换 34

2.4.1自动类型转换 35

2.4.2强制类型转换 36

习题2 36

第3章 顺序结构程序设计 39

3.1顺序结构程序的简单示例及特点 39

3.2 C语言的语句概述 40

3.2.1复合语句 40

3.2.2空语句 41

3.2.3表达式语句 41

3.2.4控制语句 42

3.2.5函数调用语句 42

3.3数据输入/输出 42

3.3.1格式输出函数——printf函数 43

3.3.2格式输入函数——scanf函数 47

3.3.3字符输出函数——putchar函数 51

3.3.4字符输入函数——getchar函数 52

3.3.5数据输入/输出的常用格式 53

3.4赋值语句 54

3.5应用举例 54

习题3 57

第4章 选择结构程序设计 59

4.1关系运算符和关系表达式 59

4.1.1关系运算符及其优先顺序 60

4.1.2关系表达式 60

4.2逻辑运算符和逻辑表达式 61

4.2.1逻辑运算符及其优先顺序 61

4.2.2逻辑表达式 61

4.3 if语句 62

4.3.1 if语句与单分支结构 62

4.3.2 if…else语句与两分支结构 63

4.3.3 else…if语句与多分支结构 64

4.3.4 if…else语句的嵌套与分支的嵌套结构 66

4.4条件表达式构成的选择结构 68

4.4.1条件运算符 68

4.4.2条件表达式与两分支结构 68

4.5 switch语句 69

4.5.1 break语句 69

4.5.2 switch语句与多分支结构 70

4.6 goto语句和标号 74

4.7应用举例 75

习题4 79

第5章 循环结构程序设计 83

5.1 while语句与用while语句构成的循环结构 83

5.1.1 while语句 83

5.1.2 while构成的循环结构 84

5.2 do…while语句与用do…while语句构成的循环结构 86

5.2.1 do…while语句 86

5.2.2 do…while构成的循环结构 86

5.3 for语句与用for语句构成的循环结构 88

5.3.1 for语句 88

5.3.2 for构成的循环结构 88

5.4 3种循环的比较和嵌套 90

5.4.1 3种循环的比较 90

5.4.2 3种循环的嵌套 91

5.5循环结构中的break语句和continue语句 93

5.5.1循环结构中的break语句 93

5.5.2 continue语句 95

5.6应用举例 97

习题5 103

第6章 数组与字符串 109

6.1一维数组 110

6.1.1一维数组的定义 110

6.1.2一维数组的初始化 111

6.1.3一维数组的引用 112

6.1.4一维数组应用举例 112

6.2二维数组 119

6.2.1二维数组的定义 119

6.2.2二维数组的初始化 120

6.2.3二维数组的引用 120

6.2.4二维数组应用举例 121

6.3多维数组 123

6.4字符数组和字符串 125

6.4.1字符数组的定义 125

6.4.2字符数组的初始化 125

6.4.3字符数组的引用 126

6.4.4字符串的输入 127

6.4.5字符串的输出 128

6.4.6字符串运算函数 129

6.4.7二维字符数组 132

6.4.8字符数组和字符串应用举例 133

习题6 135

第7章 函数 140

7.1一个示例 141

7.2函数的定义 141

7.2.1有参函数定义的一般格式 141

7.2.2无参函数定义的一般格式 142

7.3函数的返回值 143

7.3.1 return语句 143

7.3.2函数的返回值 143

7.4函数的调用 146

7.4.1函数的调用格式 146

7.4.2函数调用时的语法要求 148

7.4.3调用函数和被调函数之间的数据传递 148

7.5函数的声明 149

7.6函数的嵌套调用 150

7.7函数的递归调用 151

7.8库函数的调用 154

7.9数组作函数参数 159

7.9.1数组元素作函数实参 159

7.9.2数组名作函数参数 160

7.10函数应用举例 162

7.11局部变量和全局变量 168

7.11.1局部变量 168

7.11.2全局变量 169

7.12变量的存储属性 170

7.12.1变量的存储类型 170

7.12.2局部变量使用的存储类型 171

7.12.3全局变量使用的存储类型 175

7.13函数的存储属性 179

7.13.1内部函数 180

7.13.2外部函数 180

7.14运行一个多文件的程序 180

7.14.1用Turbo C运行 180

7.14.2用 Visual C++运行 181

习题7 182

第8章 编译预处理 186

8.1宏定义 186

8.1.1不带参数的宏定义 186

8.1.2带参数的宏定义 188

8.2文件包含 189

8.3条件编译 192

习题8 195

第9章 指针 196

9.1地址、指针的概念和指针变量 196

9.1.1地址与指针 196

9.1.2指针运算符&和 197

9.1.3指针变量的定义 197

9.1.4指针变量的赋值 198

9.1.5指针变量的使用 198

9.1.6指针运算 202

9.2指针与函数 202

9.2.1指针作函数参数 203

9.2.2指向函数的指针(函数指针) 205

9.2.3返回指针的函数(指针函数,函数的返回值是指针) 210

9.3指针与数组 213

9.3.1指针与一维数组 213

9.3.2指针与二维数组 220

9.3.3指针数组 224

9.4指针与字符串 226

9.4.1用字符指针指向一个字符串 226

9.4.2字符指针作函数参数 228

9.5指向指针的指针 229

9.6 main函数的参数 230

9.7指针与内存的动态存储分配 232

9.7.1内存动态存储分配函数 232

9.7.2内存动态存储分配函数的应用 234

习题9 235

第10章 结构体、共用体和枚举类型 240

10.1结构体和结构体变量 240

10.1.1结构体类型的定义 240

10.1.2结构体变量的定义 241

10.1.3结构体变量的初始化 243

10.1.4结构体变量的引用 244

10.1.5结构体变量应用举例 245

10.2结构体数组 246

10.2.1结构体数组的定义 246

10.2.2结构体数组的初始化 247

10.2.3结构体数组的引用 247

10.2.4结构体数组应用举例 248

10.3结构体指针 249

10.3.1指向一个结构体变量的指针 249

10.3.2指向一个结构体数组的指针 251

10.4结构体与函数 252

10.4.1结构体的成员作函数参数 252

10.4.2结构体变量作函数参数 253

10.4.3指向结构体的指针作函数参数 254

10.4.4结构体数组作函数参数 256

10.4.5函数的返回值是结构体类型 259

10.4.6函数的返回值是指向结构体变量或结构体数组元素的指针 264

10.5链表 267

10.5.1用指针和结构体构成链表 267

10.5.2链表的基本操作 268

10.6共用体 273

10.6.1共用体类型的定义 273

10.6.2共用体变量的定义 273

10.6.3共用体变量的引用 274

10.6.4共用体应用举例 275

10.7枚举 277

10.7.1枚举类型的定义 277

10.7.2枚举变量的定义 278

10.7.3枚举变量的引用 278

10.7.4枚举应用举例 280

10.8用typedef定义新类型名 281

习题10 282

第11章 位运算 284

11.1位运算简介 284

11.1.1位逻辑运算符 284

11.1.2移位运算符 287

11.2位赋值运算符 288

11.3位段 288

11.4应用举例 291

习题11 294

第12章 文件 295

12.1 C文件的概念 295

12.2文件的打开和关闭 296

12.2.1文件类型指针 296

12.2.2打开文件——fopen函数 297

12.2.3关闭文件——fclose函数 298

12.3文件的顺序读/写 299

12.3.1对文件读写一个字符——fgetc和fputc函数 299

12.3.2对文件读写一个字符串——fgets函数和fputs函数 302

12.3.3格式化方式读写文件——fscanf函数和fprintf函数 304

12.3.4用二进制方式对文件读写一个数据块——fread函数和fwrite函数 305

12.4文件的随机读写及出错检测 308

12.4.1顺序存取和随机存取 308

12.4.2使位置指针指向文件开头——rewind函数 309

12.4.3使位置指针指向文件的某个位置——fseek函数 309

12.4.4得到文件的当前位置——ftell函数 310

12.4.5出错检测函数 311

12.5应用举例 311

习题12 312

第13章 实验与指导 314

实验1C程序的运行环境和运行C程序的方法 314

实验2数据类型、运算符与表达式 315

实验3顺序结构程序设计 317

实验4顺序结构程序设计(续) 319

实验5选择结构程序设计 319

实验6选择结构程序设计(续) 321

实验7循环结构程序设计 321

实验8循环结构程序设计(续) 323

实验9选择、循环结构程序设计 323

实验10一维数组 325

实验11二维数组 325

实验12字符数组和字符串 326

实验13函数(一) 328

实验14函数(二) 328

实验15函数(三) 329

实验16指针(一) 331

实验17指针(二) 332

实验18指针(三) 333

实验19结构体与链表 333

实验20共用体与枚举 334

实验21位操作 334

实验22文件 335

附录A ASCII字符编码一览表 336

附录B C语言的关键字及其用途 338

附录C C运算符的优先级别和结合方向 340

附录D C语言库函数 342

附录E 转义字符及含义 348

附录F printf函数的附加格式说明字符(修饰符) 349

附录G scanf函数的附加格式说明字符(修饰符) 351

参考文献 352