C语言学习黄金组合套装(京东套装共3册)pdf下载

C语言学习黄金组合套装(京东套装共3册)百度网盘pdf下载

作者:
简介:C语言学习黄金组合套装(京东套装共3册)
出版社:
出版时间:2017-10
pdf下载价格:0.00¥

免费下载


书籍下载


内容介绍

产品特色


内容简介

  《C语言项目开发实战入门》以趣味俄罗斯方块、挑战2048、贪吃蛇大作战、超级万年历、图书管理系统(窗体版)、学生个人消费管理系统、企业员工管理系统和学生信息管理系统共8个项目为案例,从软件工程的角度出发,按照项目的开发顺序,系统、全面地介绍了项目开发流程,从开发背景、系统功能分析、业务流程分析、数据库建模到项目开发,每一过程都进行了详细讲解,旨在使读者真正获得程序开发经验,提高项目开发能力。
  《C语言项目开发实战入门》应用的主要技术及知识点有:C、控制台API、获得键盘按键实现、指针、遍历数组、循环控制实现、读写文件数据、按键监听实现、获得日期时间、条件选择实现、MySQL、WINAPI编程实现、条件编译、数组排序算法实现、存储管理、字符串处理函数实现、结构体数组、格式输出实现。
  ——优势——
  √零基础实战入门——快速扫盲视频,8小时预备知识入门学习;
  √项目精彩,讲解到位——8个流行项目,7小时教学视频,代码注释详尽;
  √书网结合——在线课程,PC端、移动端免费同步学习;
  √4色真彩印刷——还原编程真实开发环境。
  ——随书附赠——
  √《小白手册》——环境搭建、程序调试、排错秘籍,帮助用户轻松搭建开发环境,快速解决开发问题;
  √光盘——18小时视频讲解、项目讲解视频、项目源码、资源文件、代码查错器、代码片段,方便读者学习。
  √二维码——书中设置多种功能二维码,视频二维码、代码解释二维码、会员二维码等;手机看视频,手机看文档,多种资源手机一扫尽在掌握。
  √技术支持——QQ、微信、论坛等均可获得图书内容相关的技术支持,登录明日学院网站(www.mingrisoft.com)可以获得全方位的学习资源和技术支持。
  ——读者对象——
  √零基础编程的自学者
  √编程爱好者
  √大中专院校的老师和学生
  √培训机构的老师和学生
  √参加毕业设计的学生
  √初级和中级程序开发人员
  《C语言项目开发实战入门》是一本让初学者通过项目实战开发学编程的超值图书。

  《C语言精彩编程200例》汇集了与C语言开发相关的200个实例及源代码,每个实例都按实例说明、关键技术、实现过程、扩展学习的顺序进行分析解读。全书主要内容有常用算法、指针与链表操作、文件操作、系统相关、图形图像、C语言游戏开发等方面的内容。每个实例都是经过一线工程师精心编选的,具有很强的实用性,这些实例为开发者提供了的解决方案。配书光盘附赠了实例的完整源程序及环境搭建与程序调试讲解视频。
  《C语言精彩编程200例》内容详尽,实例丰富,适合Java程序员参考,也适合高校学生、软件开发培训学员及相关求职人员学习。

  《零基础学C语言》是针对零基础编程学习者研发的C语言入门教程。从初学者角度出发,通过通俗易懂的语言、流行有趣的实例,详细地介绍了使用C语言进行程序开发需要掌握的知识和技术。全书共分18章,包括C语言概述、开发环境的搭建、算法、C语言基础、运算符与表达式、常用的数据输入/输出函数、选择结构程序设计、循环控制、数组、结构体与链表、共用体与枚举类型、位运算、预处理、文件、存储管理,以及学生成绩管理系统等。书中所有知识都结合具体实例进行讲解,设计的程序代码给出了详细的注释,可以使读者轻松领会C语言程序开发的精髓,快速提高开发技能。
  本书通过大量实例及一个完整项目案例,帮助读者更好地巩固所学知识,提升能力;随书附赠的《小白实战手册》中给出了3个流行且实用的案例的详细开发流程,力求让学习者能学以致用,真正获得开发经验;附赠的光盘中给出视频讲解、实例及项目源码、代码查错器、练一练和动手纠错答案等,方便读者学习;书中设置了130多个二维码,扫描二维码观看视频讲解,解决学习疑难;不易理解的专业术语、代码难点只需手机扫描文字下方的e学码获得更多扩展解释,随时扫除学习障碍。此外,登录明日学院网站(www.mingrisoft.com)还可以获得更多学习资源和技术支持。
  图书与《小白实战手册》+光盘+二维码+e学码+明日学院,实现立体化、全方位的教学模式,拉低编程门槛,让零基础者轻松跨入编程领域。

作者简介

  明日科技,是一家专业从事软件开发、教育培训以及软件开发教育资源整合的高科技公司,其编写的教材既注重选取软件开发中的必需、常用内容,又注重内容的易学、方便以及相关知识的拓展,深受读者喜爱。其编写的图书主要有“从入门到精通”“软件开发视频大讲堂”“软件开发实战1200例”“软件工程师开发大系”等多个系列。多次荣获“全行业优xiu畅销品种”“中国大学出版社优xiu畅销书”等奖项,多个品种长期位居同类图书销售排行榜的前列。

目录

C语言开发之旅1
第1章 趣味俄罗斯方块(C + 控制台API + 获得键盘按键实现)3
1.1 开发背景.6
1.2 系统功能设计.6
1.2.1 系统功能结构 .6
1.2.2 系统业务流程 .7
1.3 使用Dev C++项目创建7
1.3.1 系统开发环境要求 .7
1.3.2 创建项目 7
1.4 预处理模块设计11
1.4.1 文件引用 .11
1.4.2 宏定义 .12
1.4.3 定义全局变量 12
1.4.4 函数声明 .13
1.5 游戏欢迎界面设计14
1.5.1 游戏欢迎界面概述 14
1.5.2 设置文字颜色 14
1.5.3 设置文字显示位置 16
1.5.4 设计标题部分 17
1.5.5 设计字符花装饰界面 19
1.5.6 设计菜单选项的边框 22
1.5.7 设计菜单选项的文字 23
1.6 游戏主窗体设计25
1.6.1 游戏主窗体设计概述 25
1.6.2 打印输出游戏界面 25
1.6.3 绘制俄罗斯方块 29
1.6.4 打印俄罗斯方块 37
1.7 游戏逻辑设计38
1.7.1 游戏逻辑概述 39
1.7.2 判断俄罗斯方块是否可移动 39
1.7.3 清除俄罗斯方块下落的痕迹 42
1.7.4 判断方块是否满行 42
1.7.5 随机产生俄罗斯方块类型的序号44
1.8 开始游戏46
1.8.1 开始游戏模块概述 46
1.8.2 显示俄罗斯方块 46
1.8.3 实现按键操作 48
1.8.4 游戏结束界面 53
1.8.5 重新开始游戏 55
1.9 游戏按键说明模块56
1.9.1 游戏按键说明简介 56
1.9.2 按键说明界面的实现 57
1.10 游戏规则介绍模块.58
1.10.1 游戏规则介绍 .59
1.10.2 游戏规则介绍的实现 .59
1.11 退出游戏.61
1.12 一起来找茬.62
1.13 本章总结.63
攻占C语言大陆65
C语言大咖实战训练营66

第2章 挑战2048(C + 指针 + 遍历数组 + 循环控制实现).67
2.1 开发背景70
2.2 系统功能设计70
2.2.1 系统功能结构 70
2.2.2 系统业务流程 71
2.3 系统开发环境要求.71
2.4 预处理模块设计71
2.4.1 文件引用 .71
2.4.2 定义全局变量 72
2.4.3 函数声明 .72
2.5 游戏欢迎界面设计73
2.5.1 欢迎界面概述 73
2.5.2 实现欢迎界面标题 73
2.5.3 实现欢迎界面菜单选项 75
2.5.4 实现欢迎界面字符画装饰 77
2.6 游戏主窗体设计79
2.6.1 游戏主窗体设计概述 79
2.6.2 绘制游戏棋盘 80
2.6.3 打印游戏信息 81
2.7 游戏逻辑设计83
2.7.1 游戏逻辑模块概述 83
2.7.2 设置数字显示不同颜色 83
2.7.3 实现相同数字合并 85
2.7.4 判断数字能否移动 88
2.7.5 判断游戏成功 92
2.7.6 判断游戏失败 94
2.7.7 键盘控制数字移动 95
2.8 开始游戏模块设计98
2.8.1 开始游戏模块概述 98
2.8.2 获得游戏当前时间 99
2.8.3 在随机位置显示初始数字2或者499
2.8.4 设置按键操作 .100
2.8.5 判断游戏成功或失败 .101
2.8.6 重新开始游戏 .102
2.9 游戏规则介绍模块设计.103
2.9.1 游戏规则介绍 .103
2.9.2 游戏规则介绍的实现 .104
2.10 游戏按键说明模块设计105
2.10.1 游戏按键说明 105
2.10.2 按键说明界面的实现 106
2.11 一起来找茬107
2.12 本章总结110
攻占C语言大陆.111
C语言大咖实战训练营.112

第3章 贪吃蛇大作战(C + 读写文件数据 + 按键监听实现).113
3.1 开发背景.116
3.2 系统功能设计.116
3.2.1 系统功能结构 .116
3.2.2 系统业务流程 .117
3.3 使用Microsoft Visual C++ 6.0创建项目117
3.3.1 系统开发环境要求 .117
3.3.2 创建项目 117
3.3.3 Visual C++ 6.0主界面介绍 .120
3.4 预处理模块设计.121
3.4.1 文件引用 121
3.4.2 宏定义 122
3.4.3 定义全局变量 .122
3.4.4 函数声明 124
3.5 游戏欢迎界面设计.125
3.5.1 欢迎界面概述 .125
3.5.2 绘制字符蛇 .125
3.5.3 绘制菜单选项 .129
3.6 游戏主窗体设计.132
3.6.1 游戏主窗体设计概述 .132
3.6.2 创建游戏地图 .133
3.6.3 绘制右侧得分和小提示 .135
3.6.4 读取游戏最高分 .136
3.6.5 绘制蛇身 137
3.6.6 创建并随机出现食物 .139
3.7 游戏逻辑设计.141
3.7.1 游戏逻辑概述 .141
3.7.2 判断蛇是否咬到自己 .141
3.7.3 判断蛇是否撞到墙 .142
3.7.4 设置蛇加速前进 .142
3.7.5 设置蛇减速前进 .143
3.7.6 设置不按键时蛇的前进方向 .143
3.7.7 通过键盘方向键控制蛇前进方向.148
3.8 游戏失败界面设计.151
3.8.1 游戏失败界面概述 .151
3.8.2 绘制字符边框 .153
3.8.3 打印边框中的信息 .155
3.8.4 存储游戏最高分 .157
3.8.5 设计分支选项 .158
3.9 游戏说明模块设计.160
3.9.1 游戏说明模块概述 .160
3.9.2 游戏说明模块的实现 .161
3.10 一起来找茬162
3.11 本章总结164
攻占C语言大陆.165
C语言大咖实战训练营.166

第4章 超级万年历(C + 获得日期时间 + 条件选择实现)167
4.1 开发背景.170
4.2 系统功能设计.170
4.2.1 系统功能结构 .170
4.2.2 系统业务流程 .171
4.3 系统开发环境要求.171
4.4 预处理模块设计.171
4.4.1 文件引用 .171
4.4.2 宏定义 .171
4.4.3 定义全局变量 .172
4.4.4 函数声明 .173
4.5 主窗体设计.174
4.5.1 主窗体设计概述 .174
4.5.2 绘制主界面 .175
4.5.3 设计选项一:查询农历 .177
4.5.4 设计选项二:查询公历 .180
4.5.5 设计选项三:显示月历 .182
4.5.6 设计选项四:计算某天距今天的天数 .184
4.5.7 设计选项五:查询距离今天相应天数的日期 .187
4.5.8 设计选项六:计算任意两天之间的天数差 .188
4.5.9 设计选项七:显示二十四节气 .191
4.5.10 设计选项八:显示节日 193
4.6 打印月历.196
4.6.1 打印月历概述 .196
4.6.2 查询公历月首所在的农历月 .197
4.6.3 判断闰月和大小月 .198
4.6.4 计算月历中第一天的农历日期 .199
4.6.5 计算节气日期所在位置 .199
4.6.6 打印公历月历 .200
4.6.7 打印农历月历 .202
4.7 其他算法.205
4.7.1 概述 .205
4.7.2 计算当前月份的天数 .205
4.7.3 公历查询农历 .207
4.7.4 农历查询公历 .210
4.7.5 显示二十四节气 .213
4.7.6 获得公历节日 .214
4.8 本章总结.216

第5章 图书管理系统(窗体版)(C + MySQL + WINAPI编程实现)217
5.1 开发背景.220
5.2 系统功能设计.220
5.2.1 数据库建模 .220
5.2.2 系统功能结构 .220
5.2.3 建立数据库 .221
5.2.4 导入数据表 .221
5.3 系统开发环境要求.223
5.4 WINAPI编程.223
5.4.1 Win 32程序的入口 .223
5.4.2 WinMain函数的设计 224
5.4.3 创建一个对话框窗体 .225
5.4.4 消息响应函数 .226
5.5 工具模块设计.227
5.5.1 工具模块概述 .227
5.5.2 工具模块的实现 .227
5.6 登录模块设计.229
5.6.1 初始化数据库 .229
5.6.2 创建登录对话框 .231
5.7 客户端主界面设计.234
5.7.1 设计主界面的菜单栏与工具栏 .234
5.7.2 绘制主界面的背景 .238
5.8 基本信息管理模块设计.240
5.8.1 图书信息管理子模块设计 .240
5.8.2 图书信息管理对话框的消息响应函数 .240
5.8.3 图书信息管理界面中按钮的设计 .246
5.9 库存管理模块设计.248
5.9.1 图书入库管理子模块的设计 .248
5.9.2 实现图书入库管理对话框的消息响应函数 249
5.9.3 实现图书入库管理界面中的按钮功能 .255
5.10 查询模块设计255
5.10.1 入库查询子模块的设计 255
5.10.2 实现入库查询对话框的消息响应函数 256
5.10.3 实现入库查询界面中的按钮功能 259
5.11 本章总结260

第6章 学生个人消费管理系统(C + 条件编译 + 数组排序算法实现)261
6.1 开发背景.264
6.2 系统开发环境要求.264
6.3 系统功能设计.264
6.3.1 需求分析 .264
6.3.2 系统目标 .264
6.3.3 系统功能结构 .264
6.3.4 系统业务流程 .265
6.4 预处理模块设计.266
6.4.1 模块概述 .266
6.4.2 声明结构体 .266
6.4.3 头文件 .267
6.4.4 宏定义 .267
6.4.5 函数声明 .267
6.5 主函数设计.268
6.5.1 功能概述 .268
6.5.2 实现主函数Main .268
6.5.3 实现主界面菜单 .270
6.6 录入学生消费信息.271
6.6.1 模块概述 .271
6.6.2 使用链表存储信息 .272
6.6.3 实现信息录入功能 .273
6.7 读取学生消费信息.276
6.8 查询学生消费信息.278
6.8.1 模块概述 .278
6.8.2 实现信息查询功能 .279
6.9 删除学生消费信息.280
6.9.1 模块概述 .280
6.9.2 实现链表的删除功能 .281
6.9.3 实现信息删除功能 .281
6.10 显示学生消费信息284
6.10.1 模块概述 284
6.10.2 实现信息显示功能 285
6.11 保存学生消费信息286
6.11.1 模块概述 286
6.11.2 实现文件读写功能 288
6.11.3 实现信息保存功能 288
6.12 本章总结289

第7章 企业员工管理系统(C + 存储管理 + 字符串处理函数实现)291
7.1 开发背景.294
7.2 系统开发环境要求.294
7.3 系统功能设计.294
7.4 预处理模块设计.294
7.4.1 模块概述 .294
7.4.2 文件引用 .295
7.4.3 定义全局变量 .295
7.4.4 定义结构体 .295
7.4.5 函数声明 .296
7.5 主函数设计.296
7.5.1 功能概述 .296
7.5.2 实现主函数 .296
7.6 系统初始化.297
7.6.1 模块概述 .297
7.6.2 操作密码文件 .298
7.6.3 进入企业员工管理系统 .299
7.7 系统登录模块设计.301
7.7.1 模块概述 .301
7.7.2 使用字符串比较函数strcmp() .302
7.7.3 实现密码验证功能 .302
7.8 主界面功能菜单设计.303
7.8.1 模块概述 .303
7.8.2 设计主菜单界面 .303
7.8.3 实现主菜单界面的分支选择 .304
7.9 添加员工信息.306
7.9.1 模块概述 .306
7.9.2 使用fwrite()函数 .307
7.9.3 实现添加员工信息功能 .307
7.10 删除员工信息309
7.10.1 模块概述 309
7.10.2 实现删除员工信息功能 310
7.11 查询员工信息311
7.11.1 模块概述 311
7.11.2 查询员工信息的界面设计 312
7.11.3 根据姓名查找员工信息 314
7.11.4 根据工号查找员工信息 315
7.11.5 根据电话号码查找员工信息 316
7.11.6 根据QQ号查找员工信息 317
7.11.7 显示查询结果 318
7.12 修改员工信息319
7.12.1 模块概述 319
7.12.2 实现修改员工信息的界面设计 320
7.12.3 修改员工工资 323
7.12.4 修改员工年龄 323
7.12.5 修改非数值型信息 324
7.13 统计员工信息325
7.13.1 模块概述 325
7.13.2 实现统计员工信息 326
7.14 系统密码重置326
7.14.1 模块概述 326
7.14.2 实现系统密码重置 327
7.15 本章总结328

第8章 学生信息管理系统(C + 结构体数组 +格式输出实现)331
8.1 开发背景.334
8.2 系统开发环境要求.334
8.3 系统功能设计.334
8.4 预处理模块设计.334
8.4.1 模块概述 .334
8.4.2 控制输出格式 .335
8.4.3 文件引用 .335
8.4.4 宏定义 .335
8.4.5 函数声明 .336
8.5 主函数设计.336
8.5.1 功能概述 .336
8.5.2 实现主函数 .337
8.5.3 显示主菜单 .339
8.6 录入学生信息.339
8.6.1 模块概述 .339
8.6.2 实现文件的打开和关闭功能 .341
8.6.3 实现录入学生信息 .341
8.7 查询学生信息.343
8.7.1 模块概述 .343
8.7.2 查询没有记录的文件 .345
8.7.3 查找并打印学生信息 .346
8.8 删除学生信息.346
8.8.1 模块概述 .346
8.8.2 实现删除学生信息 .347
8.9 修改学生信息.348
8.9.1 功能概述 .348
8.9.2 实现修改学生信息 .350
8.10 插入学生信息351
8.10.1 模块概述 351
8.10.2 实现插入学生信息 352
8.11 学生成绩排名353
8.11.1 功能概述 353
8.11.2 使用交换排序法实现排序功能 354
8.11.3 实现学生成绩排名 355
8.12 统计学生总数356
8.12.1 模块概述 356
8.12.2 实现统计学生总数 357
8.13 显示所有学生信息357
8.13.1 模块概述 357
8.13.2 读取并显示所有学生信息 358
8.14 本章总结359
攻占C语言大陆.360

第9章 C语言开发环境的搭建.361
9.1 Dev C++的安装与使用362
9.1.1 Dev C++的下载与安装 362
9.1.2 Dev C++的界面介绍 363
9.1.3 运行程序 .365
9.2 Visual C++6.0的安装与使用365
9.2.1 Visual C++6.0概述 365
9.2.2 Visual C++6.0的下载与安装 365
9.2.3 Visual C++6.0的界面介绍 369
9.2.4 运行程序 .369
武林荣誉称号榜370

第1章常用算法
扩展知识点:14个
实例001将十进制数转换为二进制数
实例002输出一个正方形
实例003求两个数的和
实例004三个数由小到大排序
实例005猴子摘桃
实例006计算某日是该年的第几天
实例007婚礼上的谎言
实例008百元买百鸡
实例009打鱼晒网问题
实例010小球下落问题
实例011巧分苹果
实例012老师分糖果
实例013判断闰年
实例014黑纸与白纸
实例015阿姆斯特朗数
实例016水池注水问题
实例017求学生总成绩和平均成绩
实例018检查字符类型
实例019模拟自动售货机
实例020加油站加油
实例021简单计算器
实例022一元钱的兑换方案
实例023打印乘法口诀表
实例024绘制余弦曲线
实例025打印杨辉三角
实例026求总数问题
实例027抽屉原理
实例028灯塔数量
实例029输出10~100之间的素数
实例030爱因斯坦阶梯问题
实例031银行存款问题
实例032计算字符串中的单词个数
实例033选票统计
实例034使用数组统计学生成绩
实例035模拟比赛打分
实例036设计魔方阵
实例037递归解决年龄问题
实例038分鱼问题
实例039分数计算器程序
实例040字符升序排列
实例041在指定的位置后插入字符串
实例042计算学生平均身高
实例043用宏定义实现值互换
第2章指针与链表操作
扩展知识点:2个
实例044使用指针实现数据交换
实例045使用指针实现整数排序
实例078输出今天星期几
实例079图的广度优先搜索
实例080用栈及递归计算多项式
实例081输出二维数组的一个元素
实例082取出整型数据的高字节数据
实例083简单的文本编辑器
实例084为具有三个数组元素的数组分配内存
实例085为二维数组动态分配内存
实例086商品信息的动态存放
实例087编写头文件包含圆面积的计算公式
实例088利用宏定义求偶数和
实例089输出二维数组有关值
实例090使用条件编译隐藏密码
第3章文件操作
扩展知识点:4个
实例091读取磁盘文件
实例092将数据写入磁盘文件
实例093格式化读写文件
实例094成块读写操作
实例095随机读写文件
实例096以“行”为单位读写文件
实例097将文件内容复制到另一文件
实例098合并两个文件信息
实例099统计文件内容
实例100文件的错误处理
实例101创建文件
实例102创建临时文件
实例103重命名文件
实例104删除文件
实例105删除文件中的内容
实例106关闭打开的所有文件
实例046指向结构体变量的指针
实例047使用指针输出数组元素
实例048使用指针查找数组中的最大值和最小值
实例049使用返回指针的函数查找最大值
实例050使用指针连接两个字符串
实例051用指针实现逆序存放数组元素值
实例052用指针数组构造字符串数组
实例053用指针函数输出学生成绩
实例054寻找相同元素的指针
实例055查找成绩不及格的学生
实例056使用指针的指针输出字符串
实例057使用指向指针的指针对字符串排序
实例058输入月份号输出英文月份名
实例059寻找指定元素的指针
实例060字符串的匹配
实例061比较计数
实例062找出最高分
实例063信息查询
实例064候选人计票程序
实例065使用malloc()函数分配内存
实例066使用共用体存放学生和老师信息
实例067共用体处理任意类型数据
实例068创建单链表
实例069创建双链表
实例070创建循环链表
实例071使用头插入法建立单链表
实例072调用calloc()函数动态分配内存
实例073输出约瑟夫环
实例074创建顺序表并插入元素
实例075合并两个链表
实例076单链表就地逆置
实例077使用指针交换两个数组中的最大值
实例107同时显示两个文件的内容1
实例108文件分割
实例109文件加密
实例110明码序列号保护
实例111非明码序列号保护
实例112凯撒加密
实例113RSA加密
第4章系统相关
扩展知识点:25个
实例114固定格式输出当前时间
实例115当前时间转换
实例116显示程序运行时间
实例117设置DOS系统日期
实例118设置DOS系统时间
实例119获取当前日期与时间
实例120获取当地日期与时间
实例121设置系统日期
实例122获取BIOS常规内存容量
实例123读取和设置BIOS计时器
实例124获取CMOS密码
实例125鼠标中断
实例126设置文本显示模式
实例127获取当前磁盘空间信息
实例128备份或恢复硬盘分区表
实例129硬盘逻辑锁
实例130显卡类型测试
实例131获取环境变量
实例132获取系统配置信息
实例133获取寄存器信息
实例134恢复内存文本
实例135绘制立体窗口
实例136控制扬声器声音
实例137获取CapsLock键状态
实例138删除多级目录
实例139字符串复制到指定空间
实例140查找位置信息
实例141复制当前目录
实例142产生唯一文件
实例143不同亮度显示
实例144字母检测
实例145建立目录
实例146删除目录
实例147数字检测
实例148快速分类
实例149访问系统temp中的文件
实例150设置组合键
实例151求相对的最小整数
实例152求直角三角形斜边
实例153小数分离
实例154求任意数n次幂
实例155函数实现字符匹配
实例156任意大写字母转换成小写字母
实例157打印1到5的阶乘
第5章图形图像
扩展知识点:45个
实例158绘制直线
实例159绘制表格
实例160绘制矩形
实例161绘制椭圆
实例162绘制圆弧线
实例163绘制扇区
实例164绘制空心圆
实例165绘制正弦曲线
实例166绘制彩带
实例167黄色网格填充的椭圆
实例168红色间隔点填充多边形
实例169绘制五角星
实例170颜色变换
实例171彩色扇形
实例172输出不同字体
实例173相同图案的输出
实例174设置文本及背景颜色
实例175简单的键盘画图程序
实例176鼠标绘图
实例177艺术清屏
实例178图形时钟
实例179火箭发射
实例180左右移动的问候语
实例181正方形下落
实例182跳动的小球
实例183旋转的五角星
实例184变化的同心圆
实例185小球碰撞
实例186绘制圆形精美图案
实例187直线精美图案
实例188心形图案
实例189钻石图案
实例190雪花
实例191太阳花图案
第6章C语言游戏开发
扩展知识点:5个
实例192猜数字游戏
实例193打字游戏
实例194弹力球游戏
实例195吃豆游戏
实例196迷宫游戏
实例197俄罗斯方块
实例198推箱子游戏
实例199贪吃蛇游戏
实例200五子棋游戏
附录1C语言代码规范
附录2常用字符与ASCII代码对照表
第1篇基础知识
第1章C语言概述
1.1C语言的发展史
1.1.1程序语言简述
1.1.2C语言的发展与应用
1.2C语言的特点
1.3VisualC++6.0开发环境
1.3.1VisualC++6.0的下载与安装
1.3.2VisualC++6.0创建C文件
1.4一个简单的C程序
1.5一个完整的C程序
1.6C语言程序的格式
1.7小结
第2章算法
2.1算法的基本概念
2.1.1算法的特性
2.1.2算法的优劣
2.2算法的描述
2.2.1自然语言
2.2.2流程图
2.2.3N-S流程图
2.3难点解答
2.3.1当型循环和直到型循环有什么不同?
2.3.2如何设计一个好的算法?
2.4小结
第3章C语言基础
3.1关键字
3.2标识符
3.3数据类型
3.4常量
3.4.1整型常量
3.4.2实型常量
3.4.3字符型常量
3.4.4转义字符
3.4.5符号常量
3.5变量
3.5.1整型变量
3.5.2实型变量
3.5.3字符型变量
3.6变量的存储类别
3.6.1auto变量
3.6.2static变量
3.6.3register变量
3.6.4extern变量
3.7混合运算
3.8难点解答
3.8.1变量的赋值和初始化
3.8.2如何合理定义变量的类型?
3.9小结
3.10动手纠错
第4章运算符与表达式
4.1表达式
4.2赋值运算符与赋值表达式
4.2.1变量赋初值
4.2.2自动类型转换
4.2.3强制类型转换
4.3算术运算符与算术表达式
4.3.1算术运算符
4.3.2算术表达式
4.3.3优先级与结合性
4.3.4自增/自减运算符
4.4关系运算符与关系表达式
4.4.1关系运算符
4.4.2关系表达式
4.4.3优先级与结合性
4.5逻辑运算符与逻辑表达式
4.5.1逻辑运算符
4.5.2逻辑表达式
4.5.3优先级与结合性
4.6位逻辑运算符与位逻辑表达式
4.6.1位逻辑运算符
4.6.2位逻辑表达式
4.7逗号运算符与逗号表达式
4.8复合赋值运算符
4.9难点解答
4.9.1自增前缀与自增后缀的区别(例如:++i,i++)
4.9.2逗号表达式的要领
4.10小结
4.11动手纠错
第5章常用的数据输入/输出函数
5.1语句
5.2字符数据输入/输出
5.2.1字符数据输出
5.2.2字符数据输入
5.3字符串输入/输出
5.3.1字符串输出函数
5.3.2字符串输入函数
5.4格式输出函数
5.5格式输入函数
5.6难点解答
5.6.1putchar()、puts()和printf()三个函数的区别
5.6.2getchar()、gets()和scanf()三个函数的区别
5.7小结
5.8动手纠错
第6章选择结构程序设计
6.1if语句
6.2if语句的基本形式
6.2.1if语句形式
6.2.2if…else语句形式
6.2.3elseif语句形式
6.3if语句的嵌套
6.4条件运算符
6.5switch语句
6.5.1switch语句的基本形式
6.5.2多路开关模式的switch语句
6.6if…else语句和switch语句的区别
6.7难点解答
6.7.1if…else和elseif语句的区别
6.7.2if和if…else语句的区别
6.8小结
6.9动手纠错
第7章循环控制
7.1循环语句
7.2while语句
7.3do…while语句
7.4for语句
7.4.1for语句使用
7.4.2for循环的变体
7.4.3for语句中的逗号应用
7.53种循环语句的比较
7.6循环嵌套
7.6.1循环嵌套的结构
7.6.2循环嵌套实例
7.7转移语句
7.7.1break语句
7.7.2continue语句
7.7.3goto语句
7.8难点解答
7.8.1continue和break语句的区别
7.8.2while和do…while语句的区别
7.9小结
7.10动手纠错
第2篇核心技术
第8章数组
8.1一维数组
8.1.1一维数组的定义和引用
8.1.2一维数组初始化
8.1.3一维数组应用
8.2二维数组
8.2.1二维数组的定义和引用
8.2.2二维数组初始化
8.2.3二维数组应用
8.3字符数组
8.3.1字符数组的定义和引用
8.3.2字符数组初始化
8.3.3字符数组的结束标志
8.3.4字符数组的输入和输出
8.3.5字符数组应用
8.4多维数组
8.5数组的排序算法
8.5.1选择法排序
8.5.2冒泡法排序
8.5.3交换法排序
8.5.4插入法排序
8.5.5折半法排序
8.5.6排序算法的比较
8.6字符串处理函数
8.6.1字符串复制
8.6.2字符串连接
8.6.3字符串比较
8.6.4字符串大小写转换
8.6.5获得字符串长度
8.7数组应用
8.7.1反转输出字符串
8.7.2输出系统日期和时间
8.8难点解答
8.8.1数组下标越界
8.8.2为什么使用数组
8.9小结
8.10动手纠错
第9章函数
9.1函数概述
9.2函数的定义
9.2.1函数定义的形式
9.2.2定义与声明
9.3返回语句
9.3.1无返回值函数
9.3.2返回值
9.4函数参数
9.4.1形式参数与实际参数
9.4.2数组作函数参数
9.4.3main函数的参数
9.5函数的调用
9.5.1函数的调用方式
9.5.2嵌套调用
9.5.3递归调用
9.6内部函数和外部函数
9.6.1内部函数
9.6.2外部函数
9.7局部变量和全局变量
9.7.1局部变量
9.7.2全局变量
9.8函数应用
9.9难点解答
9.9.1怎样区分声明和定义
9.9.2为什么每个程序都有main函数?为什么不用声明就可以使用?
9.10小结
9.11动手纠错
第10章指针
10.1指针相关概念
10.1.1地址与指针
10.1.2变量与指针
10.1.3指针变量
10.1.4指针自增自减运算
10.2数组与指针
10.2.1一维数组与指针
10.2.2二维数组与指针
10.2.3字符串与指针
10.2.4字符串数组
10.3指向指针的指针
10.4指针变量作函数参数
10.5返回指针值的函数
10.6指针数组作main函数的参数
10.7难点解答
10.7.1为什么使用指针,指针的优点
10.7.2指针的初始化问题
10.8小结
10.9动手纠错
第3篇高级应用
第11章结构体与链表
11.1结构体
11.1.1结构体类型的概念
11.1.2结构体变量的定义
11.1.3结构体变量的引用
11.1.4结构体类型的初始化
11.2结构体数组
11.2.1定义结构体数组
11.2.2初始化结构体数组
11.3结构体指针
11.3.1指向结构体变量的指针
11.3.2指向结构体数组的指针
11.3.3结构体作为函数参数
11.4包含结构的结构
11.5链表
11.5.1链表概述
11.5.2创建动态链表
11.5.3输出链表
11.6链表相关操作
11.6.1链表的插入操作
11.6.2链表的删除操作
11.7难点解答
11.7.1结构体怎样赋值
11.7.2链表与数组
11.8小结
11.9动手纠错
第12章共用体与枚举类型
12.1共用体
12.1.1共用体的概念
12.1.2共用体变量的引用
12.1.3共用体变量的初始化
12.1.4共用体类型的数据特点
12.2枚举类型
12.3难点解答
12.3.1共用体和结构体的区别
12.3.2枚举类型什么时候使用?
12.4小结
12.5动手纠错
第13章位运算
13.1位与字节
13.2位运算操作符
13.2.1“与”运算符
13.2.2“或”运算符
13.2.3“取反”运算符
13.2.4“异或”运算符
13.2.5“左移”运算符
13.2.6“右移”运算符
13.3循环移位
13.4位段
13.4.1位段的概念与定义
13.4.2位段相关说明
13.5难点解答
13.5.1&与&&有什么不同?
13.5.2|与||的区别
13.6小结.
13.7动手纠错
第14章预处理
14.1宏定义
14.1.1不带参数的宏定义
14.1.2带参数的宏定义
14.2#include指令
14.3条件编译
14.3.1#if命令
14.3.2#ifdef及#ifndef命令
14.3.3#undef命令
14.3.4#line命令
14.3.5#pragma命令
14.4小结
14.5动手纠错
第15章文件
15.1文件概述
15.2文件基本操作
15.2.1文件指针
15.2.2文件的打开
15.2.3文件的关闭
15.3文件的读写
15.3.1fputc()函数
15.3.2fgetc()函数
15.3.3fputs()函数
15.3.4fgets()函数
15.3.5fprintf()函数
15.3.6fscanf()函数
15.3.7fread()和fwrite()函数
15.4文件的定位
15.4.1fseek()函数
15.4.2rewind()函数
15.4.3ftell()函数
15.5难点解答
15.5.1怎样运行本章程序
15.5.2为什么程序后都有fclose()函数
15.6小结
15.7动手纠错
第16章存储管理
16.1内存组织方式
16.1.1内存的组织方式
16.1.2堆与栈
16.2动态管理
16.2.1malloc()函数
16.2.2calloc()函数
16.2.3realloc()函数
16.2.4free()函数
16.3内存丢失
16.4难点解答
16.4.1malloc()函数分配内存为什么常写(int*)?
16.4.2malloc()、calloc()、realloc()函数的区别?
16.5小结
16.6动手纠错
第17章网络套接字编程
17.1计算机网络基础
17.1.1IP地址
17.1.2OSI七层参考模型
17.1.3地址解析
17.1.4域名系统
17.1.5TCP/IP协议
17.1.6端口
17.1.7套接字的引入
17.1.8网络字节顺序
17.2套接字概述
17.2.1套接字概述
17.2.2TCP的套接字的socket编程
17.2.3UDP的套接字的socket编程
17.3套接字函数
17.3.1套接字函数介绍
17.3.2基于TCP的网络聊天程序
17.4难点解答
17.4.1TCP与UDP的比较
17.4.2如何实现网络通信
17.5小结
17.6动手纠错
第4篇项目实战
第18章学生成绩管理系统
18.1需求分析
18.2系统设计
18.3功能设计
18.3.1功能选择界面
18.3.2录入学生成绩信息
18.3.3查询学生成绩信息
18.3.4删除学生成绩信息
18.3.5修改学生成绩信息
18.3.6插入学生成绩信息
18.3.7统计学生人数
18.4小结