程序设计课程设计文档_第1页
程序设计课程设计文档_第2页
程序设计课程设计文档_第3页
程序设计课程设计文档_第4页
程序设计课程设计文档_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

本文格式为Word版,下载可任意编辑——程序设计课程设计文档编号:

程序设计课程设计文档

题目:c语言小游戏开发姓名:学号:

院(系):信息工程学院计算机科学与技术专业

1

2023年9月6日

一.题目意义和设计思想

1、题目意义1)开发益智型小游戏,可以让消遣,休闲,动脑,动手于一身,游戏本身并不繁杂,可以适用于多种人群,具好玩儿味性,让玩家从简单中收获开心。2)只针对课程设计而言,认为选用“C语言开发小游戏〞这一课题,可选范围广,游戏种类多,不必拘泥于一两种;自我创作性强,可以依照自己的想法,在主体框架中扩展添加更多游戏功模块,令游戏更有我的风格。3)游戏课题,覆盖的知识面也更广,更灵活,无论是从如何编写正确的程序让游戏能正常运行,还是如何丰富游戏关卡内容,或者改善游戏界面,都表达了开发者的思维严密性,灵活性,创作性,更能锻炼我。2

2、设计思想1)我做的这一款C语言小游戏,是属于迷宫类的小游戏。在TC2.0的平台下,我更重视游戏的功能。游戏一共分为3个关卡,每一关玩家都要在规定的步数内完成不同的任务才可胜利。2)附:游戏截图一张如下3关相像的地方无外乎,都有绿色的墙围城的地图(不同关卡地图也不同);右端有游戏规则说明。设定黄色的笑脸代表玩家,可通过键盘方向键操作控制笑脸的移动;黄色的太阳代表目的地。迷宫中还散布着红色的心桃,无论哪一关,玩家的任务就是在到达目的地的同时“吃下〞足够数量的心桃。3)为了增加游戏的趣味性和后期关卡的难度,在第2关中,3

心桃会随机出现,第3关中,玩家走过的路程会被墙所覆盖。

二、采用的主要技术、遇到的难点和解决方法

主要技术说明:①用数组保存地图。②使用clrscr()函数实现清屏。③使用gotoxy()函数控制光标位置。④使用bioskey(0)函数,实现键盘操作。⑤使用textbackground函数调整背风景彩,textcolor函数调整文本色调。⑥使用rand()函数产生随机数。⑦使用delay()函数实现运行延时。⑧函数嵌套调用,是程序更简单。遇到的难点及解决方法:1)如何在每次游戏画面需要改变的时候浮现改变后的新地图?通过子函数draw和bioskey,循环语句及一些其他语句,完成清屏→输出地图→输出笑脸→从键盘得到新坐标→地图格局更改→清屏→输出新地图的循环。2)如何让笑脸穿不透墙壁?通过子函数wall1,wall2,wall3,wall4,分别在玩家按下↑

4

↓←→键改变笑脸坐标时,判断此时笑脸的坐标是否在墙上,假使在,那么把更改的坐标再改回来,笑脸就动不了了,穿不过墙了。3)如何让笑脸“吃心〞?让笑脸“吃心〞就是说当玩家控制笑脸走到心上时,心就从地图中消失。我的方法是写一个空函数eat,该函数的作用是:判断玩家按下键后,笑脸的新坐标是否在心上,假使在,那么在保存地图的数组中把该处的“心〞抹去,通过紧接着的draw函数重新打出改变了画面的新地图,新地图中就没有这颗“心〞了。4)如何让心跳随机出现?调用rand()和srand()函数,以time为种子,产生随机数,并更改用来保存地图的数组中的数据,从而实现心跳的随机出现。5)由于存地图用的二维数组是在外部定义的,就会出现,重玩游戏时地图保持上一次游戏终止时的状态,那如何实现每次玩游戏,地图数据都可以初始化呢?解决方法是,在外部定义数组map_level1,map_level2,map_level3却不赋初值,在主函数内再定义一组二维数组

5

maps_level1,maps_level2,maps_level3用来放每一关的地图,在每次游戏开始前,把maps_level1,maps_level2,maps_level3的值付给map_level1,map_level2,map_level3,就能实现每次游戏开始前初始化地图数据。三、实现的主要功能和系统结构

主要功能:①具有选关功能,可以由玩家手动选择,共有三个难度级别为easy,,normol.hard的关卡。②游戏开始时有欢迎画面,并附有选关说明。(如图)③玩家可选择是否重玩,再玩哪一关。④支持按ESC键退出游戏。(如图)

6

⑤游戏窗口的右侧有详细的游戏规则说明。⑥共有三种不同的地图可使用。(如图)⑦可实现多种玩法,如:在规定步数内达到目的地;在路途中吃掉“心〞;心桃随机出现;用墙覆盖走过的路;

7

⑧可判断游戏是否失败,和是否成功。⑨失败时,会有“gameover〞的提醒,并附有失败的原因。成功时,会有“levelup〞的提醒,并能够实现变换颜色输出,衬托成功气氛。(如图)

8

系统结构:程序开始玩家通过键盘输入指令退出程序根据指令选择关运行Level1运行Level1运行Level1关卡游戏关卡游戏关卡游戏判断失败或成功并给出相应的提醒四、核心算法描述和相关技术说明

算法描述:游戏开始时,通过cprintf函数在窗口中显示欢迎画面;并输出选关说明。调用bioskey(0)函数和switch语句,判断进入第几关。

9

在负责不同关卡的子函数level1(),level2(),level()中:{调用事先定义的game_rules函数,输出游戏规则。调用事先定义的draw函数,输出地图,心跳,目的地,和笑脸。通过while循环来执行具体的“玩〞游戏过程。再次调用bioskey(0)函数和switch语句实现玩家键盘控制笑脸的上下左右运动。在循环中调用事先定义好的函数,完善游戏功能:{调用eat函数,吃心并记录吃掉心桃的数量;调用random_hearts函数,随机产生心桃;调用wall1,wall2,wall3,wall4函数使笑脸穿不过墙;调用countsteps函数记录所走步数。调用death_road函数,让笑脸走过的路变成墙。}调用事先定义的tell,death函数,判断是否跳出while循环。调用事先定义的fail,sucess函数,判断游戏是失败还是成功,并给出相应的提醒。最终询问“Doyouwanttoplayagain?〞,\youdo,pleasepressF4\“ifnot,pressESCtoquit〞通过玩家输入的信息,判10

断是否再玩一盘和是否退出游戏。}在主函数中,通过while循环,实现重复玩游戏。相关技术说明:?conio是ConsoleInput/Output(控制台输入输出)的简写,其中定义了通过控制台进行数据输入和数据输出的函数,主要是一些用户通过按键盘产生的对应操作,譬如getch()函数等等。?函数名:bioskey功能:直接使用BIOS服务的键盘接口。函数原型:intbioskey(intcmd)说明:bioskey()的函数原型在bios.h中bioskey()完成直接键盘操作,cmd的值决定执行什么操作。?函数名:clrscr功能:清除文本模式窗口清屏的意思就是把之前显示出的文字字符去掉跟cmd里面的清屏的功能是一样的实际上是clearscreen的简写用法:voidclrscr(void);只有在Turboc中可以运行五、总结和体会

此的C语言课程设计是对我学习C语言和算法的一个检验。自己动手,自己发现和解决问题,学会了独立,自主的思考,发现了自己的大量不足。平日没有把握好的知识在这次试验中也暴露出

11

来,也让自己走了好多弯路。但是经过不断思考,不断查阅资料,不断修改代码和上机运行调试,尽自己所能的解决了一些问题,也有了小小的成就感。当然还存在一些问题没有解决,并且也有好多代码实现的功能并不让我满意。我相信在以后的学习中,能够渐渐解决它们。但是,收获还是不小的,我不仅对C的操作有了进一步的把握,更是接触到了好多好多新知识新函数的使用,还了解到了程序设计的书写风格及其解释的格式。当我选择编写小游戏“迷宫〞这个题目时,一开始都觉得无从下手。但是在查找相关知识之后,终究找到了突破点。便顺藤摸瓜,在出现问题,解决问题,又出现问题,再解决问题的路上渐渐前进。还有一点体会就是,书上和老师教的内容是有限的,我们需要不断地靠自己去学习,向他人请教,学会利用网络等了解知识的平台去学习和把握更多的知识,这样我们才能编出更好的C程序。总体来说,这次C语言课程设计的成果我还是比较满意的,虽然最终程序还存在一些不足,但能有第一款自己亲自设计的游戏,心中充满欣喜和成就感。最终,要感谢老师的指导和其他同学对我的帮助与支持,我会在学习的路上不断前进。(后面附有源程序代码)

12

#include#include#include#include#include#include#include

源程序清单

intx,y;/*markthepointofdeparture用xy来表示笑脸的起始坐标*/intstopcirculation;/*toendthecirculation用这样一个变量来控制while循环是否继续*/inteat_hearts;/*tocounthearts用该变量记录吃下的心桃数目*/intstep;/*tocountthesteps计算走的步数*/intmap_level1[21][24];intmap_level2[21][24];intmap_level3[21][24];

intdraw(intmap[21][24])/*drawmap用该函数来画出地图,墙,心桃,笑脸;参数是每

一关的地图*/{

inti,j;

clrscr();/*tocleanscreen先清屏*/

for(i=0;i200)stopcirculation=0;if(x==i}

voidrandom_hearts(intmap[21][24])/*随即在地图中产生心桃*/{

intp,q;

inti,j;

for(i=0;imap[p][q]=2;处是道路时,在此处打出心桃*/

};}

voiddeath_road(intmap[21][24])/*使笑脸走过的路变成墙*/{map[y-1][x-1]=1;}

intdeath(intmap[21][24])/*判断是否已无路可走,四处都是墙,函数返回值将在函数

level3中充作终止while循环的判断条件*/{inta=0;

if(map[y-2][x-1]==0||map[y-2][x-1]==2||map[y-2][x-1]==3)a=1;

if(map[y-1][x-2]==0||map[y-1][x-2]==2||map[y-1][x-2]==3)a=1;if(map[y][x-1]==0||map[y][x-1]==2||map[y][x-1]==3)a=1;if(map[y-1][x]==0||map[y-1][x]==2||map[y-1][x]==3)a=1;returna;

}

voidsucess(inti,intj)

{intm;if(x==i

textcolor(11);

gotoxy(30,10);/*当玩家已走到目的地,但吃掉的心少于3个,则显

示失败,并给出失败的理由*/

cprintf(\************************\gotoxy(30,11);

cprintf(\****\

16

gotoxy(30,12);cprintf(\**GAMEOVER**\gotoxy(30,13);

cprintf(\**lessthan3hearts**\

gotoxy(30,14);

cprintf(\****\gotoxy(30,15);

cprintf(\************************\}

else/*whenuserwin当玩家在200步之内并且至少吃掉3颗心时示过关升级*/{for(m=1;m200)

{clrscr();

textcolor(11);gotoxy(30,10);

cprintf(\******************\gotoxy(30,11);

cprintf(\****\gotoxy(30,12);

cprintf(\**GAMEOVER**\gotoxy(30,13);

cprintf(\**nostepsleft**\gotoxy(30,14);

cprintf(\****\gotoxy(30,15);

cprintf(\******************\};}

voidgame_rules()/*在游戏窗口右侧显示游戏规则*/{gotoxy(30,2);

textcolor(14);

cprintf(\Pleasereadrulescarefullybeforestaring\textcolor(11);gotoxy(30,4);

cprintf(\GAMERULE\gotoxy(30,8);

cprintf(\Thisisamazegame.\gotoxy(30,9);

cprintf(\Youarethesmilingface\gotoxy(30,10);

cprintf(\Andyoumustgettoyour\gotoxy(30,11);

18

cprintf(\destination--thepoint\gotoxy(30,12);

cprintf(\ofthesun\textcolor(14);

cprintf(\c\5);

textcolor(11);

cprintf(\youonly\gotoxy(30,13);

cprintf(\have\textcolor(12);cprintf(\00\textcolor(11);

cprintf(\psand\gotoxy(30,14);

cprintf(\needtoeat\textcolor(12);cprintf(\textcolor(11);

cprintf(\arts\textcolor(13);cprintf(\c\textcolor(11);

cprintf(\ast.\gotoxy(30,17);

textcolor(12);

cprintf(\GOODgotoxy(x,y);}

voidlevel1(intmaps[][]){step=0;eat_hearts=0;stopcirculation=1;x=3;y=19;

draw(maps);game_rules();

LUCK\

/*运行第一关*//*初始化游戏数据*/

19

while(stopcirculation==1)

{

switch(bioskey(0))/*tocontrolthefacetomoveup,down,leftorright控制

笑脸的上下左右移动*/

{case0x011b:

clrscr();textcolor(10);gotoxy(20,10);cprintf(\bye_bye\ep(2);exit(0);break;case18432:

y-=1;eat(maps);wall1(maps);draw(maps);game_rules();countsteps();break;case20480:

y+=1;eat(maps);wall2(maps);draw(maps);game_rules();countsteps();break;case19200:x-=1;eat(maps);wall3(maps);draw(maps);game_rules();countsteps();break;case19712:

x+=1;eat(maps);wall4(maps);draw(maps);game_rules();countsteps();break;

};

tell(3,6);

};

fail1();/*判断游戏成功与否,并输出相应的内容*/sucess(3,6);

textcolor(11);/*询问是否想再玩一次,假使想,请按F4,不想,请按ESC退出*/gotoxy(23,17);cprintf(\Doyouwanttoplayagain?\gotoxy(23,18);

cprintf(\oudo,pleasepress\

textcolor(13);cprintf(\F4\

textcolor(11);gotoxy(23,19);

cprintf(\ot,pressESCtoquit\

if(bioskey(0)==0x011b)

{clrscr();textcolor(10);gotoxy(20,10);cprintf(\bye_bye\ep(2);exit(0);};

gotoxy(23,20);

while(bioskey(0)!=0x3e00){cprintf(\lessinput\/*假使按下非F4和ESC的其他键,输出错误提醒*/

}

voidlevel2(intmaps[][])/*运行其次关*/

20

{step=0;

eat_hearts=0;/*初始化游戏数据*/stopcirculation=1;x=3;y=19;

draw(maps);game_rules();

while(stopcirculation==1)

{switch(bioskey(0))/*tocontrolthefacetomoveup,down,leftorright控制笑

脸的上下左右移动*/

{case0x011b:

clrscr();textcolor(10);gotoxy(20,10);cprintf(\bye_bye\ep(2);exit(0);break;case18432:

y-=1;eat(maps);random_hearts(maps);wall1(maps);draw(maps);game_rules();countst

eps();break;

case20480:

y+=1;eat(maps);random_hearts(maps);wall2(maps);draw(maps);game_rules();countsteps();break;case19200:

x-=1;eat(maps);random_hearts(maps);wall3(maps);draw(maps);game_rules();countste

ps();break;

case19712:

x+=1;eat(maps);random_hearts(maps);wall4(maps);draw(maps);game_rules();countsteps();break;}

tell(23,3);

}

fail1();/*判断游戏成功与否,并输出相应的内容*/sucess(23,3);

textcolor(11);/*询问是否想再玩一次,假使想,请按F4,不想,请按ESC退出*/gotoxy(23,17);

cprintf(\Doyouwanttoplayagain?\gotoxy(23,18);

cprintf(\ifyoudo,pleasepress\textcolor(13);cprintf(\F4\textcolor(11);gotoxy(23,19);

cprintf(\ifnot,pressESCtoquit\if(bioskey(0)==0x011b)

{clrscr();textcolor(10);gotoxy(20,10);cprintf(\bye_bye\ep(2);exit(0);};

21

gotoxy(23,20);

while(bioskey(0)!=0x3e00){cprintf(\lessinput\/*假使按下非F4和ESC的其他键,则输出错误提醒*/}

voidlevel3(intmaps[][])/*运行第三关*/{step=0;

eat_hearts=0;/*初始化游戏数据*/stopcirculation=1;x=3;y=19;

draw(maps);game_rules();

while(stopcirculation==1)

{switch(bioskey(0))/*tocontrolthefacetomoveup,down,leftorright控制笑脸的

上下左右移动*/

{case0x011b:clrscr();textcolor(10);gotoxy(20,10);cprintf(\bye_bye\ep(2);exit(0);break;

case18432:

y-=1;eat(maps);random_hearts(maps);wall1(maps);draw(maps);death_road(maps);game_rules();countsteps();break;

case20480:

y+=1;eat(maps);random_hearts(maps);wall2(maps);draw(maps);death_road(maps);ga

me_rules();countsteps();break;

case19200:

x-=1;eat(maps);random_hearts(maps);wall3(maps);draw(maps);death_road(maps);ga

me_rules();countsteps();break;

case19712:

x+=1;eat(maps);random_hearts(maps);wall4(maps);draw(maps);death_road(maps);ga

me_rules();countsteps();break;

};

tell(21,2);

if(death(maps)==0)stopcirculation=0;/*判断是否无路可走*/};

fail1();

sucess(21,2);/*判断游戏成功与否,并输出相应的内容*/

22

if(death(maps)==0)

{clrscr();

textcolor(11);gotoxy(30,10);

cprintf(\***************\

gotoxy(30,11);

cprintf(\***\gotoxy(30,12);

cprintf(\*GAMEOVER**\gotoxy(30,13);

cprintf(\*nowaytogo**\gotoxy(30,14);

cprintf(\***\gotoxy(30,15);

cprintf(\**************\};

textcolor(11);/*询问是否想再玩一次,假使想,请按F4,不想,请按ESC退出*/gotoxy(23,17);

cprintf(\Doyouwanttoplayagain?\gotoxy(23,18);

cprintf(\ifyoudo,pleasepress\textcolor(13);cprintf(\F4\textcolor(11);

gotoxy(23,19);

cprintf(\ifnot,pressESCtoquit\

if(bioskey(0)==0x011b)

{clrscr();textcolor(10);gotoxy(20,10);cprintf(\bye_bye\ep(2);exit(0);};gotoxy(23,20);

while(bioskey(0)!=0x3e00){cprintf(%uselessinput\/*假使按下非F4和ESC的其他键,则输出错误提醒*/}

voidmain()

{inti,j;

intmaps_level1[21][24]=/*tosavelevel1_game'smap用二维数组保存第一关的地图*/{0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,

23

0,1,0,0,0,0,0,1,0,0,0,0,0,0,2,0,0,0,1,0,0,0,0,1,

0,1,0,1,1,1,0,1,0,1,1,0,1,1,1,1,1,1,1,0,1,1,0,1,0,1,0,0,2,1,0,1,0,1,0,0,0,0,0,0,0,0,1,0,1,1,0,1,0,1,1,1,1,1,0,1,0,1,1,1,1,1,1,1,1,0,1,0,1,1,0,1,0,1,3,1,1,0,0,1,0,0,0,0,0,1,1,2,1,0,1,0,1,1,0,1,

0,1,0,1,2,0,1,1,1,1,1,1,0,0,1,0,1,0,1,0,1,1,0,1,0,1,0,1,0,0,0,0,0,1,0,0,0,0,0,0,1,0,0,0,1,1,0,1,0,1,0,1,1,1,1,1,0,1,1,0,1,1,1,0,1,0,1,1,1,1,0,1,0,1,0,0,0,0,0,0,0,0,1,1,1,0,0,0,1,0,0,0,2,1,0,1,0,1,1,1,0,1,1,1,1,1,1,1,1,0,1,1,1,1,1,1,1,1,0,1,0,1,0,1,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,0,0,1,0,1,0,1,0,1,1,1,1,1,1,1,1,0,1,1,1,0,1,0,1,0,0,1,0,1,0,1,0,0,0,0,0,0,0,0,1,0,1,0,0,0,0,0,1,0,0,0,0,1,0,1,1,1,1,1,0,1,1,1,0,0,1,0,1,1,1,0,1,1,1,1,1,1,0,1,0,0,0,0,0,0,0,0,0,1,1,0,0,0,1,0,1,2,0,0,1,1,0,1,0,1,1,1,1,1,1,1,1,1,1,0,1,0,1,0,1,1,1,0,1,1,0,1,1,1,0,0,0,0,0,0,0,1,1,0,1,0,1,0,0,0,0,0,1,1,0,1,0,0,0,1,1,1,0,1,0,0,1,0,1,0,1,1,1,1,1,1,1,1,0,1,0,0,0,1,2,0,0,1,0,0,0,0,1,2,0,0,0,0,0,2,1,1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1};

/*1forwalls,2forhearts,3fordestination,0forroads数字1代表墙数2代表心数3代表目的地*/

intmaps_level2[21][24]=/*tosavelevel2_game'smap用二维数组保存其次关的地图*/{0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,1,0,0,0,1,1,0,1,0,1,0,0,0,1,0,0,0,0,0,0,0,0,1,

0,1,0,1,0,1,1,0,1,0,1,0,1,0,1,0,1,1,0,0,1,1,3,1,0,1,0,1,0,0,1,0,1,0,1,0,1,0,1,0,1,1,1,1,0,1,1,1,0,1,0,1,0,0,1,0,1,0,1,0,1,0,1,0,1,0,1,1,0,0,0,1,0,1,0,1,0,0,1,1,1,0,1,0,1,0,1,0,1,0,0,1,1,1,0,1,0,1,0,1,0,0,0,1,1,0,1,0,1,0,1,0,1,0,1,1,1,1,0,1,0,1,0,1,1,1,0,0,1,0,1,0,1,0,1,0,1,0,0,0,2,1,0,1,0,1,0,1,0,1,1,0,1,0,1,0,1,0,1,0,1,1,1,1,1,1,0,1,0,1,0,1,0,0,0,0,0,0,1,0,1,0,1,0,1,0,0,1,1,1,0,1,0,1,0,1,0,1,1,1,1,1,1,0,1,0,1,0,1,0,1,0,0,1,0,1,0,1,0,1,0,0,0,0,1,0,0,0,1,0,1,0,1,0,1,0,0,1,0,1,0,1,0,0,0,1,0,1,1,0,1,1,1,0,1,0,1,1,1,1,0,1,0,1,0,1,0,1,0,1,0,0,1,0,1,0,0,0,1,0,1,1,0,1,0,1,0,1,0,1,0,1,0,1,1,0,1,0,1,1,1,0,1,0,1,1,0,1,1,1,0,1,0,1,0,1,0,1,0,0,1,0,0,0,1,0,1,0,1,1,0,1,0,1,0,1,0,1,0,0,0,1,1,0,1,0,1,0,1,0,1,0,1,1,0,1,0,1,0,1,

24

0,1,0,0,0,1,1,0,1,0,1,0,1,0,1,0,1,0,0,0,0,2,0,1,

0,1,0,1,0,1,1,0,1,0,1,0,1,0,0,0,1,1,1,1,0,1,0,1,0,1,0,0,0,1,1,0,0,0,1,0,1,0,0,0,1,1,1,1,0,0,0,1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1};

/*1forwalls,2forhearts,3fordestination,0forroads数字1代表墙数2代表心数3代表目的地*/

intmaps_level3[21][24]=

{0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,1,0,0,0,1,1,0,1,0,1,0,0,0,1,0,0,0,0,0,3,0,0,1,

0,1,1,1,0,1,1,1,1,1,1,1,1,1,1,0,1,1,0,0,0,1,0,1,0,1,0,0,0,1,0,0,1,0,0,0,1,0,0,0,1,1,1,0,0,1,0,1,0,1,0,1,1,1,0,0,0,0,1,0,0,0,1,0,1,0,0,0,0,0,0,1,0,1,0,0,0,0,0,0,1,1,1,0,1,1,1,0,1,0,1,1,1,1,1,1,0,1,1,1,1,1,1,1,1,0,1,0,1,0,1,0,1,0,0,0,0,0,0,1,0,1,0,1,1,1,0,0,1,0,1,0,1,0,1,0,1,1,0,1,1,1,0,1,0,1,0,1,0,1,1,0,1,0,0,0,0,0,0,0,1,1,1,1,1,1,0,1,0,1,0,1,0,0,0,0,0,0,1,1,1,0,1,0,1,0,0,0,0,0,0,1,0,1,0,1,0,1,1,1,1,1,1

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论