c语言贪吃蛇大作业报告,C语言贪吃蛇实验报告_蓉蓉蓉蓉的博客-程序员宝宝

技术标签: c语言贪吃蛇大作业报告  

41528d3028836879cd698677c3999917.gifC语言贪吃蛇实验报告

C 语言程序设计实训报告姓 名 专 业 班 级 指导教师 二 011 年 7 月 14 日I I目录1 实训目的和要求 11.1 实训目的和任务 11.2 实训要求 12 实训任务内容 12.1 游戏规则 12.2 流程设计 23 软件使用说明 33.1 编辑程序主要软件 .33.2 编辑程序辅助软件 .33.3 程序使用过程 33.3.1 贪吃蛇进入 .33.3.2 贪吃蛇的玩法 43.3.3 贪吃蛇的结束 44 实训心得和体会 54.1 实训的心得 .54.2 实训的体会 .5参考文献 5附录:部分程序清单 .61 11 实训目的和要求1.1 实训目的和任务1. 巩固和加深学生对 C 语言课程的基本知识的理解和掌握2. 掌握 C 语言编程和程序调试的基本技能3. 利用 C 语言进行基本的软件设计4. 掌握书写程序设计说明文档的能力5. 提高运用 C 语言解决实际问题的能力1.2 实训要求1. 分析实训题目的要求2. 写出详细设计说明3. 编写程序代码,调试程序使其能正确运行4. 设计完成的软件要便于操作和使用4. 设计完成后提交实训报告2 实训任务内容2.1 游戏规则通过一个学期对 C 语言程序设计的学习,经过实训,完善我们对 C 语言学习的漏洞和未学会的知识点,更加熟练的掌握 C 语言程序设计,锻炼我们独立自主设计程序编辑代码的能力,通过设计出来的程序,提高我们对 C 语言学习的兴趣,玩家通过键盘控制蛇在地图上寻找食物,蛇吃蛇食物,可以加分,碰到四壁游戏结束。2.2 流程设计贪吃蛇流程图如图 1 所示贪吃蛇的初始位置贪吃蛇初始长度贪吃蛇的颜色2 2图 1 贪吃蛇流程图贪吃蛇运行说明图如图 2 所示图 2 贪吃蛇运行说明图3 软件使用说明3.1 编辑程序主要软件对于这次实训,主要使用的软件是 VC++6.0,在平日的学习中,我们也经常使用这种软件进行编程,已基本掌握此软件的用法,所以在此次实训中,我还是主要使用 VC++6.03.2 编辑程序辅助软件辅助软件有 turboc,因为在贪吃蛇程序代码设计阶段,VC++6.0 需要自己人工绘图,还没有熟练掌握绘图功能时,我使用 turboc 调用 graphics 中的函数避免了人工绘图的麻烦,利用 turboc 软件进行调试其他函数部分,待人工绘图结束后重新回归 VC++6.0。判断游戏是否继续:贪吃蛇不可以碰壁、碰自身,否则游戏结束。判断蛇体是否连续:吃食后如果身体连续则继续,否则停止。贪吃蛇的区域:16*16贪吃蛇程序的开始界面食物的初始位置显示得分和退出。贪吃蛇程序的运行利用全程标记法标记身体各段和头部,更改它们的坐标来完成键盘上下左右键控制贪吃蛇的走位,按反方向的键停止。食物利用随机函数随机产生,吃掉贪吃蛇身体加一,另加十分。贪吃蛇的初始化贪吃蛇的判断(详细如图 2 所示)贪吃蛇程序的运行贪吃蛇游戏的结束3 33.3 程序使用过程3.3.1贪吃蛇进入程序初始界面如图 3 所示,点击任意键进入游戏.图 3 程序初始界面3.3.2贪吃蛇的玩法贪吃蛇玩法如图 4 所示,使用键盘上的上下左右键,进行控制,使蛇头碰到图中的食物。图 4 贪吃蛇玩法3.3.3贪吃蛇的结束游戏结束界面如图 5 所示,游戏结束后,会显示玩家的得分,按 ESC 退出,按任意键重新开始。4 4图 5 游戏结束界面4 实训心得和体会4.1 实训的心得由于所学有限,自己经验不足,代码经常出现错误,一步一步总算流畅的进行下来,但在过程中也遇到不少问题,比如贪吃蛇在吃食物过程中如何实现进行加分,这个问题一直想了好久都未想出来,最后请老师帮忙解决,最终是用了一个全局变量和一次函数才显示出了加分的提示,可谓不易。问题出现不少,但总得一个一个解决,比如,在实训当中遇到一些函数,之前未学,自己只能上网查询,一步一步重新学起,自己学习自己不会的东西,学成之后,很有满足感,

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_42443533/article/details/116981306

智能推荐

MyBatis——小知识:MyBatis_映射配置文件_参数值获取_福建选手阿俊的博客-程序员宝宝

#{}:可以获取map中的值或者pojo对象属性的值;${}:可以获取map中的值或者pojo对象属性的值; select * from employee where id=${id} and last_name=#{lastName}select * from ${tableName} where id=${id} and lastName=#{lastName}Preparing:...

设计模式之观察者模式 (Observer Design Pattern)_Heaven-Wang的博客-程序员宝宝

一、什么是观察者模式观察者定义了一种一对多的依赖关系,当一个主题(Subject)对象状态发生变化时,所有依赖它的相关对象都会得到通知并且能够自动更新自己的状态,这些依赖的对象称之为观察者(Observer)对象这类似于发布/订阅模式。观察者模式中的主题对象,会维持着一个依赖它的观察者对象列表,当主题对象状态发生改变时,主题对象便会调用这个列表中所有观察者对象的方法。观察者模式一般用在分布式时间处理

OGNL表达式总结_夜之子的博客-程序员宝宝_ognl表达式

OGNL全称是"Object-Graph Navigation Language" ,意思是图对象导航语言,它是一个功能强大的表达式语言。它通过简单一致的语法,可以任意存取对象的属性或者调用对象的方法,并能够遍历整个对象的结构图,实现对象属性字段的类型转化。       struts2默认的表达式语言是OGNL。一、访问普通方法、属性、构造方法 -->

Python ❀ 打印菱形_无糖可乐没有灵魂的博客-程序员宝宝

打印菱形''' * 1 3 1 *** 2 2 3 ***** 3 1 5******* 4 0 7 ***** 5 1 5 *** 6 2 3 * 7 3 1'''a = int(input("请输入奇数行数:"))if a % 2 == 0: print("输入数字错误!") a = int(input("请重新输入奇数行数:"))b = a // 2 + 1#上半部分for i in range(0,b+1): #空格数

推荐一个很好的邮件退信帮助中心的网站_zubin006的博客-程序员宝宝

今天上网找到一个很好的邮件退信帮助中心的网站,你只要在左边框输入邮件退信的英文内容,然后点“查询”,系统就会告诉你退信的原因,并给给你相关建议,对邮件管理和普通用户来说,是一个很棒的工具网站。值的推荐。 网址:http://mail17.cn4e.com/help/help.php

VINS知识点汇总_家门Jm的博客-程序员宝宝_vins详解

0、总体框架 包括5个部分:数据预处理、初始化、后端非线性优化、闭环检测、位姿图优化。图片来自大佬博客:https://blog.csdn.net/try_again_later/article/details/104854698VINS原框架:图解VINS框架:闭环检测拆解:1、数据预处理 1、视觉 1)提取Harris角点,KLT金字塔光流跟踪相邻帧; ...

随便推点

全球首款搭载鸿蒙操作系统的设备是什么,全球首款搭载华为鸿蒙系统的智能空调首发上市!美的创造..._鑨鑨的博客-程序员宝宝

全球首款采用华为鸿蒙系统的智能空调来了!日前,美的空调正式对外宣布,首款搭载华为鸿蒙系统的智能空调中国尊鸿蒙艺术柜机,将于今年5月起上市销售,于今年空调旺季市场上掀起一轮全新的主动智能、新风无风感的智慧新体验。据悉这款产品将“乘鸿蒙之智,控隽永新风”,以全新的“碰一碰畅连体验和随心智控”快捷体验,和独有的“换新风、无风感”舒适体验,全面定义下一代智能空调的标准和范式。业内人士指出,一边是中国原创的...

IP摄像头国标GB28181协议视频平台EasyGBS端口开放之后为什么还出现不能播放的情况?_EasyGBS的博客-程序员宝宝

在国标EasyGBS视频平台的项目当中,我们遇到的大部分视频流无法播放 的情况,都跟端口没有开放有关(如何查询端口监听情况)。前不久有个水利场景的用户发过来一个问题,就是EasyGBS视频平台运行一段时间后无法播放,且断流时间无规律,断流后播放画面一直处于加载中。随后我们进入现场检查,发现一个现象,在不能播放的时候重启一下EasyGBS就能正常播放,这种情况大概率是端口的问题,于是我们和用户确认下端口情况,因为新版的EasyGBS已经支持端口回收复用,所以不需要像之前开放那么多端口段,用户就开放

[原创]Android SDK下载(Linux下载SDK最新教程2020.11.26)_攻城狮YoungDawn的博客-程序员宝宝_linux 安卓sdk下载

最近项目需要编译打包Anroid项目,前提要在服务器上安装SDK(不是通过Android Studio安装),但是网上查到的版本最新也只到SDK 24,本文介绍了去官网https://developer.android.com/studio/下载android的command line tools,并通过此工具在Centos上安装最新的Anroid SDK环境

Python中linesep的作用_阿特密斯X的博客-程序员宝宝_linesep

os.linesep字符串给出当前平台使用的行终止符。例如,Windows使用’\r\n’,Linux使用’\n’而Mac使用’\r’。例: fileappend=open(’/home/zll/new.txt’,‘a’)fileappend.write(‘zhui jia content’)fileappend.write(’\n’) //不用\n 如果使用os.linesepwhil...

WAV音频文件_huang20083200056的博客-程序员宝宝_wav音频下载

WAV是一种保存音频信息的文件格式,广泛应用于Windows及其应用程序中,如今主流的音频播放器都支持WAV音频文件的播放。

项目管理利器taiga快速安装_weixin_33860528的博客-程序员宝宝

1、github.com/benhutchins… 拉取代码2、更新 taiga-back,taiga-front-dist到最新稳定版github.com/taigaio/tai…github.com/taigaio/tai…3、修改docker-taiga下Dockerfile因为网络问题,注释掉:#RUN apt-key adv \# --keyserver hkp://p...

推荐文章

热门文章

相关标签