零基础趣学C语言

零基础趣学C语言

查阅电子书
手机扫码
  • 微信扫一扫

    关注微信公众号

编辑推荐

适读人群 :本书适用于刚刚学完或正在学习C语言的低年级同学,可作为高等院校的教材,也适合零售和培训。

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

  2.本书兼具实用性和趣味性。与其他C语言教材不同,本书以游戏开发的方式一步步引导读者完成一个游戏的设计和代码的编写,让读者体会到C语言的乐趣。

  3.本书在结构上先讲解实用基础的编程知识,然后通过游戏案例的方式带领读者使用基础知识进行编程,最后再讲解较难的栈、结构体等。让读者能够快速入门。

  4.本书配有对应的教学视频,读者可以扫描二维码观看具体章节的细致讲解,学习程序开发软件的安装以及游戏引擎的使用方法。

  5.本书配备了如鹏教育的线上服务,读者可以享受提问秒回、学习督导、代码批改、简历和面试指导等系统化的教学服务,提高学习动力和效率。

内容简介

本书以C语言知识为基石,如鹏游戏引擎为框架,分三篇共13章来介绍C语言。第一篇为基础语法篇,包括C语言初识、数据类型、运算符与表达式、选择结构、循环结构、函数初识和数组;第二篇为中级游戏开发篇,包括游戏引擎初识、常用元素介绍、游戏开发基础和高级;第三篇为高级指针篇,内容包括指针初识和内存管理。

作者简介

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

章节目录

第一篇基础语法篇

第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.4IDE的比较与选择4

1.2.5VisualStudio2012下载与安装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.7printf与数据类型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.1if语句71

4.1.1if语句的第一种形式71

4.1.2if语句的第二种形式73

4.1.3if语句的第三种形式74

4.1.4if语句常见错误76

4.1.5if案例—判断季节77

4.1.6if语句嵌套79

4.1.7if语句与三元运算符81

4.2switch语句81

4.2.1switch语句一般形式81

4.2.2switch语句优化83

4.2.3switch语句常见错误84

4.2.4关于default的几点说明87

4.3课后习题88

4.4习题答案89

第5章循环结构

5.1while循环语句91

5.1.1while循环应用92

5.1.2while循环常见错误93

5.2do…while循环语句94

5.2.1do…while循环应用95

5.2.2do…while常见错误96

5.2.3do…while与while的区别96

5.3for循环语句97

5.3.1for循环应用98

5.3.2for循环常见错误99

5.3.3for循环其他几种写法101

5.3.4for循环嵌套102

5.4改变循环执行状态103

5.4.1break语句104

5.4.2continue语句107

5.4.3break语句与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.2sizeof计算数组元素字节数132

7.2.3sizeof计算数组总字节数133

7.2.4sizeof计算数组长度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.5sizeof计算字符串长度140

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

7.3.7中文字符串142

7.3.8字符串元素遍历143

7.3.9char方式引用字符串144

7.3.10char类型数组简介144

7.4数组案例145

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

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

7.4.3atoi字符串转整型函数147

7.4.4sprintf字符串格式化函数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.1pauseGame设置游戏暂停时间函数160

9.1.2setGameSize设置窗口尺寸函数161

9.1.3setGameTitle设置窗口标题函数161

9.2文本元素162

9.2.1createText创建文本函数162

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

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

9.2.4setText修改文本内容函数165

9.2.5hideText隐藏文本函数166

9.2.6showText显示文本函数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.5createImage创建图片元素函数178

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

9.3.7setImageSource修改显示图片函数180

9.3.8hideImage隐藏图片函数181

9.3.9showImage显示图片函数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.3createSprite创建精灵函数191

9.4.4playSpriteAnimate播放精灵动作函数192

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

9.4.6hideSprite隐藏精灵函数194

9.4.7showSprite显示精灵函数195

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

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

9.4.10getSpriteHeight获取精灵高度函数199

9.4.11getSpriteWidth获取精灵宽度函数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.1getPressedKeyCode获取按键函数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.8scanf获取输入数据函数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.1strcmp字符串比较函数288

12.4.2strcpy字符串复制函数289

12.4.3memcpy内存复制函数290

12.4.4memcpy与strcpy的区别291

12.4.5atof字符串转浮点型函数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.8memset内存初始化函数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.6typedef类型另起名函数313

13.2.7结构体复制315

13.3课后习题316

13.4习题答案316

零基础趣学C语言是2019年由人民邮电出版社出版,作者如鹏教育。

得书感谢您对《零基础趣学C语言》关注和支持,如本书内容有不良信息或侵权等情形的,请联系本网站。

你可能喜欢
C编程从入门到实践 电子书
更适合95后的C语言编程入门书。
现代C++语言核心特性解析 电子书
通过理论结合实践的内容编排,深入探讨C11到C20引入的语言核心特性。
C语言程序设计:现代方法(第2版·修订版) 电子书
C语言入门零基础自学教程新升级,增加C1X相关内容,讲述C的所有特性,国外诸多名校的C语言课程教材,C开发人员的参考书。
Scratch 2.0少儿游戏趣味编程 电子书
适读人群 :本书适合小学生或初中学生自学,也非常适合中小学信息技术课教师或培训老师、想要让孩子学习Scratch 的家长阅读参考。 全彩印刷 十多个精彩游戏项目寓教于乐 赠送价值99元的视频课程 方便亲子互动和自学 本书通过14 款有趣的小游戏和小程序,由浅入深地向读者介绍Scratch 编程的基本技能以及程序设计的思维和方法。 本书首先带领读者认识Scratch 2.0,了解Scratch 2.0 编程中用到的基本概念,然后按照初级、中级和高级3个难度层次,详细介绍了14 款趣味游戏的开发过程。附录部分给出了Scratch 2.0 中常用的编程积木的列表和说明,方便读者在需要时查阅。 本书具有以下特色: ● “做中学”的方法和理念,寓教于乐。 ● 注重基础知识的介绍和铺垫,训练编程思维。 ● 游戏选取注意代表性和趣味性,区分不同的难度层次。 ● 使用“小贴士”和特殊的版块,强调重点和难点。 ● 配有280分钟的详细视频讲解,方便小朋友自学。 本书适合中小学信息技术课教师或培训老师、想要让孩子学习Scratch的家长阅读参考,也非常适合小学生或初中学生自学。 本书带领读者编写的趣味游戏包括: .初级难度游戏 大家来找茬 迷宫探险 打地鼠 翻翻乐 打苍蝇 弹球 电子相册 知识问答 .中级难度游戏 少年劲舞团 “石头剪刀布”人机对战 贪吃蛇 双人五子棋 .高级难度游戏 全民飞机大战游戏 植物大战僵尸
父与子的编程之旅:与小卡特一起学Python 电子书
编程是一项充满乐趣的挑战,想要上手也非常容易!