《C语言从入门到精通 全新精华版》PDF下载

  • 购买积分:14 如何计算积分?
  • 作  者:创客诚品,刘慧欣,孟令一编著
  • 出 版 社:北京希望电子出版社
  • 出版年份:2017
  • ISBN:7830024925
  • 页数:412 页
图书介绍:

Chapter 01 C语言程序设计概述 2

1.1 程序与程序设计语言 2

1.1.1 程序的基本概念 2

1.1.2 程序设计语言 2

1.2 C语言的发展及特点 3

1.2.1 C语言的发展概况 3

1.2.2 C语言的特点 4

1.3 C语言程序的基本结构 4

1.3.1 简单的C语言程序示例 4

1.3.2 C语言程序基本结构 6

1.4 C语言字符集、标识符与关键字 7

1.4.1 C语言字符集 7

1.4.2 C语言的标识符与关键字 7

1.5 C语言程序的调试 8

1.5.1 C语言的调试步骤 8

1.5.2 Turbo C 20 9

1.5.3 Visual C++ 6.0集成开发环境简介 13

Chapter 02 算法 16

2.1 算法基本概念 16

2.1.1 算法的主要特性 16

2.1.2 如何衡量算法的优劣 16

2.2 算法描述 18

2.2.1 用自然语言描述算法 18

2.2.2 流程图 18

2.2.3 N-S流程图 20

2.2.4 用计算机语言描述算法 21

Chapter 03 编程规范与数据类型 23

3.1 C语言编程规范 23

3.1.1 代码缩进设置 23

3.1.2 常量、变量命名规范 23

3.1.3 函数命名规范 23

3.1.4 注释 24

3.2 关键字 24

3.3 标识符 25

3.4 C语言的数据类型 25

3.5 常量与变量 26

3.5.1 常量与符号常量 26

3.5.2 变量 27

3.6 整型数据 28

3.6.1 整型常量 28

3.6.2 整型变量 29

3.7 浮点型数据 30

3.7.1 浮点型常量 30

3.7.2 浮点型变量 31

3.8 字符型数据 32

3.8.1 字符常量 32

3.8.2 字符变量 34

3.8.3 字符串常量 35

Chapter 04 运算符与表达式 37

4.1 了解运算符与表达式 37

4.1.1 运算符与表达式 37

4.1.2 算数运算符与算数表达式 38

4.1.3 关系运算符与关系表达式 41

4.1.4 逻辑运算符与逻辑表达式 42

4.1.5 赋值运算符与赋值表达式 45

4.1.6 其他运算符 47

4.2 数据类型转换 49

4.2.1 类型自动转换 49

4.2.2 赋值转换 50

4.2.3 强制类型转换 50

Chapter 05 顺序结构程序设计 52

5.1 C语言的基本语句 52

5.1.1 C语言语句简介 52

5.1.2 顺序结构 54

5.2 数据的输出 55

5.2.1 格式化输出函数printf() 55

5.2.2 单个字符的输出函数putchar() 62

5.3 数据的输入 63

5.3.1 格式化输入函数scanf() 63

5.3.2 单个字符的输出函数getchar() 68

5.4 顺序结构程序设计举例 69

Chapter 06 选择结构程序设计 73

6.1 if语句 73

6.1.1 单分支if语句 73

6.1.2 双分支if语句 76

6.1.3 多分支选择结构 78

6.1.4 if语句的嵌套 80

6.2 switch语句 83

6.3 选择结构程序设计举例 86

Chapter 07 循环结构程序设计 90

7.1 while循环语句 90

7.2 do-while语句 95

7.3 for语句 99

7.4 break、continue和goto语句 107

7.4.1 break语句 107

7.4.2 continue语句 109

7.4.3 goto语句 111

7.5 循环的嵌套 113

7.6 循环结构常用算法举例 119

Chapter 08 数组 128

8.1 一维数组 128

8.1.1 一维数组的定义 128

8.1.2 一维数组元素的引用 130

8.1.3 一维数组元素的初始化 131

8.1.4 一维数组算法举例 133

8.2 二维数组的定义和引用 142

8.2.1 二维数组的定义 142

8.2.2 二维数组元素的引用 143

8.2.3 二维数组元素的初始化 145

8.2.4 二维数组算法举例 146

8.3 字符数组与字符串 151

8.3.1 字符数组的定义与初始化 151

8.3.2 字符串的概念与存储 154

8.3.3 常用的字符串处理函数 158

8.3.4 字符串程序举例 163

Chapter 09 函数 169

9.1 函数概述 169

9.1.1 函数的引入 169

9.1.2 函数的定义 172

9.1.3 函数调用与函数的值 175

9.1.4 形式参数和实际参数 181

9.2 函数的嵌套调用与递归调用 184

9.2.1 函数的嵌套调用 184

9.2.2 函数的递归调用 186

9.3 数组作为函数参数 191

9.3.1 数组元素作为函数参数 191

9.3.2 数组名作为函数的形参和实参 193

9.4 局部变量与全局变量 199

9.4.1 局部变量 199

9.4.2 全局变量 200

9.5 数据的存储类别 204

9.5.1 动态存储与静态存储 204

9.5.2 aotu变量 205

9.5.3 static变量 207

9.5.4 register变量 210

9.5.5 extern变量 211

9.6 内部函数与外部函数 213

9.6.1 内部函数 213

9.6.2 外部函数 214

9.7 函数设计举例 215

Chapter 10 编译预处理 221

10.1 编译预处理概述 221

10.2 宏定义 221

10.2.1 无参宏的定义与使用 222

10.2.2 有参宏的定义与使用 226

10.3 文件包含 230

10.4 条件编译 232

Chapter 11 指针 238

11.1 地址与指针 238

11.2 指针变量 240

11.2.1 指针变量的定义与初始化 240

11.2.2 指针运算 243

11.2.3 指针作为函数参数 247

11.3 指针与一维数组 249

11.3.1 指向一维数组的指针的定义及使用 249

11.3.2 指向一维数组的指针作为函数的参数 254

11.4 指向二维数组的指针 256

11.4.1 二维数组的指针 256

11.4.2 指向二维数组的指针作为函数的参数 260

11.4.3 动态数组的实现 262

11.5 指针与字符串 264

11.5.1 字符指针的定义与初始化 264

11.5.2 利用字符指针表示与引用字符串 266

11.5.3 字符指针与字符数组的比较 269

11.5.4 字符串指针作为函数参数 269

11.6 返回指针值的函数 273

11.7 指向函数的指针 275

11.8 指针数组和二级指针 280

11.8.1 指针数组 280

11.8.2 main()函数的参数 281

11.8.3 二级指针 283

Chapter 12 结构体、共用体与枚举类型 286

12.1 结构体类型 286

12.1.1 结构体类型的定义 287

12.1.2 结构体变量的定义与使用 288

12.1.3 结构体数组的定义与使用 295

12.1.4 结构体类型指针 301

12.1.5 指向结构体数组的指针 303

12.1.6 结构体类型程序举例 306

12.2 用typedef定义类型 309

12.3 链表 310

12.3.1 链表的概念 311

12.3.2 实现链表所需的内存管理函数 312

12.3.3 链表的操作 314

12.3.4 链表程序举例 319

12.4 共用体 324

12.41 共用体类型的定义 324

12.4.2 共用体变量的定义和使用 324

12.4.3 共用体的应用举例 326

12.5 枚举类型 329

Chapter 13 位运算 333

13.1 位运算符与位运算 333

13.1.1 按“位”与运算 333

13.1.2 按位“或”运算 334

13.1.3 按位“异或”运算 335

13.1.4 求反运算 336

13.1.5 左移运算 337

13.1.6 右移运算 338

13.1.7 复合赋值运算符 338

13.1.8 位运算举例 338

13.2 位段 340

Chapter 14 文件 344

14.1 文件概述 344

14.2 文件指针 345

14.3 文件的打开与关闭 346

14.3.1 文件的打开 346

14.3.2 文件的关闭 348

14.4 文件的读写函数 349

14.4.1 fputc()函数和fgetc()函数 349

14.4.2 fputs()函数和fgets()函数 353

14.4.3 fprintf()函数和fscanf()函数 356

14.4.4 fread()函数和fwrite()函数 358

14.5 文件的定位函数 361

14.5.1 fseek()函数 361

14.5.2 ftell()函数 362

14.5.3 rewind()函数 363

Chapter 15 存储管理 366

15.1 内存组织方式 366

15.1.1 内存的组织方式 366

15.1.2 堆与栈 366

15.2 动态管理 367

15.2.1 malloc()函数 367

15.2.2 calloc()函数 369

15.2.3 realloc()函数 369

15.2.4 free()函数 370

15.3 内存丢失 371

Chapter 16 网络套接字编程 373

16.1 计算机网络基础 373

16.1.1 IP地址 373

16.1.2 OSI七层参考模型 373

16.1.3 地址解析 374

16.1.4 域名系统 375

16.1.5 TCP/IP协议 375

16.1.6 端口 376

16.1.7 套接字的引入 377

16.1.8 网络字节 顺序 377

16.2 套接字 377

16.2.1 套接字概述 377

16.2.2 套接字工作流程 378

16.3 套接字函数 379

16.3.1 套接字函数介绍 379

16.3.2 基于TCP的网络聊天程序 384

Chapter 17 工资管理系统 389

17.1 设计目的和功能 389

17.2 总体设计 390

17.2.1 功能模块设计 390

17.2.2 数据结构设计 392

17.2.3 函数功能描述 393

17.3 程序实现 394

17.3.1 源码分析 394

17.3.2 运行结果 409

Chapter 18 电话簿管理系统 415

18.1 设计目的 415

18.2 功能描述 415

18.3 总体设计 416

18.3.1 功能模块设计 416

18.3.2 数据结构设计 419

18.3.3 函数功能描述 419

18.4 程序实现 420

18.4.1 源码分析 420

18.4.2 运行结果 435

附录 439

附录1 课后习题答案 439

附录2 C语言中的关键字 448

附录3 常用字符与ASCII代码对照表 449

附录4 C语言运算符优先级和结合性 450

附录5 C语言常用语法提要 452

附录6 C库函数 456