欢迎光临
免费的PDF电子书下载网站

零基础趣学C语言 PDF下载

编辑推荐

1.作者杨中科为大型线上IT教育网站如鹏教育创始人,开发了如鹏游戏引擎,其录制的“C语言也能干大事”等视频教程影响了数十万编程学习者,被誉为“程序员的启蒙老师”。 2.本书兼具实用性和趣味性。与其他C语言教材不同,本书以游戏开发的方式一步步引导读者完成一个游戏的设计和代码的编写,让读者体会到C语言的乐趣。 3.本书在结构上先讲解实用基础的编程知识,然后通过游戏案例的方式带领读者使用基础知识进行编程,*后再讲解较难的栈、结构体等。让读者能够快速入门。 4.本书配有对应的教学视频,读者可以扫描二维码观看具体章节的细致讲解,学习程序开发软件的安装以及游戏引擎的使用方法。 5.本书配备了如鹏教育的线上服务,读者可以享受提问秒回、学习督导、代码批改、简历和面试指导等系统化的教学服务,提高学习动力和效率。 ;

内容简介

本书以C语言知识为基础,如鹏游戏引擎为框架,分三篇共13章来介绍C语言,主要内容划分如下:*篇为基础语法篇,内容包括C语言初识、数据类型、运算符与表达式、选择结构、循环结构、函数初识、数组;第二篇为中级游戏开发篇,内容包括如鹏游戏引擎初识、常用游戏元素介绍、游戏开发基础、游戏开发高级;第三篇为高级指针篇,内容包括指针初识、内存管理。本书*的特点是在案例部分以开发游戏的方式讲解C语言,并且提供了源程序、素材文件、配套视频、配套课件,更重要的是本书提供在线答疑,帮助读者更快、更好地掌握C语言。 本书内容有趣、难度适中、实例丰富,非常适合C语言零基础的读者,也适合相关院校作为教材使用。

作者简介

杨中科,大型线上IT教育网站如鹏教育创始人,自主研发了如鹏游戏引擎。其录制的“C语言也能干大事”等视频教程影响了数十万编程学习者,被誉为“程序员的启蒙老师”。

零基础趣学C语言 PDF下载

目录

第 一篇 基础语法篇

第 1章 C语言初识

1.1 编程入门 2

1.1.1 什么是程序 2

1.1.2 什么是计算机语言 2

1.1.3 什么是编译 2

1.2 编辑器、编译器与集成开发环境 3

1.2.1 什么是编辑器 3

1.2.2 什么是编译器 3

1.2.3 什么是集成开发环境(IDE) 4

1.2.4 IDE的比较与选择 4

1.2.5 Visual Studio 2012下载与安装 4

1.3 编写第 一个C语言程序 4

1.3.1 新建第 一个解决方案 5

1.3.2 添加.c文件 7

1.3.3 编辑C语言程序 8

1.3.4 生成可执行程序 9

1.3.5 查看编译结果 9

1.3.6 运行C语言程序 10

1.3.7 项目过期提示 10

1.3.8 生成错误提示 11

1.3.9 常见错误 11

1.3.10 设置行号显示 12

1.4 解析第 一个C语言程序 13

1.4.1 什么是控制台程序 13

1.4.2 什么是窗口程序 14

1.4.3 解析C语言程序 14

1.5 课后习题 15

1.6 习题答案 15

第 2章 数据类型

2.1 常量与变量 16

2.1.1 常量 16

2.1.2 变量 18

2.2 标识符与关键字 18

2.2.1 标识符 18

2.2.2 关键字 19

2.3 基本数据类型 19

2.3.1 数据类型引入 19

2.3.2 整数类型 20

2.3.3 浮点数类型 21

2.3.4 字符型 22

2.3.5 转义字符 25

2.3.6 字符与字符串的关系 29

2.3.7 printf与数据类型 29

2.4 注释 30

2.4.1 行注释 30

2.4.2 块注释 31

2.5 变量详解 32

2.5.1 定义变量 32

2.5.2 引用变量 33

2.5.3 定义多个变量 33

2.5.4 变量的本质 34

2.5.5 语句与语句块 35

2.5.6 顺序结构 36

2.6 变量需要注意的问题 37

2.6.1 先定义变量,再使用变量 37

2.6.2 变量定义必须在引用之前 37

2.6.3 变量重名问题 38

2.6.4 局部变量 39

2.6.5 局部变量的初始化 43

2.6.6 经典案例——交换变量 45

2.7 课后习题 48

2.8 习题答案 48

第3章 运算符与表达式

3.1 算术运算符和算术表达式 50

3.1.1 算术运算符 50

3.1.2 算术表达式 53

3.2 赋值运算符和赋值表达式 54

3.2.1 赋值运算符 54

3.2.2 赋值表达式 54

3.3 复合赋值运算符和复合赋值表达式 55

3.3.1 复合赋值运算符 55

3.3.2 复合赋值表达式 56

3.4 自增、自减运算符 57

3.4.1 自增运算符 57

3.4.2 自增运算表达式 57

3.4.3 自减运算符 59

3.4.4 自减运算表达式 59

3.5 强制类型转换运算符 60

3.6 关系运算符与关系表达式 61

3.6.1 关系运算符 61

3.6.2 关系表达式 62

3.7 逻辑运算符与逻辑表达式 63

3.7.1 逻辑运算符 63

3.7.2 逻辑表达式 64

3.8 逻辑运算的“陷阱”:短路与、短路或 65

3.8.1 短路与运算 65

3.8.2 短路或运算 66

3.9 条件运算符与条件表达式 66

3.9.1 条件运算符 67

3.9.2 条件表达式 67

3.10 求字节数运算符 68

3.11 课后习题 69

3.12 习题答案 70

第4章 选择结构

4.1 if语句 71

4.1.1 if语句的第 一种形式 71

4.1.2 if语句的第二种形式 73

4.1.3 if语句的第三种形式 74

4.1.4 if语句常见错误 76

4.1.5 if案例—判断季节 77

4.1.6 if语句嵌套 79

4.1.7 if语句与三元运算符 81

4.2 switch语句 81

4.2.1 switch语句一般形式 81

4.2.2 switch语句优化 83

4.2.3 switch语句常见错误 84

4.2.4 关于default的几点说明 87

4.3 课后习题 88

4.4 习题答案 89

第5章 循环结构

5.1 while循环语句 91

5.1.1 while循环应用 92

5.1.2 while循环常见错误 93

5.2 do…while循环语句 94

5.2.1 do…while循环应用 95

5.2.2 do…while常见错误 96

5.2.3 do…while与while的区别 96

5.3 for循环语句 97

5.3.1 for循环应用 98

5.3.2 for循环常见错误 99

5.3.3 for循环其他几种写法 101

5.3.4 for循环嵌套 102

5.4 改变循环执行状态 103

5.4.1 break语句 104

5.4.2 continue语句 107

5.4.3 break语句与continue语句对比 108

5.5 课后习题 108

5.6 习题答案 109

第6章 函数初识

6.1 函数引入 111

6.1.1 定义函数 111

6.1.2 调用函数 112

6.1.3 函数的实参与形参赋值 113

6.1.4 函数定义、调用注意事项 114

6.1.5 函数中的局部变量 117

6.1.6 函数参数的传递方式:值传递 117

6.1.7 函数返回值 118

6.1.8 无返回值函数中的return语句 120

6.1.9 函数调用的其他形式 121

6.2 函数案例 122

6.2.1 案例1:打印整数1~n的数值 122

6.2.2 案例2:计算整数1~n的累加和 123

6.2.3 案例3:求两个整数最大值 124

6.2.4 案例4:计算矩形面积 124

6.2.5 案例5:计算圆面积 125

6.3 课后习题 126

6.4 习题答案 127

第7章 数组

7.1 一维数组 128

7.1.1 定义一维数组 128

7.1.2 一维数组初始化 128

7.1.3 引用一维数组元素 129

7.1.4 一维数组其他初始化方式 130

7.2 数组遍历与常见错误 132

7.2.1 一维数组遍历 132

7.2.2 sizeof计算数组元素字节数 132

7.2.3 sizeof计算数组总字节数 133

7.2.4 sizeof计算数组长度 134

7.2.5 数组常见错误分析 135

7.3 字符数组 137

7.3.1 如何定义字符数组 137

7.3.2 字符数组初始化 137

7.3.3 字符串与字符串结束标志 138

7.3.4  0 使用时的注意事项 139

7.3.5 sizeof计算字符串长度 140

7.3.6 strlen计算字符串有效长度 141

7.3.7 中文字符串 142

7.3.8 字符串元素遍历 143

7.3.9 char* 方式引用字符串 144

7.3.10 char* 类型数组简介 144

7.4 数组案例 145

7.4.1 案例1:计算两个等长数组元素和 145

7.4.2 案例2:查找数组中最大值 146

7.4.3 atoi字符串转整型函数 147

7.4.4 sprintf字符串格式化函数 147

7.5 课后习题 149

7.6 习题答案 150

第8章 如鹏游戏引擎初识

8.1 配置游戏开发环境 152

8.1.1 创建第 一个游戏项目 152

8.1.2 分析第 一个游戏代码 154

8.1.3 小试牛刀—修改游戏代码 154

8.1.4 查看yzkgame.h头文件 157

8.2 游戏引擎基础知识 157

8.2.1 什么是像素 157

8.2.2 游戏窗口坐标 157

8.2.3 如何描述矩形 158

8.2.4 什么是图层 158

8.3 课后习题 159

8.4 习题答案 159

第9章 常用游戏元素介绍

9.1 游戏开发核心函数介绍 160

9.1.1 pauseGame设置游戏暂停时间函数 160

9.1.2 setGameSize设置窗口尺寸函数 161

9.1.3 setGameTitle设置窗口标题函数 161

9.2 文本元素 162

9.2.1 createText创建文本函数 162

9.2.2 setTextPosition设置文本显示位置函数 163

9.2.3 setTextFontSize设置文本字体大小函数 164

9.2.4 setText修改文本内容函数 165

9.2.5 hideText隐藏文本函数 166

9.2.6 showText显示文本函数 167

9.2.7 操作多个文本元素 168

9.2.8 文本元素常见错误 170

9.2.9 文本案例——判断年龄 172

9.2.10 文本案例——超级玛丽启动界面 173

9.3 图片元素 175

9.3.1 查看图片格式 175

9.3.2 快速转换图片格式 175

9.3.3 图片格式转换误区 176

9.3.4 图片文件夹存放位置 177

9.3.5 createImage创建图片元素函数 178

9.3.6 setImagePosition设置图片显示位置函数 179

9.3.7 setImageSource修改显示图片函数 180

9.3.8 hideImage隐藏图片函数 181

9.3.9 showImage显示图片函数 182

9.3.10 常见错误 183

9.3.11 图片案例——性别判断 187

9.3.12 图片案例——超级玛丽启动界面 188

9.4 精灵元素 189

9.4.1 精灵动作 189

9.4.2 精灵文件夹存放位置 190

9.4.3 createSprite创建精灵函数 191

9.4.4 playSpriteAnimate播放精灵动作函数 192

9.4.5 setSpritePosition设置精灵显示位置函数 193

9.4.6 hideSprite隐藏精灵函数 194

9.4.7 showSprite显示精灵函数 195

9.4.8 setSpriteFlipX精灵在x轴翻转函数 196

9.4.9 setSpriteFlipY精灵在y轴翻转函数 197

9.4.10 getSpriteHeight获取精灵高度函数 199

9.4.11 getSpriteWidth获取精灵宽度函数 200

9.4.12 精灵案例——精灵切换动作 201

9.4.13 精灵案例——精灵向右移动 202

9.4.14 精灵案例——精灵向右上方移动 203

9.5 课后习题 205

9.6 习题答案 205

第 10章 游戏开发基础

10.1 文本案例 206

10.1.1 呼吸字体 206

10.1.2 倒计时 208

10.1.3 秒表 209

10.2 精灵案例 215

10.2.1 精灵走圈 215

10.2.2 桌面弹球 218

10.3 课后习题 221

10.4 习题答案 221

第 11章 游戏开发高级

11.1 键盘输入功能 223

11.1.1 getPressedKeyCode获取按键函数 223

11.1.2 案例——按键控制精灵移动 225

11.2 随机数 227

11.2.1 生成[0,n)之间的随机数 229

11.2.2 生成[m,n)之间的随机数 230

11.2.3 封装随机数生成函数 230

11.3 吃金币游戏 232

11.3.1 吃金币游戏—吃金币 232

11.3.2 吃金币游戏—显示分数 238

11.3.3 吃金币游戏—吃到炸弹游戏结束 244

11.3.4 吃金币游戏—随机生成金币位置 250

11.4 课后习题 253

11.5 习题答案 253

第 12章 指针初识

12.1 指针知识先导 258

12.1.1 内存空间与内存地址 258

12.1.2 探索内存 259

12.1.3 指针变量:保存内存地址的变量 262

12.1.4 指针变量定义与初始化 263

12.1.5 引用指针变量 263

12.1.6 指针变量作函数参数:交换两个变量的值 265

12.1.7 指针变量作函数参数:获取三位整数的个、十、百位 268

12.1.8 scanf获取输入数据函数 269

12.2 数组与指针 271

12.2.1 数组元素地址初识 272

12.2.2 数组元素地址深入分析 274

12.2.3 数组名与数组首元素地址 276

12.2.4 指针加、减运算 276

12.2.5 数组作函数参数 278

12.2.6 *(a i)与a[i]等效 280

12.2.7 查找数组元素最大值 281

12.3 字符串与指针 282

12.3.1 字符串的引用与存储 282

12.3.2 字符串长度与字符串有效长度 284

12.3.3 自定义strlen函数的多种写法 286

12.4 字符串处理函数 288

12.4.1 strcmp字符串比较函数 288

12.4.2 strcpy字符串复制函数 289

12.4.3 memcpy内存复制函数 290

12.4.4 memcpy与strcpy的区别 291

12.4.5 atof字符串转浮点型函数 291

12.5 课后习题 292

12.6 习题答案 292

第 13章 内存管理

13.1 栈区与堆区 294

13.1.1 栈内存 294

13.1.2 栈内存注意事项 295

13.1.3 堆内存 296

13.1.4 堆内存注意事项 297

13.1.5 内存分配 298

13.1.6 返回函数内部数据的三种方法 299

13.1.7 为什么要初始化内存 301

13.1.8 memset内存初始化函数 303

13.1.9 案例——分割文件名与扩展名 305

13.2 结构体 307

13.2.1 结构体 307

13.2.2 定义结构体变量 308

13.2.3 初始化、引用结构体变量 309

13.2.4 结构体类型大小 311

13.2.5 结构体指针 311

13.2.6 typedef类型另起名函数 313

13.2.7 结构体复制 315

13.3 课后习题 316

13.4 习题答案 316

零基础趣学C语言 pdf下载声明

本pdf资料下载仅供个人学习和研究使用,不能用于商业用途,请在下载后24小时内删除。如果喜欢,请购买正版

pdf下载地址

版权归出版社和作者所有,下载链接已删除。如果喜欢,请购买正版!

链接地址:零基础趣学C语言