-
内容大纲
杨中科编著的《零基础趣学C语言》以C语言知识为基础,如鹏游戏引擎为框架,分三篇共13章来介绍C语言,主要内容划分如下:第一篇为基础语法篇,内容包括C语言初识、数据类型、运算符与表达式、选择结构、循环结构、函数初识、数组;第二篇为中级游戏开发篇,内容包括如鹏游戏引擎初识、常用游戏元素介绍、游戏开发基础、游戏开发高级;第三篇为高级指针篇,内容包括指针初识、内存管理。本书最大的特点是在案例部分以开发游戏的方式讲解C语言,并且提供了源程序、素材文件、配套视频、配套课件,更重要的是本书提供在线答疑,帮助读者更快、更好地掌握C语言。
本书内容有趣、难度适中、实例丰富,非常适合C语言零基础的读者,也适合相关院校作为教材使用。 -
作者介绍
杨中科,如鹏教育创始人,拥有15年IT行业工作经验,8年IT培训行业经验,录制的“C语言也能干大事”等视频教程影响了数十万的编程学习者,被誉为“程序员的启蒙老师”,精通Java、.Net、C、Python等编程语言,曾出版《自己动手写开发工具》《J2EE开发全程实录》《程序员的SOL金典》等图书。 -
目录
第一篇 基础语法篇
第1章 C语言初识
1.1 编程入门
1.1.1 什么是程序
1.1.2 什么是计算机语言
1.1.3 什么是编译
1.2 编辑器、编译器与集成开发环境
1.2.1 什么是编辑器
1.2.2 什么是编译器
1.2.3 什么是集成开发环境(IDE)
1.2.4 IDE的比较与选择
1.2.5 Visual Studio 2012下载与安装
1.3 编写第一个C语言程序
1.3.1 新建第一个解决方案
1.3.2 添加.c文件
1.3.3 编辑C语言程序
1.3.4 生成可执行程序
1.3.5 查看编译结果
1.3.6 运行C语言程序
1.3.7 项目过期提示
1.3.8 生成错误提示
1.3.9 常见错误
1.3.10 设置行号显示
1.4 解析第 一个C语言程序
1.4.1 什么是控制台程序
1.4.2 什么是窗口程序
1.4.3 解析C语言程序
1.5 课后习题
1.6 习题答案
第2章 数据类型
2.1 常量与变量
2.1.1 常量
2.1.2 变量
2.2 标识符与关键字
2.2.1 标识符
2.2.2 关键字
2.3 基本数据类型
2.3.1 数据类型引入
2.3.2 整数类型
2.3.3 浮点数类型
2.3.4 字符型
2.3.5 转义字符
2.3.6 字符与字符串的关系
2.3.7 printf与数据类型
2.4 注释
2.4.1 行注释
2.4.2 块注释
2.5 变量详解
2.5.1 定义变量
2.5.2 引用变量
2.5.3 定义多个变量
2.5.4 变量的本质
2.5.5 语句与语句块
2.5.6 顺序结构
2.6 变量需要注意的问题
2.6.1 先定义变量,再使用变量
2.6.2 变量定义必须在引用之前
2.6.3 变量重名问题
2.6.4 局部变量
2.6.5 局部变量的初始化
2.6.6 经典案例——交换变量
2.7 课后习题
2.8 习题答案
第3章 运算符与表达式
3.1 算术运算符和算术表达式
3.1.1 算术运算符
3.1.2 算术表达式
3.2 赋值运算符和赋值表达式
3.2.1 赋值运算符
3.2.2 赋值表达式
3.3 复合赋值运算符和复合赋值表达式
3.3.1 复合赋值运算符
3.3.2 复合赋值表达式
3.4 自增、自减运算符
3.4.1 自增运算符
3.4.2 自增运算表达式
3.4.3 自减运算符
3.4.4 自减运算表达式
3.5 强制类型转换运算符
3.6 关系运算符与关系表达式
3.6.1 关系运算符
3.6.2 关系表达式
3.7 逻辑运算符与逻辑表达式
3.7.1 逻辑运算符
3.7.2 逻辑表达式
3.8 逻辑运算的“陷阱”:短路与、短路或
3.8.1 短路与运算
3.8.2 短路或运算
3.9 条件运算符与条件表达式
3.9.1 条件运算符
3.9.2 条件表达式
3.10 求字节数运算符
3.11 课后习题
3.12 习题答案
第4章 选择结构
4.1 if语句
4.1.1 if语句的第一种形式
4.1.2 if语句的第二种形式
4.1.3 if语句的第三种形式
4.1.4 if语句常见错误
4.1.5 if案例—判断季节
4.1.6 if语句嵌套
4.1.7 if语句与三元运算符
4.2 switch语句
4.2.1 switch语句一般形式
4.2.2 switch语句优化
4.2.3 switch语句常见错误
4.2.4 关于default的几点说明
4.3 课后习题
4.4 习题答案
第5章 循环结构
5.1 while循环语句
5.1.1 while循环应用
5.1.2 while循环常见错误
5.2 do…while循环语句
5.2.1 do…while循环应用
5.2.2 do…while常见错误
5.2.3 do…while与while的区别
5.3 for循环语句
5.3.1 for循环应用
5.3.2 for循环常见错误
5.3.3 for循环其他几种写法
5.3.4 for循环嵌套
5.4 改变循环执行状态
5.4.1 break语句
5.4.2 continue语句
5.4.3 break语句与continue语句对比
5.5 课后习题
5.6 习题答案
第6章 函数初识
6.1 函数引入
6.1.1 定义函数
6.1.2 调用函数
6.1.3 函数的实参与形参赋值
6.1.4 函数定义、调用注意事项
6.1.5 函数中的局部变量
6.1.6 函数参数的传递方式:值传递
6.1.7 函数返回值
6.1.8 无返回值函数中的return语句
6.1.9 函数调用的其他形式
6.2 函数案例
6.2.1 案例1:打印整数1~n的数值
6.2.2 案例2:计算整数1~n的累加和
6.2.3 案例3:求两个整数最大值
6.2.4 案例4:计算矩形面积
6.2.5 案例5:计算圆面积
6.3 课后习题
6.4 习题答案
第7章 数组
7.1 一维数组
7.1.1 定义一维数组
7.1.2 一维数组初始化
7.1.3 引用一维数组元素
7.1.4 一维数组其他初始化方式
7.2 数组遍历与常见错误
7.2.1 一维数组遍历
7.2.2 sizeof计算数组元素字节数
7.2.3 sizeof计算数组总字节数
7.2.4 sizeof计算数组长度
7.2.5 数组常见错误分析
7.3 字符数组
7.3.1 如何定义字符数组
7.3.2 字符数组初始化
7.3.3 字符串与字符串结束标志
7.3.4 '\0'使用时的注意事项
7.3.5 sizeof计算字符串长度
7.3.6 strlen计算字符串有效长度
7.3.7 中文字符串
7.3.8 字符串元素遍历
7.3.9 char*方式引用字符串
7.3.10 char*类型数组简介
7.4 数组案例
7.4.1 案例1:计算两个等长数组元素和
7.4.2 案例2:查找数组中最大值
7.4.3 atoi字符串转整型函数
7.4.4 sprintf字符串格式化函数
7.5 课后习题
7.6 习题答案
第二篇 中级游戏开发篇
第8章 如鹏游戏引擎初识
8.1 配置游戏开发环境
8.1.1 创建第一个游戏项目
8.1.2 分析第一个游戏代码
8.1.3 小试牛刀—修改游戏代码
8.1.4 查看yzkgame.h头文件
8.2 游戏引擎基础知识
8.2.1 什么是像素
8.2.2 游戏窗口坐标
8.2.3 如何描述矩形
8.2.4 什么是图层
8.3 课后习题
8.4 习题答案
第9章 常用游戏元素介绍
9.1 游戏开发核心函数介绍
9.1.1 pauseGame设置游戏暂停时间函数
9.1.2 setGameSize设置窗口尺寸函数
9.1.3 setGameTitle设置窗口标题函数
9.2 文本元素
9.2.1 createText创建文本函数
9.2.2 setTextPosition设置文本显示位置函数
9.2.3 setTextFontSize设置文本字体大小函数
9.2.4 setText修改文本内容函数
9.2.5 hideText隐藏文本函数
9.2.6 showText显示文本函数
9.2.7 操作多个文本元素
9.2.8 文本元素常见错误
9.2.9 文本案例——判断年龄
9.2.10 文本案例——超级玛丽启动界面
9.3 图片元素
9.3.1 查看图片格式
9.3.2 快速转换图片格式
9.3.3 图片格式转换误区
9.3.4 图片文件夹存放位置
9.3.5 createImage创建图片元素函数
9.3.6 setImagePosition设置图片显示位置函数
9.3.7 setImageSource修改显示图片函数
9.3.8 hideImage隐藏图片函数
9.3.9 showImage显示图片函数
9.3.10 常见错误
9.3.11 图片案例——性别判断
9.3.12 图片案例——超级玛丽启动界面
9.4 精灵元素
9.4.1 精灵动作
9.4.2 精灵文件夹存放位置
9.4.3 createSprite创建精灵函数
9.4.4 playSpriteAnimate播放精灵动作函数
9.4.5 setSpritePosition设置精灵显示位置函数
9.4.6 hideSprite隐藏精灵函数
9.4.7 showSprite显示精灵函数
9.4.8 setSpriteFlipX精灵在x轴翻转函数
9.4.9 setSpriteFlipY精灵在y轴翻转函数
9.4.10 getSpriteHeight获取精灵高度函数
9.4.11 getSpriteWidth获取精灵宽度函数
9.4.12 精灵案例——精灵切换动作
9.4.13 精灵案例——精灵向右移动
9.4.14 精灵案例——精灵向右上方移动
9.5 课后习题
9.6 习题答案
第10章 游戏开发基础
10.1 文本案例
10.1.1 呼吸字体
10.1.2 倒计时
10.1.3 秒表
10.2 精灵案例
10.2.1 精灵走圈
10.2.2 桌面弹球
10.3 课后习题
10.4 习题答案
第11章 游戏开发高级
11.1 键盘输入功能
11.1.1 getPressedKeyCode获取按键函数
11.1.2 案例——按键控制精灵移动
11.2 随机数
11.2.1 生成[0,n)之间的随机数
11.2.2 生成[m,n)之间的随机数
11.2.3 封装随机数生成函数
11.3 吃金币游戏
11.3.1 吃金币游戏—吃金币
11.3.2 吃金币游戏—显示分数
11.3.3 吃金币游戏—吃到炸弹游戏结束
11.3.4 吃金币游戏—随机生成金币位置
11.4 课后习题
11.5 习题答案
第三篇 高级指针篇
第12章 指针初识
12.1 指针知识先导
12.1.1 内存空间与内存地址
12.1.2 探索内存
12.1.3 指针变量:保存内存地址的变量
12.1.4 指针变量定义与初始化
12.1.5 引用指针变量
12.1.6 指针变量作函数参数:交换两个变量的值
12.1.7 指针变量作函数参数:获取三位整数的个、十、百位
12.1.8 scanf获取输入数据函数
12.2 数组与指针
12.2.1 数组元素地址初识
12.2.2 数组元素地址深入分析
12.2.3 数组名与数组首元素地址
12.2.4 指针加、减运算
12.2.5 数组作函数参数
12.2.6 *(a+i)与a[i]等效
12.2.7 查找数组元素最大值
12.3 字符串与指针
12.3.1 字符串的引用与存储
12.3.2 字符串长度与字符串有效长度
12.3.3 自定义strlen函数的多种写法
12.4 字符串处理函数
12.4.1 strcmp字符串比较函数
12.4.2 strcpy字符串复制函数
12.4.3 memcpy内存复制函数
12.4.4 memcpy与strcpy的区别
12.4.5 atof字符串转浮点型函数
12.5 课后习题
12.6 习题答案
第13章 内存管理
13.1 栈区与堆区
13.1.1 栈内存
13.1.2 栈内存注意事项
13.1.3 堆内存
13.1.4 堆内存注意事项
13.1.5 内存分配
13.1.6 返回函数内部数据的三种方法
13.1.7 为什么要初始化内存
13.1.8 memset内存初始化函数
13.1.9 案例——分割文件名与扩展名
13.2 结构体
13.2.1 结构体
13.2.2 定义结构体变量
13.2.3 初始化、引用结构体变量
13.2.4 结构体类型大小
13.2.5 结构体指针
13.2.6 typedef类型另起名函数
13.2.7 结构体复制
13.3 课后习题
13.4 习题答案
同类热销排行榜
- C语言与程序设计教程(高等学校计算机类十二五规划教材)16
- 电机与拖动基础(教育部高等学校自动化专业教学指导分委员会规划工程应用型自动化专业系列教材)13.48
- 传感器与检测技术(第2版高职高专电子信息类系列教材)13.6
- ASP.NET项目开发实战(高职高专计算机项目任务驱动模式教材)15.2
- Access数据库实用教程(第2版十二五职业教育国家规划教材)14.72
- 信号与系统(第3版下普通高等教育九五国家级重点教材)15.08
- 电气控制与PLC(普通高等教育十二五电气信息类规划教材)17.2
- 数字电子技术基础(第2版)17.36
- VB程序设计及应用(第3版十二五职业教育国家规划教材)14.32
- Java Web从入门到精通(附光盘)/软件开发视频大讲堂27.92
推荐书目
-
孩子你慢慢来/人生三书 华人世界率性犀利的一枝笔,龙应台独家授权《孩子你慢慢来》20周年经典新版。她的《...
-
时间简史(插图版) 相对论、黑洞、弯曲空间……这些词给我们的感觉是艰深、晦涩、难以理解而且与我们的...
-
本质(精) 改革开放40年,恰如一部四部曲的年代大戏。技术突变、产品迭代、产业升级、资本对接...