c语言飞机大战源代码
c语言飞机大战源代码文件管理序列号:[K8UY-K9IO69-O6M243-OL889-F88688]
#include
#include
#include
#include
#define N 35
void print(int [][N]);//输出
void movebul(int [][N]);//子弹移动
void movepla(int [][N]);//敌机移动
void setting();//设置
void menu();//菜单
int
scr[22][N]={0},pl=9,width=24,speed=3,density=30,score=0,death=0 ;//界面,位置,宽度,速度,密度,分数,死亡
main()
{
menu();
int i=0,j=0,c;
scr[21][pl]=1;
scr[0][5]=3;
while(1) //控制阶段(开始) {if(kbhit())switch(getch())
{case 'a':
case 'A': if(pl>0) scr[21][pl]=0,scr[21][--pl]=1;break;
case 'd':
case 'D': if(pl case 'W': scr[20][pl]=2;break; case 27: setting();break; } //控制阶段(结束) if(++j%density==0) {j=0;srand(time(NULL)); c=rand()%width; scr[][c]=3; } if(++i%speed==0) movepla(scr); movebul(scr); print(scr); if(i==30000)i=0; } return 0; } void menu()//菜单 { printf("A,D控制方向,W发射子弹\n设置Esc\n按任意键开始\nby:Lzh"); if (getch()==27)setting(); } void print(int a[][N])//输出 { system("cls"); int i,j; for (i=0;i<22;i++) {a[i][width-1]=4; for (j=0;j {if(a[i][j]==0)printf(""); if(a[i][j]==1)printf("\5"); if(a[i][j]==2)printf("."); if(a[i][j]==3)printf("\3"); if(a[i][j]==4)printf("|"); if(i==0&&j==width-1)printf("得分:%d",score); if(i==1&&j==width-1)printf("死亡:%d",death); if(i==2&&j==width-1)printf("设置:Esc"); if(i==3&&j==width-1)printf("机智的我编的__LZH"); } printf("\n"); } } void movebul(int a[][N]) //子弹 { int i,j; for (i=0;i<22;i++) for (j=0;j {if (i==0&&a[i][j]==2)a[i][j]=0; if (a[i][j]==2) { if(a[i-1][j]==3)score+=10,printf("\7"); a[i][j]=0,a[i-1][j]=2; } } } void movepla(int a[][N]) //敌机{ int i,j; for (i=21;i>=0;i--) for (j=0;j { if(i==21&&a[i][j]==3) a[i][j]=0; if(a[i][j]==3)a[i][j]=0,a[i+1][j]=3; } if(a[20][pl]==3&&a[21][pl]==1)death++; } void setting() //设置 { }