c程序设计。
**式自主设计报告。
题目:专业班级:p08电气自动化班。
小组组长:成员:
指导教师: 任益芳。
所属系部:电子电气工程系。
2024年 12 月 12 日。
一.目录;1.设计任务。
2.本组课题及本人任务………
3.程序功能简介………
4. 主体内容。
二.设计任务书;
1)复习巩固c语言的基础知识,进一步加深对c语言编程的理解和掌握;
2)利用所学知识,理论和实际结合,利用资源,采用模块化的结构,使用模仿修改自主设计相结合的方法,锻炼学生综合分析解决实际问题的编程能力;
3)培养学生在项目开发中团队合作精神、创新意识及实战能力。
三.本组课题及本人任务;
课题:贪吃蛇程序设计。
任务:1).设计本组程序课题。
2).为本组成员分配任务。
3).讨论并编写程序**。
4).对编写的程序进行验证
四.程序功能简介;
能进行贪食蛇游戏,定义键盘方向键操作,随机数发生器产生食物,并分别利用函数判断贪食蛇的长度及游戏是否成功等。并能够输入游戏成绩。
五.主体内容(简要说明总体情况,详细介绍本人任务部分):
1.设计分析;
一条蛇在封密的围墙内,在围墙内随机出现一个食物。通过按键盘上的四个光标控键控制蛇向上下左右四个方向移动,蛇头撞到食物,则表示食物被蛇吃掉, 这时蛇的身体长一节,同时计10分,接着又出现食物,等待被蛇吃掉。如果蛇在移动过程中,撞到墙壁或蛇头撞到自己身体游戏结束。
2.程序结构(画流程图)
3. 源程序;
#define n 200
#include <>
#include <>
#include <>
#define left 0x4b00
#define right 0x4d00
#define down 0x5000
#define up 0x4800
#define esc 0x011b
int i,key;
int score=0;/*得分*/
int gamespeed=50000;/*游戏速度自己调整*/
struct food
int x;/*食物的横坐标*/
int y;/*食物的纵坐标*/
int yes;/*判断是否要出现食物的变量*/
food;/*食物的结构体*/
struct snake
int x[n];
int y[n];
int node;/*蛇的节数*/
int direction;/*蛇移动方向*/
int life;/*蛇的生命,0活着,1死亡*/
snake;
void init(void);/图形驱动*/
void close(void);/图形结束*/
void drawk(void);/开始画面*/
void gameover(void);/结束游戏*/
void gameplay(void);/玩游戏具体过程*/
void prscore(void);/输出成绩*/
*主函数*/
void main(void)
init();图形驱动*/
drawk();开始画面*/
gameplay();玩游戏具体过程*/
close();图形结束*/
*图形驱动*/
void init(void)
int gd=detect,gm;
initgraph(&gd,&gm,"c:\\tc");
cleardevice();
*开始画面,左上角坐标为(50,40),右下角坐标为(610,460)的围墙*/
void drawk(void)
*setbkcolor(lightgreen);*
setcolor(11);
setlinestyle(solid_line,0,thick_width);/设置线型*/
for(i=50;i<=600;i+=10)/*画围墙*/
for(i=40;i<=450;i+=10)
*玩游戏具体过程*/
void gameplay(void)
randomize();随机数发生器*/
表示需要出现新食物,0表示已经存在食物*/
活着*/方向往右*/
蛇头*/节数*/
prscore();输出得分*/
while(1)/*可以重复玩游戏,压esc键结束*/
if(画面上有食物了就要显示*/
for(i=>0;i--)蛇的每个环节往前移动,也就是贪吃蛇的关键算法*/
/*1,2,3,4表示右,左,上,下四个方向,通过这个判断来移动蛇头*/
switch(
for(i=3;i《从蛇的第四节开始判断是否撞到自己了,因为蛇头为两节,第三节不可能拐过来*/
if(<55||>595||<55||
>455)/*蛇是否撞到墙壁*/
if(以上两种判断以后,如果蛇死就跳出内循环,重新开始*/
break;
if(吃到食物以后*/
setcolor(4);/画出蛇*/
for(i=0;i<
rectangle(
delay(gamespeed);
setcolor(0);/用黑色去除蛇的的最后一节*/
rectangle(
endwhile(!kbhit)*/
if(如果蛇死就跳出循环*/
break;
key=bioskey(0);/接收按键*/
if(key==esc)/*按esc键退出*/
break;
elseif(key==up&&
C语言作业
no.1 include int main 结果z 9.000000 配置 mingw2.95 cuirelease,编译器类型 mingw old检查文件依赖性。完成构建未命名1 0个错误,0个警告。生成c documents and settings administrator my docum...
C语言作业
上机实习报告。题目 有五名同学每名同学的数据包括学号 姓名和3门功课的成绩 成绩提前预设 求 1 每名同学的平均成绩 名同学每门课程的平均分 3 按学生的平均分从低到高次序排除每名同学的顺序 分析 根据题目要求,使用结构体类型,包括5个元素学号 num 姓名 name 门功课的成绩 score 3 ...
C语言作业
1 c语言的特点与主要应用领域。特点 1 c语言简洁,紧凑,使用方便,灵活 2 c语言具有高级语言和低级语言的特征 3 c语言是结构化语言,具有结构化的控制语句 4 c语言具有各种各样的数据类型 5 c语言具有强大的图形功能,支持多种显示器和驱动器 6 c语言适用范围大,目标 质量高,程序执行效率高...