最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C語言實現(xiàn)飛機大戰(zhàn)

 更新時間:2022年06月08日 09:34:22   作者:Object_in_java  
這篇文章主要為大家詳細介紹了C語言實現(xiàn)飛機大戰(zhàn),文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下

本文實例為大家分享了C語言實現(xiàn)飛機大戰(zhàn)的具體代碼,供大家參考,具體內(nèi)容如下

#include<stdio.h>
#include<stdlib.h>
#include<conio.h>
#include<Windows.h>

int score = 0;
int plane_col, plane_row;//·é?ú????
int bullet_col,bullet_row;//×óμˉμ?????
int area_height, area_width;//ó??·??óò ?0-n-1
int enemy_col, enemy_row;
int enemy_vh, enemy_vv;
int a[100][100] = { 0 };

void gotoxy(int x, int y) {//?¢D??
?? ?HANDLE handle = GetStdHandle(STD_OUTPUT_HANDLE);
?? ?COORD pos;
?? ?pos.X = x;
?? ?pos.Y = y;
?? ?SetConsoleCursorPosition(handle, pos);
}
void HideCursor() {
?? ?CONSOLE_CURSOR_INFO cursor_info = { 1,0 };
?? ?SetConsoleCursorInfo(GetStdHandle(STD_OUTPUT_HANDLE), &cursor_info);
}

void startup()//3?ê??ˉ?
{
?? ?area_height = 20;
?? ?area_width = 30;

?? ?plane_col = 14;
?? ?plane_row = 10;
?? ?
?? ?bullet_col = 0;
?? ?bullet_row = -1;

?? ?enemy_col = rand() % area_width;
?? ?enemy_row = 0;
?? ?enemy_vh = 0;
?? ?enemy_vv = 1;
}

//int[][] planeArray() {
//?? ?
//?? ?a[plane_col][plane_row] = 1;
//?? ?for (int i = plane_col - 2; i < plane_col + 2; i++)
//?? ??? ?a[i][plane_row + 1] = 1;
//?? ?a[plane_col - 1][plane_row + 2] = 1; a[plane_col + 1][plane_row + 2] = 1;
//
//?? ?return a;
//}

void show()//?e??×?·?é¨?è2¢′òó??
{
?? ?gotoxy(0, 0);
?? ?int i, j;
?? ?//??ê?
?? ?//system("cls");
?? ?for (i = 0; i < area_height; i++)//DD񂅣
?? ?{
?? ??? ?for (j = 0; j < area_width; j++)//áD±éàú
?? ??? ?{
?? ??? ??? ?if (i == plane_row && j == plane_col)
?? ??? ??? ?{
?? ??? ??? ??? ?printf("*");
?? ??? ??? ?}
?? ??? ??? ?else if (i == bullet_row && j == bullet_col)
?? ??? ??? ??? ?printf("|");
?? ??? ??? ?else if (i == enemy_row && j == enemy_col)
?? ??? ??? ??? ?printf("@");
?? ??? ??? ?else printf(" ");
?? ??? ?}
?? ??? ?printf("\n");
?? ?}
?? ?printf("score:%d\n",score);
}
void updateWithInput()//???¥£?????·é?úò??ˉ£?é??÷
{?
?? ?char input;
?? ?//μè′yó??§μ?ê?è?£????¥
?? ?if (kbhit()) {
?? ??? ?input = getch();
?? ??? ?switch (input)
?? ??? ?{
?? ??? ?case 'w':
?? ??? ??? ?if(plane_row != 0)
?? ??? ??? ?plane_row--; break;
?? ??? ?case 'a':
?? ??? ??? ?if(plane_col != 0)
?? ??? ??? ?plane_col--; break;
?? ??? ?case 'd':
?? ??? ??? ?if(plane_col != area_width)
?? ??? ??? ?plane_col++; break;
?? ??? ?case 's':
?? ??? ??? ?if(plane_row != area_height)
?? ??? ??? ?plane_row++; break;
?? ??? ?case ' ':
?? ??? ??? ?if (bullet_row < 0)//?á??à???óD×óμˉ
?? ??? ??? ?{
?? ??? ??? ??? ?bullet_row = plane_row - 1;
?? ??? ??? ??? ?bullet_col = plane_col;
?? ??? ??? ?}
?? ??? ??? ?break;
?? ??? ?default:
?? ??? ??? ?break;
?? ??? ?}
?? ?}
}

int IsCrash() {
?? ?//?D???ò·?·é?úê?·?×1?ù?
?? ?if (enemy_col == plane_col && enemy_row == plane_row) {
?? ??? ?return 1;
?? ?}
?? ?return 0;
}

void updateWithourInput()//×óμˉò??ˉó?μDè?ò??ˉ?
{
?? ?//?üD?
?? ?bullet_row--;
?? ?static int count = 0;
?? ?count ++;
?? ?if (count == 40) {
?? ??? ?enemy_row += enemy_vv;
?? ??? ?enemy_col += enemy_vh;
?? ??? ?count = 0;
?? ?}
?? ?
}

void crack() {//?÷?ùμDè??

?? ?if(enemy_row > area_height){
?? ??? ?bullet_row = -1;
?? ??? ?enemy_row = -1;
?? ??? ?enemy_col = rand() % area_height;
?? ?}
?? ?else if (bullet_col == enemy_col && bullet_row == enemy_row) {
?? ??? ?score += 10;
?? ??? ?bullet_row = -1;
?? ??? ?enemy_row = -1;
?? ??? ?enemy_col = rand() % area_height;
?? ?}

}

int IsFinish() {//ó??·ê?·??áê??
?? ?if (score == 100) {
?? ??? ?system("cls");
?? ??? ?printf("congretulations!!!");
?? ??? ?score = 0;
?? ??? ?_sleep(500);//?è?Yí£?ú??êμ·?o?è?D??ˉ?
?? ??? ?system("pause");
?? ??? ?return 1;
?? ?}
?? ?else if (IsCrash() == 1) {
?? ??? ?system("cls");
?? ??? ?printf("you have lost!!!");
?? ??? ?score = 0;
?? ??? ?_sleep(500);
?? ??? ?system("pause");
?? ??? ?return 1;
?? ?} ? ? ? ? ?
?? ?
?? ?return 0;
}

int main()
{
?? ?HideCursor();
?? ?startup();
?? ?while (1)
?? ?{
?? ??? ?show();
?? ??? ?updateWithInput();
?? ??? ?updateWithourInput();
?? ??? ?crack();
?? ??? ?if(IsFinish()==1){
?? ??? ??? ?startup();
?? ??? ??? ?continue;
?? ??? ?}
?? ?}
?? ?return 0;
}

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Qt繪制時鐘效果

    Qt繪制時鐘效果

    這篇文章主要為大家詳細介紹了Qt繪制時鐘效果,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-05-05
  • DEVC++實現(xiàn)推箱子小游戲

    DEVC++實現(xiàn)推箱子小游戲

    這篇文章主要為大家詳細介紹了DEVC++實現(xiàn)推箱子小游戲,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-01-01
  • C/C++實現(xiàn)的游戲角色名稱名字隨機生成代碼

    C/C++實現(xiàn)的游戲角色名稱名字隨機生成代碼

    這篇文章主要介紹了C/C++實現(xiàn)的游戲角色名稱名字隨機生成代碼,本文特別針對一些古典游戲的角色名稱進行隨機生成,需要的朋友可以參考下
    2015-05-05
  • C++面試八股文之如何避免死鎖詳解

    C++面試八股文之如何避免死鎖詳解

    在C++中,鎖(Lock)是一種同步工具,用于保護共享資源,防止多個線程同時訪問,那么如何避免死鎖的情況出現(xiàn)呢,下面就為大家簡單講講
    2023-07-07
  • 基于C++字符串替換函數(shù)的使用詳解

    基于C++字符串替換函數(shù)的使用詳解

    本篇文章是對C++字符串替換函數(shù)的使用進行了詳細的分析介紹,需要的朋友參考下
    2013-05-05
  • c++ 前自增/后自增操作符效率分析

    c++ 前自增/后自增操作符效率分析

    這篇文章主要介紹了c++ 前自增/后自增操作符效率分析,幫助大家更好的理解和學(xué)習(xí)c++,感興趣的朋友可以了解下
    2021-01-01
  • 基于Matlab實現(xiàn)鯨魚優(yōu)化算法的示例代碼

    基于Matlab實現(xiàn)鯨魚優(yōu)化算法的示例代碼

    鯨魚優(yōu)化算法(WOA)是澳大利亞學(xué)者Mirjaili等于2016年提出的群體智能優(yōu)化算法,根據(jù)座頭鯨的捕獵行為實現(xiàn)優(yōu)化搜索的目的。本文將利用Matlab實現(xiàn)這一算法,需要的可以參考一下
    2022-04-04
  • C語言中操作字符串的函數(shù)詳解

    C語言中操作字符串的函數(shù)詳解

    這篇文章主要為大家詳細介紹了C語言中操作字符串的函數(shù),文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-03-03
  • 深入二叉樹兩個結(jié)點的最低共同父結(jié)點的詳解

    深入二叉樹兩個結(jié)點的最低共同父結(jié)點的詳解

    本篇文章是對二叉樹兩個結(jié)點的最低共同父結(jié)點進行了詳細的分析介紹,需要的朋友參考下
    2013-05-05
  • 深入解讀C++中的指針變量

    深入解讀C++中的指針變量

    這篇文章主要介紹了深入解讀C++中的指針變量,是C語言入門學(xué)習(xí)中的基礎(chǔ)知識,需要的朋友可以參考下
    2015-09-09

最新評論

从化市| 内乡县| 贵定县| 贡觉县| 灯塔市| 临桂县| 壶关县| 文昌市| 金溪县| 临潭县| 武义县| 遂川县| 巴彦县| 富阳市| 桓台县| 伊金霍洛旗| 牙克石市| 石城县| 闵行区| 逊克县| 平定县| 饶河县| 抚松县| 九台市| 延寿县| 景洪市| 永嘉县| 龙里县| 龙井市| 保山市| 景德镇市| 石城县| 昌都县| 鸡东县| 桂林市| 河津市| 延川县| 清河县| 金乡县| 稷山县| 五大连池市|