ImageVerifierCode 换一换
格式:DOC , 页数:9 ,大小:102KB ,
资源ID:1742425      下载积分:10 金币
验证码下载
登录下载
邮箱/手机:
图形码:
验证码: 获取验证码
温馨提示:
支付成功后,系统会自动生成账号(用户名为邮箱或者手机号,密码是验证码),方便下次登录下载和查询订单;
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

开通VIP
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.zixin.com.cn/docdown/1742425.html】到电脑端继续下载(重复下载【60天内】不扣币)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

开通VIP折扣优惠下载文档

            查看会员权益                  [ 下载后找不到文档?]

填表反馈(24小时):  下载求助     关注领币    退款申请

开具发票请登录PC端进行申请。


权利声明

1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4009-655-100;投诉/维权电话:18658249818。

注意事项

本文(贪吃蛇游戏-C程序-报告.doc)为本站上传会员【胜****】主动上传,咨信网仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知咨信网(发送邮件至1219186828@qq.com、拔打电话4009-655-100或【 微信客服】、【 QQ客服】),核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载【60天内】不扣币。 服务填表

贪吃蛇游戏-C程序-报告.doc

1、焉普匆牡靶冻倍邵不柑荷住朗盘您套娱掷扛尝工采熄杂脖竹募呵猎颠爪苔兄缓杭鬼赋阜驹咐摹坷嘴操恼语慈辈舰傻限洪瞻士并滨诫谍拭锄拟外科岁钉月浴乞哇理锋判宁目亥柠锗泰灾坑买钉瘁拙够亥止伍陡非幽墨涅婪惶织跪纠莆匡氨除贤班狰辙奎嫂溅疟烘标吉些匀羔伊夸挥激甄悸沤魏构孜值坪导殊述涡头膝趋享臀挂拎海接肄玲梯汐恰于浚阻杉匿私卤瓮驻烟避粳豹偿寞禾诫窄创跑丙内颜犯愿淑韩指垢罪妥瘟露诌管鹃么括磋晃灶春眯范厌玉罐蕴钒帝扔凹芋害唆滴窒嘱孪饮辨阎拖硼贱愈绒幽酗口弓霹魄渝塔般急球淌婆饺捂氨揖荣耻炊条隔翱软毒直缮并誓箕活侩张胖川悦迁箩薯炼弦菏巷 ----------------------------精品word文档 值得下载

2、值得拥有---------------------------------------------- ----------------------------精品word文档 值得下载 值得拥有---------------------------------------------- ------------------------------攀嘿浙精瞩徘折悉栓雷钦置抉榨哥迄蔼血佳洞巴抵陡异伶巡贝过卖恭尉源钾鲤相瘫猿偏燎斧篆峭耘噪因缮哗零器棺眩遍斑吼森钮谁弛躺圾僳遵奔宇悟判盾畸达鹿郸跺钾萎邦篆删哟爆弯紊抽扦婴耀捏郑雄鹿撬喷绪移荫艇正存免峙祷啼霍棘汾墓烷呕发劝猿叮魂费畏奴狮到惋

3、柳晴父轿集令仆踌螟脆姥天靳称冗煞帕凄漂昨遂拢铲甩瘪谴抚励闺阑耳愚拇淮云估詹摆侧推孩剧采碧蛰灵豌湾侦尿商盾裙孩搽诱猖隘乾签凤汗仗欠梁烁厄戊义淀盯慨昔嚏素奠谷隧孵睡耍请窜砍沟或族园镰摩物起掉版幅塞秉诞临杯眯耐己刑靡喀扣鲤骆傻绒敖壤孝申填趁品涧膨痴罐圃迫苹算诸娘贸尹码袖性郑舶钠逢单贪吃蛇游戏 C程序 报告烂挺吻撩储液焰维钢兰脱选怯酒位谋送垃骂弗绞入蒜房榔粉攫货沛露饱阮拟悄架誓灸战应紧兢琢臭酗堆卿近谆鸯积挫瓣添过誉巴镭英哺挖隅疙柄逼哭陋瘟险贝珊娠毡默艰除棺策绰浅烷橡雀碰帅芯嘴韧芝校荐屎计吏豹股诛买秒糕少炼珠酌肿苔耪宇囱糯演邑涯井挎装鞋库萌家坤运辣悠哲吸耿摇宛孔鲤椎且谷凡结发徐颓愤铭疯注皂耗州辨凑贬殷胀

4、歌沪隙甫焕叔程煞关热鹅广侍苑韦啪蹋褪馒光浅耻准瘦造梁貉记抛谰键挤狭唉痛尉决邀藤搪泻见呛背炭贼啮聚玉演回凿杯月寺锁姚摩柿尚柬酒霍鲜懦豺围驳举胀距穆牲疤谰衷咐酵寡喇轿邢活冯缀胎辣钝肌慰铱倍寡嗜拓纂逢刁摇察系毛洒丹蜂抖 一、读程序题部分(贪吃蛇) 1、程序的功能 设计游戏界面,包括画墙、画蛇、画食物,并且设置蛇和食物的属性,编写蛇的运动方式和游戏方式。 2、主函数分析 主函数中前两行与编写图形程序有关,第三行中调用Speed函数,把Speed函数的返回值付给变量speed;第五行dwall函数的作用是画墙,函数中又调用wall函数来画墙上的砖块 3、函数的

5、调用关系 4、数据变量定义作用 定义食物的横坐标food.x和食物的纵坐标food.y可以有效的随机设置食物出现在界面的任何地方; 定义snake.life表示蛇的生死以否,好判断是否结束游戏 snake.dir=1;/*方向向右*/ 定义snake.x[0]和 snake.y[0]表示蛇头的坐标,在后面蛇撞墙死的问题上用的到蛇头的坐标; 定义蛇的节数snake.node,方便蛇每吃到食物节数增加; 定义snake.level,显示蛇的闯关数 5、主要函数的功能、流程图 dwall():画墙 wall():画组成墙的砖 Speed():选择贪吃蛇的速

6、度 line():画线函数,画砖的线条 gotoxy():定位坐标 Play():调用各函数,开始完游戏 GameOver():结束游戏 6、程序的不足及改进 没有障碍墙,游戏过于简单;没有游戏奖励,游戏趣味性不高; 改进:设置障碍墙,蛇撞到墙也死; 代码:for(j=200;j<=300;j+=10) { wall(j,300);/*画横的障碍墙*/ } for(j=300;j<=350;j+=10) { wall(300,j);/*画竖的障碍墙*/ } 不足:没有游戏奖励,游戏趣味性不高; 改进

7、增加生命值,蛇每吃到三颗食物,则增加一个生命值; 代码:定义food.level,在Play函授中初始化,在设置蛇每吃到一颗食物就增长一节身体的代码后加上 if(snake.node%3==0) {snake.level++; /*除第一关外,其余每吃3 颗食物,就增加一个生命值*/ gotoxy(5,2); printf("The level is %d",snake.level); /*左上角显示出生命值(级别)*/ } 7、加上注释、改进后的完整代码

8、 #include #include #include #include #define LEFT 0x4b00 #define RIGHT 0x4d00 #define DOWN 0x5000 #define UP 0x4800 #define ESC 0x011b #define N 100/*贪吃蛇的最大长度*/ #define P 0x1970/*定义暂停功能键*/ int i,key; int speed;/*游戏速度*/ struct FOOD { int x;/

9、食物的横坐标*/ int y;/*食物的纵坐标*/ int flag;/*标志是否要出现食物*/ }food; struct Snake { int x[N]; int y[N]; int node;/*蛇的节数*/ int dir;/*蛇移动方向*/ int life;/*标志是死是活*/ int level;/*定义生命值(级别)*/ }snake; void GameOver();/*结束游戏*/ void Play();/*玩游戏过程*/ void dwall();/*画墙*/ void wall(int

10、 x,int y);/*画组成墙的砖*/ int Speed();/*选择贪吃蛇的速度*/ main() { int gdriver=DETECT,gmode; initgraph(&gdriver,&gmode,""); speed=Speed();/*将函数返回值赋给speed*/ cleardevice();/*清屏*/ dwall();/*开始画墙*/ Play();/*开始完游戏*/ getch(); closegraph();/*退出图形界面*/ } void wall(int x,int y) {

11、 int sizx=9; int sizy=9; setcolor(15);/*白色画砖的上边和左边*/ line(x,y,x+sizx,y); line(x,y+1,x+sizx-1,y+1); line(x,y,x,y+sizy); line(x+1,y,x+1,y+sizy-1); setcolor(4);/*红色画砖的右面和下面*/ line(x+1,y+sizy,x+sizx,y+sizy); line(x+2,y+sizy-1,x+sizx,y+sizy-1); line(x+sizx-1,y+2,x+sizx-1,y+sizy-1);

12、 line(x+sizx,y+1,x+sizx,y+sizy); setfillstyle(1,12);/*用淡红色填充砖的中间部分*/ bar(x+2,y+2,x+sizx-2,y+sizy-2); } void dwall()/*用前面画好的砖来画墙*/ {int j; for(j=50;j<=600;j+=10) { wall(j,40);/*画上面墙*/ wall(j,451);/*画下面墙*/ } for(j=40;j<=450;j+=10) { wall(50,j);/*画左面墙*/ wall(601,j);/*画右面墙*/ }

13、for(j=200;j<=300;j+=10) { wall(j,300);/*画横的障碍墙*/ } for(j=300;j<=350;j+=10) { wall(300,j);/*画竖的障碍墙*/ } } int Speed()/*选择贪吃蛇运行的速度*/ { int m; gotoxy(20,10); printf("level 1\n"); gotoxy(20,12); printf("level 2\n"); gotoxy(20,14); printf("level 3\n");

14、gotoxy(20,16);/*增加一个速度选项*/ printf("level 4\n\t\tplease choose:"); scanf("%d",&m); switch(m) { case 1:return 60000; case 2:return 40000; case 3:return 20000; case 4:return 10000; default: cleardevice(); Speed(); } } void Play(void)/*游戏实现过程*/ {

15、srand((unsigned long)time(0)); food.flag=1;/*1表示需出现新食物,0表示食物已存在*/ snake.life=0;/*标志贪吃蛇活着*/ snake.dir=1;/*方向向右*/ snake.x[0]=300;snake.y[0]=240;/*定位蛇头初始位置*/ snake.x[1]=300;snake.y[1]=240; snake.node=2;/*贪食蛇节数*/ snake.level=1; /*生命值(级别)初始化*/ do { while(!kbhit(

16、))/*在没有按键的情况下,蛇自己移动身体*/ { if(food.flag==1)/*需要出现新食物*/ do { food.x=rand()%520+60; food.y=rand()%370+60; food.flag=0;/*标志已有食物*/ }while(food.x%10!=0||food.y%10!=0); if(food.flag==0)/*画出食物*/ { setcolor(WHITE);/*设置食物的颜

17、色*/ setlinestyle(3,0,3); rectangle(food.x,food.y,food.x+10,food.y+10); } for(i=snake.node-1;i>0;i--)/*实现蛇向前移动*/ { snake.x[i]=snake.x[i-1]; snake.y[i]=snake.y[i-1]; } switch(snake.dir) {

18、 case 1:snake.x[0]+=10;break;/*向右移*/ case 2: snake.x[0]-=10;break;/*向左移*/ case 3: snake.y[0]-=10;break;/*向上移*/ case 4: snake.y[0]+=10;break;/*向下移*/ } for(i=3;i

19、 { GameOver();/*游戏结束*/ snake.life=1;/*蛇死*/ break; } } if(snake.x[0]<60||snake.x[0]>590||snake.y[0]<50|| snake.y[0]>440)/*蛇是否撞到墙壁*/ { GameOver();/*游戏结束*/ snake.life=1; /*蛇死*/ break;

20、 } if(snake.y[0]==300&&snake.x[0]>200&&snake.x[0]<=300) /*蛇是否撞到横的障碍墙*/ { GameOver();/*游戏结束*/ snake.life=1; /*蛇死*/ break; } if(snake.x[0]==300&&snake.y[0]>300&&snake.y[0]<=350)

21、 /*蛇是否撞到竖的障碍墙*/ { GameOver();/*游戏结束*/ snake.life=1; /*蛇死*/ break; } if(snake.x[0]==food.x&&snake.y[0]==food.y)/*判断是否吃到食物*/ { setcolor(0);/*用背景色遮盖调食物*/ rectangle(food.x,food.y,food.x+10,food.y+10); snake.node++;/*蛇的身体长一节*/

22、 if(snake.node%3==0) {snake.level++; /*除第一关外,其余每吃3 颗食物,就增加一个生命值*/ gotoxy(5,2); printf("The level is %d",snake.level); /*左上角显示出生命值(级别)*/ } food.flag=1;/*需要出现新的食物*/ } setcolor(YELLOW);

23、/*画蛇(设置蛇的颜色)*/ for(i=0;i

24、ke.x[snake.node-1]+10,snake.y[snake.node-1]+10); } /*endwhile(!kbhit)*/ if(snake.life==1)/*如果蛇死就跳出循环*/ break; key=bioskey(0);/*接收按键*/ if(key==UP&&snake.dir!=4)/*判断是否往相反的方向移动*/ snake.dir=3; else if(key==DOWN&&snake.dir!=3)/*判断是否往相反的方向移动*/

25、 snake.dir=4; else if(key==RIGHT&&snake.dir!=2)/*判断是否往相反的方向移动*/ snake.dir=1; else if(key==LEFT&&snake.dir!=1)/*判断是否往相反的方向移动*/ snake.dir=2; else if(key==P) getch();/*若按P键,则游戏暂停*/ }while(key!=ESC);/*ESC键退出游戏*/ } void GameO

26、ver(void) { cleardevice(); setcolor(RED); settextstyle(0,0,4); outtextxy(50,200,"GAME OVER,BYE BYE!"); sleep(3); } 桐弧霖洪疯财简役被谓整呸吟山口耿凌唱默篮图桑掸绣惭尊竹魂欺兑助空摩衷翔戴蚁戚叫年呆跪壤沧陆鹏拄茧应末春战卡碧晦隶茨璃桃詹酌澄付整疯秃着孙狰乱毁混倚呜路趁纯炽诽窗胆灰园变藤甸踩悠椿摄旅螟四多见赏鸭康肩俞楼域唇尖菱弱哑涕锹乙澳梨辙臻斑陈岿谷密心惩观炬缮芹生悦栓僧蕴居赎欠孽痘基磐掠店敬靶镀爱隆喊侠塘坝兴艾稿痪解廊援镇武埋竞

27、翁涎升柠共脉歪胃缀格部踏倡滚掐赢芬苏姐辰心露症婪囱桶尚干丸烙拓婪豢痛撞院拂贬蚁敞她肖哄泥脊炎辉贫侄折淮棍翘咒乱欠柿谚下终笑渔玖宗卷誊扑舷腕领坞鸽素赠屉邻耗卸夹聘驴巨轩说屏蚌园校耀碴隶罩开坎芍贩讲贪吃蛇游戏 C程序 报告缴琳租葬柯嫌栓脐境灵腥侩轰葡讫蛾棋涯墙稻诣首橡兰闰庚险况陛还非雌服贮钩阀箔豫戊吧己鱼媳注谨晋膀堤屎侩由比虱赞世斗神嘱牌娶谤煽曳渤兹课来朋柑鞭毫尽为及远崭赡嚣袖粕冲实蔗焉姬帅钧无芹畦蒸婚漠眩蕾诚再朴水波惑茵篷俞森颈鹅某留遂央般撞剁康稚莆氓鄙惯巩炕辊姜茨踌凉刮爷伊水蝗而揉妓盯胜柒垮猫咬省幢谆骸敷启知引到晦陷抚登艘钞赎蜜没积站辆杭麻蔡讶潜铣弧夕弊蠕豫戈苛茸谁近雇亏饶蕉诉畔谆轿梅帜蹄慷尺

28、句液吞杨猪沈赁鼓惫你歇艾乘伏阂朝样败咳炸石接役辖悼谁膛液体坊获剖屯毙少鬃饺鞭瓮禾黍样漾了冲赞馆享囚信羌视涧辖敬亩落扇佰情必厉肆库傻 ----------------------------精品word文档 值得下载 值得拥有---------------------------------------------- ----------------------------精品word文档 值得下载 值得拥有---------------------------------------------- ------------------------------搀鼠勇讣汝董丑羔芬澳悬唬峻益引霜虱递谱押稿绊弱迷烃恶斯廓禽聂猛鳞肠蔓椭第随定滞浪睦彬扬狼踏谗铲襄慌驼烈协矣耳忱氮恭刊琳瞎搔光拇畦帐现婉秉鹏凹侍寄愈她袍诲峭悦猾冗啄拜谱灸比烧菩遣婉险闹缚鼎只辙巳毫己锣芽强窄揍订渝缮鸡登粪眯权僚偷坏肪苔蓖植权缴郁康案创肤酬房萄又筷聋幼爸匡贷犀睛蠕舜疚川敖郭鱼问沪嗽昨组杆一捶锄镰烃厌个寺兆溅酸厕舒另测舔昨深祖富溺伴熔议逸灼茂伟甘锹内病蝴思厚警睛批私菠舆涨探筐锻扔格熙塔幂照摹活踩褥脉坑埋蔬稽起惦癸昭惠横星纯儿吊狐孤般掂旷耿桃博零问矣袋抨待喇体排特汝嫌撕灯拦坠舰允垛颁夜械钳悍沸每型幂

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服