注册 登录 进入教材巡展 进入在线书城
#

出版时间:2021年12月

出版社:南京大学出版社

以下为《C语言程序设计——游戏案例驱动》的配套数字资源,这些资源在您购买图书后将免费附送给您:
  • 南京大学出版社
  • 9787305251672
  • 1版
  • 422578
  • 61223773-5
  • 平装
  • 16开
  • 2021年12月
  • 488
  • 304
  • 工学
  • 计算机科学与技术
  • TP312.8
  • 计算机类、工科类
  • 本科
作者简介
江苏海洋大学教授、教学名师。
查看全部
内容简介
本书入选“十三五”江苏省高等学校重点教材,教材编写的基本思路是语法讲解、项目开发并重,把游戏项目开发实践应用于C语言课程教学内容中,培养学生对编程的兴趣。全书以“提出问题→分析问题→代码设计→代码分析→代码改进→经验总结”的任务驱动式进行组织内容,本着少讲枯燥的语法,只讲必须用到的规范性的语法知识,在讲解基本流程控制结构之后就带着读者编写游戏,然后根据游戏功能优化、扩展需求定制讲解后续语法。每讲一个知识点,都会回过头去改进和完善之前的游戏代码,通过游戏案例逐步应用学到的语法知识,在实际编程中加深体会,逐步强化学生对C语言编程的兴趣和能力,同时将软件工程的基本原理穿插到项目开发过程中,从而让学生体会到过程化程序设计的精髓,提升学生的解决复杂问题的工程实践能力,本书可作为高等院校本科生的教材以及教学参考书。
目录
第1章 初识C语言 - 1 -
1.1 编程入门 - 1 -
1.1.1 为什么要学习编程 - 1 -
1.1.2 什么是程序 - 2 -
1.1.3计算机语言 - 2 -
1.2 认识C语言 - 3 -
1.2.1 C语言的前世今生 - 3 -
1.2.2 C语言的优势 - 3 -
1.2.3 程序设计的一般过程 - 4 -
1.3 C程序开发环境 - 5 -
1.3.1 编辑器、编译器与集成开发环境 - 5 -
1.3.2 IDE的比较与选择 - 5 -
1.4 第一个C程序 - 5 -
1.4.1 新建一个解决方案 - 5 -
1.4.2 添加.c文件 - 7 -
1.4.3 编辑第一个C程序 - 9 -
1.4.4 生成可执行程序 - 10 -
1.4.5 查看编译结果 - 12 -
1.4.6 代码解析 - 13 -
1.5 VS2012开发环境安装 - 14 -
1.6 项目实训 - 17 -
1.6.1 猜拳游戏 - 17 -
1.6.2 飞机打靶游戏 - 18 -
1.7 习题及解答 - 19 -
第2章 输入输出 - 21 -
2.1 C语言中的库函数 - 21 -
2.1.1 什么库函数 21
2.1.2函数的基本结构 - 22 -
2.2.3 stdio.h - 22 -
2.2常量与变量 - 22 -
2.2.1 常量与变量 - 22 -
2.3 printf()、scanf()函数 - 25 -
2.3.1 printf()函数 - 25 -
2.3.2 scanf()函数 - 27 -
2.4 putchar()、getchar()函数 - 29 -
2.4.1 putchar()函数 - 30 -
2.4.2 getchar()函数 - 30 -
2.5 综合实例 - 31 -
2.6 项目实训 - 32 -
2.6.1猜拳游戏 - 32 -
2.6.2 飞机打靶游戏 - 33 -
2.7 习题 - 34 -
第3章 顺序结构 - 37 -
3.1 算法与程序控制结构 - 37 -
3.1.1 算法 - 37 -
3.1.2 三种基本流程结构 - 38 -
3.1.3基本流程结构的流程图表示 - 39 -
3.2 C语句 - 41 -
3.2.1 C语句的作用 - 41 -
3.2.2 C语句的分类 - 41 -
3.3 C基本运算符 - 42 -
3.3.1 C运算符种类 - 42 -
3.3.2 C基本运算符 - 42 -
3.3.3优先级与求值顺序 - 43 -
3.3.4 其他运算符 - 44 -
3.4顺序结构语句 - 48 -
3.4.1 表达式语句 - 48 -
3.4.2 变量定义语句 - 49 -
3.4.3 函数调用语句 - 49 -
3.5表达式混合运算与类型转换 - 50 -
3.5.1数据类型的自动转换 - 50 -
3.5.2数据类型的强制转换 - 51 -
3.6 综合实例 - 52 -
3.7 项目实训 - 52 -
3.7.1猜拳游戏 - 52 -
3.7.2飞机打靶游戏 - 54 -
3.8 习题 - 57 -
第4章 分支结构 - 59 -
4.1分支结构 - 59 -
4.2条件判断 - 60 -
4.2.1 关系运算 - 60 -
4.2.2 逻辑运算 - 61 -
4.3 if语句 - 61 -
4.3.1 最简单的if语句 - 62 -
4.3.2 if语句双分支结构 - 62 -
4.3.3 多重选择if语句 - 65 -
4.3.4多层嵌套的 if语句 - 66 -
4.4 switch语句 - 69 -
4.4.1 switch语句一般语法 - 69 -
4.4.2 switch语句中的break - 70 -
4.5综合实例 - 73 -
4.6 项目实训 - 74 -
4.6.1猜拳游戏 - 74 -
4.6.2 飞机打靶游戏 - 78 -
4.7 习题 - 79 -
第5章 循环结构 - 82 -
5.1 循环概述 - 82 -
5.2 while语句 - 83 -
5.2.1 While循环语法结构 - 83 -
5.2.2死循环 - 85 -
5.3 do…while语句 - 86 -
5.3.1 do…while语法结构 - 86 -
5.3.2 while与do…while的区别 - 87 -
5.4 for语句 - 87 -
5.4.1 for语句语法结构 - 87 -
5.4.2 三种循环语句比较 - 90 -
5.5 break和continue语句 - 90 -
5.6循环嵌套 - 91 -
5.7 综合实例 - 95 -
5.8 项目实训 - 98 -
5.8.1 猜拳游戏 - 98 -
5.8.2 飞机打靶游戏 - 101 -
5.9 习题 - 103 -
第6章 函数 - 109 -
6.1 函数的定义和调用 - 109 -
6.1.1 函数的定义 - 109 -
6.1.2 函数的声明 - 111 -
6.1.3 函数的调用 - 111 -
6.2 函数参数传值 - 112 -
6.3嵌套与递归 - 113 -
6.3.1 函数嵌套 - 113 -
6.3.2 函数的递归调用 - 114 -
6.4 变量的作用域 - 117 -
6.4.1 局部变量 - 117 -
6.4.2全局变量 - 118 -
6.5 综合实例 - 120 -
6.6 项目实训 - 124 -
6.6.1 猜拳游戏 - 124 -
6.6.2 飞机打靶游戏 - 129 -
6.8 习题 - 131 -
第 7 章 数组 - 139 -
7.1 一维数组 - 139 -
7.1.1 数组 - 139 -
7.1.2 一维数组的定义、存储与初始化 - 140 -
7.1.3 一维数组的引用与基本操作 - 141 -
7.1.4 一维数组作为函数参数 - 142 -
7.2 二维数组 - 144 -
7.2.1 二维数组的定义、存储与初始化 - 144 -
7.2.3 多维数组 - 147 -
7.2.4 二维数组作为函数参数传址调用 - 148 -
7.3字符串、字符数组与字符串数组 - 148 -
7.3.1字符数组的定义、初始化和输入/输出 - 149 -
7.3.2 字符串的输入/输出 - 149 -
7.3.3字符串处理函数 - 150 -
7.3.4字符串数组 - 151 -
7.4 数组操作进阶 - 151 -
7.4.2查找元素 - 155 -
7.4.3数组元素的插入与删除 - 156 -
7.5 综合实例 - 159 -
7.6 项目实训 - 166 -
7.6.1 猜拳游戏 - 166 -
7.6.2 飞机打靶游戏 - 172 -
7.7 习题 - 174 -
第8章 指针 - 185 -
8.1指针的概念 - 186 -
8.1.1变量的地址 - 186 -
8.1.2指针变量 - 186 -
8.2指针变量的定义和使用 - 187 -
8.2.1 指针变量的定义 - 187 -
8.2.2指针变量的初始化 - 187 -
8.2.3指针变量的使用 - 188 -
8.3指针运算 - 190 -
8.3.1算术运算 - 190 -
8.3.2逻辑运算 - 191 -
8.4 高级指针 - 191 -
8.5指针与一维数组 - 193 -
8.6指针与二维数组 - 195 -
8.6.1二维数组的存储 - 195 -
8.6.2二维数组指针的运算 - 196 -
8.6.3数组指针与指针数组 - 197 -
8.7指针函数和函数指针 - 197 -
8.7.1指针函数 - 197 -
8.7.2函数指针 - 200 -
8.8 综合实例 - 201 -
8.9 项目实训 - 204 -
8.9.1 猜拳游戏 - 204 -
8.9.2 飞机打靶游戏 - 207 -
8.9 习题及解答 - 209 -
第9章 结构体与链表 - 222 -
9.1结构体的声明与使用 - 222 -
9.1.1结构体的定义 - 222 -
9.1.2结构体变量定义 - 223 -
9.1.3结构体变量使用 - 224 -
9.2 结构体数组 - 225 -
9.3结构体指针 - 226 -
9.3.1结构体变量定义 - 226 -
9.3.2 获取结构体成员 - 227 -
9.3.3结构体指针作为函数参数 - 228 -
9.4链表 - 229 -
9.4.1单链表的建立 - 229 -
9.4.2链表的遍历 - 232 -
9.4.3 链表元素的查找 - 233 -
9.4.4 链表元素的插入 - 233 -
9.4.5 链表元素的删除 - 234 -
9.5 宏定义 - 239 -
9.6 综合实例 - 240 -
9.7 项目实训 - 245 -
9.7.1 猜拳游戏 - 245 -
9.7.2 飞机打靶游戏 - 249 -
9.8 习题 - 251 -
第10章 文件 - 267 -
10.1 文件概述 - 267 -
10.1.1文件的分类 - 267 -
10.1.2文件的操作流程 - 268 -
10.1.3文件缓冲区 - 268 -
10.1.4流和文件指针变量 - 269 -
10.2 文件打开和关闭 - 269 -
10.2.1文件的打开 - 269 -
10.2.2文件的关闭 - 271 -
10.3文件的顺序读写 - 271 -
10.3.1文件的字符读/写函数 - 272 -
10.3.2文件的字符读/写函数 - 273 -
10.3.3文件格式化读写 - 274 -
10.4文件的随机读写 - 276 -
10.4.1文件定位操作 - 276 -
10.4.2文件的随机读写 - 278 -
10.5文件检测函数 - 280 -
10.6 综合实例 - 281 -
10.7 项目实训 - 286 -
10.7.1 猜拳游戏 - 286 -
10.7.2 飞机打靶游戏 - 288 -
10.8 习题 - 291 -
附录A 实训项目源代码 - 300 -
附录B 综合实例源代码 - 310 -
附录C 习题参考答案 - 328 -