《C语言标准教程》PDF下载

  • 购买积分:13 如何计算积分?
  • 作  者:王浩等编著
  • 出 版 社:北京:化学工业出版社
  • 出版年份:2011
  • ISBN:9787122098375
  • 页数:364 页
图书介绍:本书本着零基础学习C语言的精神,分4篇介绍了C语言和程序设计的相关知识。主要内容包括:前置知识;基础知识;能力提高;高级实践。

第1篇 前置知识 2

第1章 C语言初步认识 2

1.1了解程序及其设计 2

1.1.1程序是什么 2

1.1.2程序设计与程序设计语言 3

1.2结构化程序设计 3

1.3 C语言的初步知识 4

1.3.1 C语言的历史 4

1.3.2 C语言程序的特点 5

1.3.3 C语言程序的构成 6

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

1.4程序生成的工具 7

1.4.1编译器的概念 8

1.4.2连接器的概念 8

1.5一个简单的C语言程序 8

1.5.1学习写第一个C语言程序 9

1.5.2分析C语言程序的组成部分 9

1.5.3运行这个程序 10

1.5.4牛刀小试 10

1.6本章小结 11

第2篇 基础知识 14

第2章 C语言基础 14

2.1了解电脑内存的运行方式 14

2.2认识和使用标识符 15

2.2.1标识符的命名规则 15

2.2.2标识符的分类 16

2.3什么是变量 17

2.3.1了解变量 17

2.3.2声明变量 17

2.3.3初始化变量 18

2.4什么是常量 19

2.4.1认识常量 19

2.4.2整型常量 19

2.4.3浮点型常量 20

2.4.4字符常量 21

2.4.5字符串常量 21

2.4.6符号常量 22

2.5数据存储的基本类型 23

2.5.1存储整型数据 23

2.5.2存储实型数据 26

2.5.3存储字符型数据 27

2.6运算符和表达式 30

2.6.1在C语句中使用算术运算符 30

2.6.2赋值运算符 32

2.6.3自增、自减运算符 34

2.6.4逗号运算符 35

2.6.5 sizeof运算符 36

2.6.6关系运算符 37

2.6.7运算符的优先级和括号 39

2.7数据类型的转换 41

2.7.1隐式自动转换 41

2.7.2显式强制转换 45

2.8本章小结 45

2.9本章习题 46

第3章 使用顺序结构设计C语言程序 47

3.1语句与表达式 47

3.1.1表达式语句与空语句 47

3.1.2复合语句 48

3.2控制屏幕打印 48

3.2.1 putchar()函数 48

3.2.2 printf()函数 49

3.2.3标准错误流 51

3.3读取键盘输入 51

3.3.1 getchar()函数 51

3.3.2 getch()函数和getche()函数 52

3.3.3 scanf()函数 53

3.4综合示例 56

3.5本章小结 57

3.6本章习题 57

第4章 使用选择结构设计C语言程序 59

4.1用逻辑运算符实现选择结构 59

4.1.1逻辑运算符的使用 59

4.1.2逻辑运算符的优先级与结合性 60

4.1.3使用逻辑运算符的程序示例 61

4.2用if语句实现选择结构 62

4.2.1 if语句的使用方法 62

4.2.2使用if语句的程序示例 63

4.2.3使用if…else结构实现多项选择 63

4.2.4使用if…else结构的程序示例 64

4.2.5 if语句的嵌套使用 66

4.2.6使用if语句嵌套的程序示例 69

4.3用条件运算符实现简单的选择结构 72

4.4用多分支条件选择语句switch实现选择结构 73

4.4.1 switch语句的结构 74

4.4.2 break语句在switch语句中的使用 74

4.4.3多个执行结果共用一个条件 77

4.4.4使用switch语句的程序示例 78

4.5本章小结 79

4.6本章习题 79

第5章 使用循环结构设计C语言程序 81

5.1 while循环语句 81

5.1.1 while循环语句的结构和功能 81

5.1.2 while循环语句的程序示例 82

5.2 do-while循环语句 84

5.2.1比较do-while循环语句与while循环语句的差异 84

5.2.2 do-while循环语句的程序示例 85

5.3 for循环语句 86

5.3.1 for循环语句的结构和功能 86

5.3.2 for循环语句的程序示例 87

5.3.3 for循环语句的几种不同格式 88

5.3.4在for循环语句中添加逗号运算符 90

5.4高级流程控制语句 91

5.4.1用goto语句在程序中任意跳转 92

5.4.2用break语句中断循环 93

5.4.3用continue语句跳出当前循环 94

5.5各种循环语句的嵌套使用 96

5.6本章小结 99

5.7本章习题 99

第3篇 能力提高篇 102

第6章 用函数把程序分块 102

6.1函数的概念 102

6.1.1什么是函数 102

6.1.2函数的优点 102

6.1.3 main函数的概念及用途 103

6.2函数的定义 103

6.2.1定义一个无参函数 103

6.2.2定义一个有参函数 1

6.2.3函数的参数 106

6.2.4函数的返回值 107

6.2.5空函数 109

6.3函数的调用原理和声明 109

6.3.1函数的声明 109

6.3.2函数调用表达式 111

6.3.3函数调用的方式 111

6.3.4嵌套调用 112

6.4递归函数 113

6.5变量的作用域和存储类别 117

6.5.1什么是变量的作用域 117

6.5.2块结构 117

6.5.3局部变量和局部变量的作用域 118

6.5.4全局变量和全局变量的作用域 118

6.5.5变量的存储类别 119

6.5.6静态型变量存储 120

6.5.7自动型变量存储 122

6.6内部函数与外部函数 123

6.6.1内部函数 124

6.6.2外部函数 125

6.7本章小结 127

6.8本章习题 127

第7章 数组 129

7.1数组的概念及内存占用 129

7.1.1数组的概念 129

7.1.2数组在内存中的存储 129

7.2一维数组 130

7.2.1一维数组的定义 131

7.2.2一维数组的初始化 131

7.2.3一维数组元素的引用 132

7.2.4一维数组的应用 133

7.3二维数组 134

7.3.1二维数组的定义 134

7.3.2二维数组的初始化 136

7.3.3二维数组元素的引用 137

7.3.4二维数组的应用 137

7.4字符数组 139

7.4.1字符数组的定义 139

7.4.2字符串与字符数组 139

7.4.3字符数组的初始化 139

7.4.4字符数组的输入和输出 140

7.4.5使用scanf()函数接收字符串 141

7.4.6字符数组的应用 142

7.5字符数组元素作为函数参数 143

7.6综合示例 144

7.7本章小结 147

7.8本章习题 147

第8章 字符串 149

8.1字符串的长度 149

8.2字符串拷贝函数 150

8.2.1 strcpy()函数 150

8.2.2 strncpy()函数 151

8.3字符串连接函数 152

8.3.1 strcat()函数 152

8.3.2 strncat()函数 152

8.4字符串比较函数 153

8.4.1 Strcmp()函数两个完整的字符串之间的比较 153

8.4.2 Strncmp()函数 154

8.4.3 Strcmpi()函数 155

8.5字符串查找函数 157

8.5.1 strchr()函数 157

8.5.2 strrchr()函数 158

8.5.3 strcspn()函数 158

8.5.4 strspn()函数 158

8.5.5 strpbrk()函数 159

8.5.6 strstr()函数 160

8.6其他的字符串处理函数 161

8.6.1 strrev()函数 162

8.6.2 strset()函数和stmset()函数 162

8.7字符检查函数 163

8.7.1 isdigit()函数 163

8.7.2 isalpha()函数 164

8.7.3检查函数的使用 164

8.8将字符串转换成数字 165

8.9本章小结 166

8.10本章习题 166

第9章 指针 167

9.1指针与地址 167

9.1.1变量的地址 167

9.1.2指针概述 168

9.2存放地址的指针变量 168

9.2.1定义指针变量 169

9.2.2用变量的地址初始化指针 170

9.2.3置“空”指针变量 171

9.2.4指针变量的引用 171

9.3指针变量进行算数运算 172

9.3.1指针变量的加减运算 172

9.3.2指针变量的关系运算 175

9.4指针与函数 175

9.4.1指针作为参数 175

9.4.2指针作为返回值 178

9.4.3函数指针 179

9.5数组与指针 181

9.5.1指针数组的定义和引用 181

9.5.2一维数组中元素的指针表示法 182

9.5.3二维数组中元素的指针表示法 183

9.5.4指针与字符串结合使用 184

9.5.5命令行参数 186

9.6指向指针的指针变量 188

9.7本章小结 189

9.8本章习题 189

第10章 结构体、共同体与枚举型 191

10.1结构体的定义与引用 191

10.1.1结构体类型的定义 191

10.1.2结构体类型变量的定义 193

10.1.3结构体类型变量的初始化 195

10.1.4结构体类型变量的引用 196

10.1.5结构体类型的指针 197

10.1.6结构体数组 199

10.1.7在结构体中包含其他结构 202

10.1.8结构体与函数的关系 205

10.2共用体的定义与引用 207

10.2.1共用体类型的定义 207

10.2.2共用体类型变量的定义 208

10.2.3共用体类型变量的引用 209

10.2.4共用体类型数据的特点 211

10.3用typedef定义一个引用变量 211

10.4枚举型数据类型 212

10.4.1枚举型的定义 212

10.4.2枚举变量的定义与赋值 213

10.5综合示例 215

10.6本章小结 217

10.7本章习题 217

第11章 预处理命令 219

11.1认识预处理命令 219

11.2包含其他文件的命令 219

11.3宏定义 222

11.3.1不带参数的宏 222

11.3.2带参数的宏 223

11.3.3宏的取消 225

11.3.4使用宏定义的优缺点 226

11.4条件编译 228

11.5头文件的编写 230

11.6本章小结 231

11.7本章习题 232

第12章 C语言的编程规范 233

12.1命名规范 233

12.2格式规范 235

12.3函数规范 236

12.4其他规范 238

第13章 使用代码管理计算机内存 239

13.1分配内存的存储空间 239

13.1.1 malloc()函数 239

13.1.2 calloc()函数 241

13.1.3 realloc()函数 243

13.1.4 malloc()函数和calloc()函数的区别 244

13.1.5 free()函数 245

13.2将数据按位运算 246

13.2.1位运算符 246

13.2.2将数据进行移位运算 247

13.2.3将数据进行按位逻辑运算 249

13.3本章小结 256

13.4本章习题 256

第14章 文件操作 258

14.1打开、关闭和检测文件 258

14.1.1打开文件 258

14.1.2文件检查函数 262

14.1.3读写文件数据 262

14.1.4关闭文件 274

14.2文件定位函数 274

14.2.1 fseek()函数 274

14.2.2 ftell()函数 277

14.2.3 rewind()函数 278

14.3文件管理函数的应用 280

14.3.1删除文件 280

14.3.2重命名文件 281

14.4使用临时文件 282

14.5非缓冲文件系统 284

14.5.1 open()函数 284

14.5.2 close()函数 284

14.5.3 create()函数 284

14.5.4 read()函数 285

14.5.5 write()函数 285

14.5.6 lseek()函数 285

14.6本章小结 286

14.7本章习题 287

第15章 C语言中的库函数 288

15.1处理数学问题的函数 288

15.1.1三角函数 288

15.1.2指数函数和对数函数 291

15.1.3双曲线函数 292

15.1.4其他数学函数 293

15.2处理时间的函数 295

15.2.1 C语言程序中时间的表示 295

15.2.2使用时间函数 295

15.3查找和排序函数 304

15.3.1 bsearch()函数 304

15.3.2 qsort()函数 305

15.3.3程序示例 305

15.4随机数生成函数 309

15.4.1随机数产生的过程 309

15.4.2随机数相关的函数 309

15.5本章小结 312

15.6本章习题 313

第4篇 高级实战篇 316

第16章 简单的数据结构介绍 316

16.1单链表 316

16.1.1单链表的概念 316

16.1.2单链表的创建 317

16.1.3单链表的使用 320

16.2栈 326

16.2.1栈的概念 326

16.2.2栈的基本运算 326

16.2.3链栈 327

16.3队列 329

16.3.1队列的概念 329

16.3.2队列的基本运算 330

16.3.3链队列 330

16.4快速排序函数 333

16.5本章小结 335

16.6本章习题 335

第17章 学生管理系统的开发 336

17.1学生管理系统需求分析 336

17.2学生管理系统界面设计 337

17.3学生管理系统功能设计 338

17.3.1学生管理系统概要设计 339

17.3.2用户登录管理模块的设计 341

17.3.3文件读写模块的设计 342

17.3.4学生信息显示模块的设计 345

17.3.5学生人员增加模块的设计 345

17.3.6学生人员删除模块的设计 346

17.3.7学生信息修改模块的设计 348

17.3.8学生信息查询模块的设计 350

17.3.9主菜单模块的设计 350

17.3.10主函数及错误处理模块的设计 352

17.3.11结构体及宏定义 354

17.4学生管理系统测试用例编写 355

17.5学生管理系统整合测试 360

17.5.1主菜单和界面显示功能测试的演示 360

17.5.2用户登录功能测试的演示 361

17.5.3用户修改密码功能测试的演示 361

17.5.4学生人员增加功能测试的演示 362

17.5.5学生人员删除功能测试的演示 362

17.5.6学生信息查询功能测试的演示 363

17.5.7学生信息修改功能测试的演示 363

17.5.8文件读写功能测试的演示 363

17.6本章小结 364