这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 高校专区 » 岭南EE码农港 » C语言课程设计作业——游戏机

共2条 1/1 1 跳转至

C语言课程设计作业——游戏机

菜鸟
2014-12-07 15:42:55     打赏
/* Note:Your choice is C IDE */
#include "stdio.h"
#include  
#include  
#include  
#include  
#define N 35 
#define up 72
#define left 75 
#define right 77  
void run();                //游戏控制函数
void yn();                 //设置是否继续游戏函数
void print(int [][N]);     //输出函数
void movebul(int [][N]);   //子弹移动函数
void movepla(int [][N]);   //敌机移动函数
void setting(void);        //设置函数
void menu(void);           //菜单函数
int scr[22][N]={0},pl=9,width=35,speed=3,density=30,score=0,death=0;
//全局变量:界面、我机初始位、界面宽度、敌机速度、敌机密度、得分、死亡
void main()
{
    menu(); 
    run();

}
void print(int a[][N])                //输出函数
{ 
    int i,j;
    system("cls"); 
  for(i=0;i<22;i++) 
 
  { 
    a[i][width-1]=4; 
    for(j=0;j=0;i--)        //从最后一行往上是为了避免把敌机直接冲出数组。
     for(j=0;j> "); 
   	switch(getche()) 
   	{  
   	case '1':width=34;break; 
   	case '2':width=24;;break;  
   	default:printf("\n 错误,请重新选择...\n");
    sw=1; 
   	}  
  }
   while(sw); 
   do 
   { 
   	sw=0;  
   	printf("\n 请选择敌机密度:1.大2.中3.小>> "); 
   	switch(getche()) 
   	{  
   	case '0':density=10;break; 
   	case '1':density=20;break; 
   	case '2':density=30;break; 
   	case '3':density=40;break;  
   	default:printf("\n 错误,请重新选择...\n"); 
   	sw=1; 
   	}  
   }
   while(sw); 
   do 
   { 
   	sw=0;  
   	printf("\n 敌机的飞行速度:1.快2.中3.慢>> ");
   	switch(getche()) 
   	{  
   	 case '1':speed=2;break; 
   	 case '2':speed=3;break; 
   	 case '3':speed=4;break;  
   	 default:printf("\n 错误,请重新选择...\n"); 
   	 sw=1; 
   	}  
   }
    while(sw);  
    for(i=0;i<22;i++) 
       for(j=0;j<45;j++) 
     scr[i][j]=0;  
     scr[21][pl=9]=1;  
     printf("\n 按任意键保存..."); 
     getch(); 
   } 
void run() 
{
   	int i=0,j=0;    
   	system("color 3e");//设置背景颜色  
   	
   	scr[21][pl]=1;     //我方飞机初始位置  
   	scr[0][5]=3;      
   	  while(death<3)   //限制死亡次数
   	 {    
   		if(kbhit())   
   		switch(getch())//控制左右移动    
   		{         
   			case left:    
   			case 'a':    
   			case 'A':if(pl>0)scr[21][pl]=0,scr[21][--pl]=1;break;    
   			case  right:    
   			case 'd':    
   			case 'D':if(pl 

 


菜鸟
2015-03-04 16:14:41     打赏
2楼

well done. very impressive


共2条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]