這篇文章給大家分享的是有關(guān)C語言實現(xiàn)簡單飛機大戰(zhàn)的方法的內(nèi)容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。
成都網(wǎng)站制作、成都做網(wǎng)站服務(wù)團隊是一支充滿著熱情的團隊,執(zhí)著、敏銳、追求更好,是創(chuàng)新互聯(lián)的標(biāo)準(zhǔn)與要求,同時竭誠為客戶提供服務(wù)是我們的理念。成都創(chuàng)新互聯(lián)公司把每個網(wǎng)站當(dāng)做一個產(chǎn)品來開發(fā),精雕細(xì)琢,追求一名工匠心中的細(xì)致,我們更用心!
具體內(nèi)容如下
定義四個函數(shù)實現(xiàn)飛機大戰(zhàn)
#include#include #include //定義全局變量 int high,width; //定義邊界 int position_x,position_y; //飛機位置 int bullet_x,bullet_y; //子彈位置 int enemy_x,enemy_y; int score; int flag; //飛機狀態(tài) void gotoxy(int x,int y) //光標(biāo)移動到(x,y)位置 { HANDLE handle = GetStdHandle(STD_OUTPUT_HANDLE); COORD pos; pos.X = x; pos.Y = y; SetConsoleCursorPosition(handle,pos); } void HideCursor() // 用于隱藏光標(biāo) { CONSOLE_CURSOR_INFO cursor_info = {1, 0}; // 第二個值為0表示隱藏光標(biāo) SetConsoleCursorInfo(GetStdHandle(STD_OUTPUT_HANDLE), &cursor_info); } void startup() //數(shù)據(jù)初始化 { high=18; width=26; position_x=high-3; position_y=width/2; bullet_x=0; bullet_y=position_y; enemy_x=0; enemy_y=position_y; score=0; flag=0; //飛機完好 HideCursor(); } void show() //顯示界面 { int i,j; for(i=0;i 0) //子彈上升效果 bullet_x--; if((bullet_x==enemy_x)&&(bullet_y==enemy_y)) //子彈命中敵機 { score++; bullet_x=-1; enemy_x=1; enemy_y=2+rand()%width-2; } static int speed; if(speed<30) //減慢敵機速度,不影響飛機和子彈速度 speed++; if(speed==30) { if(enemy_x 1) position_x--; if((input=='s')&&position_x 1) position_y--; if((input=='d')&&position_y 作者的另一段代碼:C語言實現(xiàn)空戰(zhàn)游戲,也很棒,分享給大家:
#include#include #include #define High 27 //定義邊界 #define Width 45 #define EnemyNum 5 //敵機數(shù)目 //定義全局變量 int canvas[High][Width]={0}; //定義元素,0為空格,1為飛機,2為子彈,3為敵機,4為右下邊界 int position_x,position_y; //飛機坐標(biāo) int enemy_x[EnemyNum],enemy_y[EnemyNum]; //敵機坐標(biāo) int score; //得分 int Speed; //敵機速度 int bulletwidth; //子彈寬度 void HideCursor() //隱藏光標(biāo) { CONSOLE_CURSOR_INFO cursor_info = {1, 0}; SetConsoleCursorInfo(GetStdHandle(STD_OUTPUT_HANDLE), &cursor_info); } void gotoxy(int x,int y) //光標(biāo)移動到(x,y)位置 { HANDLE handle = GetStdHandle(STD_OUTPUT_HANDLE); COORD pos; pos.X = x; pos.Y = y; SetConsoleCursorPosition(handle,pos); } void startup() //數(shù)據(jù)初始化 { position_x=High-2; //初始化飛機位置 position_y=Width/2; canvas[position_x][position_y]=1; bulletwidth=0; //初始化子彈寬度 Speed=25; //敵機初始最小速度 int k; for(k=0;k 0) canvas[i-1][j]=2; } } } for(k=0;k High) //生成新的敵機 { canvas[enemy_x[k]][enemy_y[k]]=0; enemy_x[k]=rand()%2; enemy_y[k]=rand()%Width; canvas[enemy_x[k]][enemy_y[k]]=3; } } static int speed=0; if(speed 0) //控制飛機方向 { canvas[position_x][position_y]=0; position_x--; canvas[position_x][position_y]=1; } else if(input=='s' && position_x 0) { canvas[position_x][position_y]=0; position_y--; canvas[position_x][position_y]=1; } else if(input=='d' && position_y Width-1) right=0; for(x=left;x<=right;x++) canvas[position_x-1][x]=2; } } } int main() { startup(); system("color 2f"); while(1) { show(); //顯示界面 updateWithoutInput(); //無需用戶輸入的更新 updateWithInput(); //需用戶輸入的更新 } } 感謝各位的閱讀!關(guān)于“C語言實現(xiàn)簡單飛機大戰(zhàn)的方法”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,讓大家可以學(xué)到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!
網(wǎng)頁標(biāo)題:C語言實現(xiàn)簡單飛機大戰(zhàn)的方法
當(dāng)前路徑:http://weahome.cn/article/pdjgec.html