C语言程序设计案例课堂

副标题:无

作   者:刘春茂

分类号:

ISBN:9787302495420

微信扫一扫,移动浏览光盘

简介


《C语言程序设计案例课堂》以零基础讲解为宗旨,用实例引导读者深入学习,采取“基础入门→核心技术→高级应用→项目开发实战”的讲解模式,深入浅出地讲解C语言的各项技术及实战技能。

《C语言程序设计案例课堂》第Ⅰ篇“基础入门”主要讲解走进C语言的世界、常量与变量、数据类型、输入和输出、运算符和表达式、程序流程控制结构等;第Ⅱ篇“核心技术”主要讲解数组、算法与流程图、函数与函数中变量、指针、操作文件、编译与预处理指令、使用库函数等;第Ⅲ篇“高级应用”主要讲解位运算,结构体、共用体和枚举,动态数据结构,数据结构进阶,排序等;第Ⅳ篇“项目开发实战”主要讲解开发日历查阅系统、开发员工信息管理系统、开发迷宫小游戏。

《C语言程序设计案例课堂》适合任何想学习C语言编程的人员,无论您是否从事计算机相关行业,无论您是否接触过C语言,通过学习本书均可快速掌握C语言在项目开发中的知识和技巧。


目录


目 录

第I篇 基础入门

第1章 初识庐山真面目——走进C语言的世界 3

1.1C语言概述 4

1.1.1C语言的发展史 4

1.1.2C语言的特点 5

1.1.3C语言的应用 6

1.2C语言的常用开发环境 6

1.2.1Visual C 6.0开发环境 7

1.2.2Turbo C 2.0开发环境 11

1.3 编写*个C语言程序 13

1.3.1C语言编译机制 13

1.3.2在Visual C 6.0中开发C程序 13

1.3.3在Turbo C中开发C程序 17

1.4C语言程序的组成 19

1.4.1C语言程序整体风貌 19

1.4.2#include的秘密 19

1.4.3程序的出入口——main函数 20

1.4.4数据集装箱——常量和变量 21

1.4.5如何输出程序结果——输出函数 21

1.4.6注释 21

1.4.7代码书写规范 22

1.5 大神解惑 23

1.6 跟我学上机 23

第2章 程序中的变与不变——常量与变量 25

2.1 标识符和关键字 26

2.1.1标识符 26

2.1.2关键字 26

2.2 常量 27

2.2.1整数常量 27

2.2.2浮点常量 28

2.2.3字符常量 28

2.2.4字符串常量 30

2.2.5符号常量 30

2.3 变量 31

2.3.1变量的定义 32

2.3.2变量的声明 32

2.3.3变量的初始化与赋值 33

2.3.4变量的分类 34

2.4 综合案例——处理学生的期末成绩 38

2.5 大神解惑 40

2.6 跟我学上机 40

第3章 程序中的数据种类——数据类型 41

3.1 数制 42

3.1.1二进制 42

3.1.2八进制 42

3.1.3十六进制 42

3.1.4数制间的转换 42

3.2 整型数据 45

3.2.1整型数据的存放形式 46

3.2.2整型变量的溢出 47

3.3 浮点型数据 48

3.3.1浮点型数据的存放形式 48

3.3.2有效数字 49

3.4 字符型数据 50

3.5 数据类型的转换 50

3.5.1隐式转换 50

3.5.2显式转换 52

3.6 综合案例——各种进制的转换 53

3.7 大神解惑 55

3.8 跟我学上机 55

第4章 用户与计算机的交互——输入和输出 57

4.1 标准输入输出 58

4.2 格式化输入输出 58

4.2.1格式化输出函数 59

4.2.2格式化输入函数 62

4.3 字符输入输出 65

4.3.1字符的输出函数 65

4.3.2字符的输入函数 66

4.4 字符串的输入输出 67

4.4.1字符串的输出函数 67

4.4.2字符串的输入函数 68

4.5 综合案例——输入和输出的综合应用 69

4.6 大神解惑 70

4.7 跟我学上机 70

第5章 谁来操作数据——运算符和表达式 71

5.1 运算符 72

5.1.1运算符的分类 72

5.1.2运算符的优先级和结合性 72

5.2 表达式 73

5.3 运算符与表达式 74

5.3.1算术运算符与算术表达式 74

5.3.2赋值运算符与赋值表达式 77

5.3.3关系运算符与关系表达式 79

5.3.4逻辑运算符与逻辑表达式 81

5.3.5位运算符与位运算表达式 83

5.3.6条件运算符与条件表达式 85

5.3.7逗号运算符与逗号表达式 86

5.4 语句 87

5.4.1表达式语句 87

5.4.2函数调用语句 87

5.4.3控制语句 88

5.4.4复合语句 88

5.4.5空语句 88

5.5 综合案例——关系运算符的应用 89

5.6 大神解惑 89

5.7 跟我学上机 90

第6章 程序的执行方向——程序流程控制结构 91

6.1 顺序结构 92

6.2 选择结构 93

6.2.1if语句 93

6.2.2if…else语句 94

6.2.3选择嵌套语句 95

6.2.4switch分支结构语句 99

6.3 循环结构 101

6.3.1while语句 101

6.3.2do…while语句 102

6.3.3for语句 103

6.3.4循环语句的嵌套 105

6.4 跳转语句 106

6.4.1break语句 106

6.4.2continue语句 107

6.4.3goto语句 108

6.5 综合案例——制作简易计算器 109

6.6 大神解惑 111

6.7 跟我学上机 112

第Ⅱ篇 核心技术

第7章 特殊的元素集合——数组 115

7.1 数组概述 116

7.2 一维数组 116

7.2.1一维数组的定义 116

7.2.2一维数组的引用 118

7.2.3一维数组的初始化 119

7.2.4程序实例 121

7.3 二维数组 123

7.3.1二维数组的定义 123

7.3.2二维数组的引用 124

7.3.3二维数组的初始化 125

7.3.4多维数组 127

7.3.5程序实例 128

7.4 字符数组 131

7.4.1字符数组的定义和初始化 131

7.4.2字符串和字符数组 133

7.4.3字符数组的输出与输入 134

7.4.4字符串处理函数 137

7.5 综合案例——矩阵的乘法 141

7.6 大神解惑 143

7.7 跟我学上机 143

第8章 程序描述——算法与流程图 145

8.1 算法概述 146

8.1.1算法的概念 146

8.1.2算法的特性 146

8.1.3算法的优劣 147

8.2 流程图简介 148

8.2.1传统流程图 148

8.2.2N-S流程图 150

8.3 算法的表示 150

8.3.1自然语言表示法 150

8.3.2流程图表示法 152

8.3.3N-S流程图表示法 156

8.3.4伪代码表示法 159

8.3.5计算机语言表示法 162

8.4 结构化程序设计方法 163

8.5 综合案例——求解一元二次方程的根 163

8.6 大神解惑 166

8.7 跟我学上机 166

第9章 C语言灵魂——函数与函数中变量 167

9.1 函数概述 168

9.1.1函数的概念 168

9.1.2函数的分类 169

9.1.3函数的声明与定义 171

9.2 函数的返回语句 174

9.2.1函数的返回值 175

9.2.2函数的结束标志 176

9.2.3函数的返回值类型 177

9.3 函数的参数 178

9.3.1形式参数与实际参数 178

9.3.2参数的传递方式 179

9.4 函数的调用 182

9.4.1函数调用的方式 182

9.4.2函数的嵌套调用 185

9.4.3函数的递归调用 188

9.5 内部函数与外部函数 192

9.5.1内部函数 192

9.5.2外部函数 193

9.6main()函数的参数 195

9.7 局部变量和全局变量 196

9.7.1局部变量 196

9.7.2全局变量 198

9.8 变量的存储类别 202

9.8.1动态存储与静态存储 203

9.8.2自动变量 203

9.8.3静态变量 205

9.8.4寄存器变量 209

9.8.5外部变量 210

9.9 综合案例——求解非线性方程 212

9.10大神解惑 215

9.11跟我学上机 217

第10章 灵活调用内存地址——指针 219

10.1指针概述 220

10.1.1地址与指针 220

10.1.2指针变量 221

10.1.3指针变量的引用 223

10.2指针与函数 226

10.2.1指针变量作为函数参数 226

10.2.2函数返回指针 229

10.2.3指向函数的指针 231

10.3指针与数组 233

10.3.1数组元素的指针 234

10.3.2指针的运算 234

10.3.3通过指针引用数组元素 235

10.3.4指向数组的指针变量作为函数参数 238

10.3.5通过指针对多维数组进行引用 244

10.4指针与字符串 250

10.4.1字符指针 250

10.4.2使用字符指针作函数参数 253

10.4.3字符数组与字符指针变量的区别 256

10.5指针数组和多重指针 258

10.5.1指针数组 258

10.5.2指向指针的指针 262

10.6综合案例——使用指针操作数组 267

10.7大神解惑 272

10.8跟我学上机 275

第11章 数据存储——操作文件 277

11.1文件概述 278

11.1.1文件类型 278

11.1.2文件指针 279

11.1.3文件的缓冲区 280

11.2文件的打开与关闭 281

11.2.1文件的打开 281

11.2.2文件的关闭 282

11.3文件的读写 283

11.3.1字符的读写 283

11.3.2字符串的读写 287

11.3.3数据块的读写 291

11.3.4格式化读写函数 295

11.4文件定位与文件的随机读写 298

11.4.1文件头定位函数rewind() 299

11.4.2当前读写位置函数ftell() 300

11.4.3随机定位函数fseek() 301

11.5文件检测函数 304

11.5.1文件结束判断函数feof() 304

11.5.2文件读写错误检测函数ferror() 305

11.5.3文件错误标志清除函数clearerr() 307

11.6综合案例——文件的综合操作 308

11.7大神解惑 316

11.8跟我学上机 316

第12章 未雨绸缪——编译与预处理指令 317

12.1预处理指令 318

12.2宏定义 318

12.2.1变量式宏定义 318

12.2.2宏定义的嵌套 321

12.2.3宏定义的作用范围 322

12.2.4带参数的宏定义 323

12.2.5宏定义的多行表示 327

12.3文件包含 327

12.4条件编译 329

12.4.1条件编译命令 329

12.4.2调试中使用DEBUG宏 332

12.4.3文件的嵌套包含与条件编译 333

12.5综合案例——求解圆、矩形以及三角形的面积 334

12.6大神解惑 335

12.7跟我学上机 335

第13章 提高开发效率——使用库函数 337

13.1标准C库函数 338

13.2数学函数“math.h” 338

13.2.1求幂函数与开平方函数 338

13.2.2指数函数与对数函数 339

13.2.3三角函数 340

13.2.4*值函数 341

13.2.5取整函数与取余函数 342

13.3字符串函数“string.h” 343

13.3.1字符串长度函数 343

13.3.2字符串连接函数 344

13.3.3字符串复制函数 345

13.3.4字符串大小写转换函数 346

13.3.5字符串查找函数 347

13.3.6字符串比较函数 348

13.4字符函数“ctype.h” 349

13.4.1字符的类型判断函数 349

13.4.2字符大小写转换函数 351

13.5其他函数 352

13.5.1随机函数 352

13.5.2日期时间函数 353

13.5.3结束程序函数 354

13.6综合案例——创建报数游戏 355

13.7大神解惑 356

13.8跟我学上机 357

第III篇 高级应用

第14章 内部数据操作——位运算 361

14.1位(bit)与字节(byte)的关系 362

14.2位运算符 362

14.2.1按位与运算符(&) 362

14.2.2按位或运算符(|) 363

14.2.3按位异或运算符(^) 364

14.2.4按位取反运算符(~) 365

14.2.5左移运算符(<<) 366

14.2.6右移运算符(>>) 367

14.2.7位复合赋值运算符 368

14.3循环移位 368

14.3.1循环左移 369

14.3.2循环右移 370

14.4位段 371

14.4.1位段的定义 371

14.4.2位段中数据的引用 371

14.5综合案例——将十进制数转换为二进制数 373

14.6大神解惑 374

14.7跟我学上机 375

第15章 灵活定义数据类型——结构体、共用体和枚举 377

15.1结构体概述 378

15.1.1结构体类型 378

15.1.2定义结构体变量 379

15.1.3初始化结构体变量 381

15.1.4结构体变量的引用 381

15.2结构体数组 383

15.2.1定义结构体数组 383

15.2.2结构体数组的初始化 384

15.2.3结构体数组元素的引用 385

15.2.4结构体数组应用实例 386

15.3结构体指针 388

15.3.1指向结构体变量的指针 388

15.3.2指向结构体数组的指针 390

15.3.3结构体变量作为函数参数 391

15.3.4指向结构体变量的指针作为函数参数 393

15.3.5结构体作为函数的返回值 394

15.4共用体 395

15.4.1共用体的定义 395

15.4.2共用体变量的定义 396

15.4.3共用体变量的初始化以及引用 397

15.5枚举 399

15.5.1定义枚举类型 400

15.5.2定义枚举类型变量 400

15.6综合案例——创建学生信息结构体 402

15.7大神解惑 403

15.8跟我学上机 404

第16章 动态存储分配——动态数据结构 405

16.1动态存储分配概述 406

16.1.1malloc()函数 406

16.1.2calloc()函数 407

16.1.3realloc()函数 408

16.1.4free()函数 409

16.2链表概述 410

16.2.1链表结点的定义 411

16.2.2链表的建立 411

16.2.3链表的遍历 412

16.2.4链表结点的插入 413

16.2.5链表结点的删除 417

16.3综合案例——综合应用链表 420

16.4大神解惑 421

16.5跟我学上机 422

第17章 逻辑结构——数据结构进阶 423

17.1数据结构概述 424

17.2线性表 425

17.3栈 426

17.3.1栈的基本操作 427

17.3.2顺序栈 427

17.3.3链式栈 429

17.4队列 431

17.4.1队列的基本运算 432

17.4.2顺序队列 432

17.4.3链式队列 436

17.5二叉树 441

17.5.1二叉树的定义 441

17.5.2二叉树的遍历 442

17.6查找 442

17.6.1顺序查找 442

17.6.2折半查找 444

17.7综合案例——使用栈转换数据的进制 446

17.8大神解惑 447

17.9跟我学上机 448

第18章 整理数据的妙招——排序 449

18.1排序概述 450

18.2插入排序 450

18.2.1直接插入排序 450

18.2.2希尔排序 452

18.3选择排序 453

18.3.1简单选择排序 453

18.3.2堆排序 455

18.4交换排序 457

18.4.1冒泡排序 457

18.4.2快速排序 458

18.5归并排序 460

18.6基数排序 462

18.7大神解惑 464

18.8跟我学上机 465

第IV篇 项目开发实战

第19章 项目实训1——开发日历查阅系统 469

19.1需求分析 470

19.2功能分析 470

19.3开发前准备工作 472

19.4系统代码编写 476

19.4.1查询年历函数showCalendarOfYear() 476

19.4.2查询月历函数showCalendarOfMonth() 477

19.4.3日期查询模块 478

19.5系统运行 485

19.6项目总结 486

第20章 项目实训2—— 开发员工信息管理系统 487

20.1需求分析 488

20.2功能分析 489

20.3开发前准备工作 490

20.4系统代码编写 491

20.4.1main.c文件 491

20.4.2employee.c文件 495

20.5系统运行 499

20.6项目总结 500

第21章 项目实训3——开发迷宫小游戏 501

21.1需求分析 502

21.2功能分析 502

21.3开发前准备工作 504

21.4系统代码编写 505

21.4.1main.c文件 505

21.4.2mazeGame.c文件 507

21.5系统运行 513

21.6项目总结 514


已确认勘误

次印刷

页码 勘误内容 提交人 修订印次

C语言程序设计案例课堂
    • 名称
    • 类型
    • 大小

    光盘服务联系方式: 020-38250260    客服QQ:4006604884

    意见反馈

    14:15

    关闭

    云图客服:

    尊敬的用户,您好!您有任何提议或者建议都可以在此提出来,我们会谦虚地接受任何意见。

    或者您是想咨询:

    用户发送的提问,这种方式就需要有位在线客服来回答用户的问题,这种 就属于对话式的,问题是这种提问是否需要用户登录才能提问

    Video Player
    ×
    Audio Player
    ×
    pdf Player
    ×
    Current View

    看过该图书的还喜欢

    some pictures

    解忧杂货店

    东野圭吾 (作者), 李盈春 (译者)

    loading icon