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

C語言實現(xiàn)flappy bird游戲

 更新時間:2018年12月24日 10:37:00   作者:Cielfire  
這篇文章主要為大家詳細介紹了C語言實現(xiàn)flappy bird小游戲,具有一定的參考價值,感興趣的小伙伴們可以參考一下

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

#include<stdio.h>
#include<conio.h>
#include<windows.h>
//定義全局變量
int high,width; //邊界 
int bird_x,bird_y; //小鳥坐標
int bar_y; //擋板坐標
int bar_xTop,bar_xDown; //擋板開口上下坐標 
int score; //得分 
 
void HideCursor() //隱藏光標 
{
 CONSOLE_CURSOR_INFO cursor_info = {1, 0};
 SetConsoleCursorInfo(GetStdHandle(STD_OUTPUT_HANDLE), &cursor_info);
}
void gotoxy(int x,int y) //光標移動到(x,y)位置
{
  HANDLE handle = GetStdHandle(STD_OUTPUT_HANDLE);
  COORD pos;
  pos.X = x;
  pos.Y = y;
  SetConsoleCursorPosition(handle,pos);
}
void startup() //數(shù)據(jù)初始化 
{
 high=18; //初始化邊界 
 width=26;
 
 bird_x=high/2; //初始化小鳥坐標 
 bird_y=width/2;
 
 bar_y=width; //擋板坐標
 
 bar_xTop=high/2; //擋板開口 
 bar_xDown=bar_xTop+4;
 
 score=0; //得分 
  
 HideCursor(); //隱藏光標 
}
void show() //顯示界面 
{
 int i,j;
 gotoxy(0,0); 
 for(i=0;i<=high+1;i++)
 {
 for(j=0;j<=width;j++)
 {
  if((i==bird_x)&&(j==bird_y))//輸出小鳥@ 
  printf("@");
  else if(i==high+1) //輸出下邊界 
   printf("_");
  else if(j==width) //輸出右邊界 
   printf("|");
  else if((j==bar_y)&&((i<=bar_xTop)||(i>=bar_xDown))) //輸出擋板 
   printf("|");
  else printf(" ");
 }
 printf("\n"); 
 }
 printf("得分:%d\n",score);
} 
void updateWithoutInput() //與用戶輸入無關的更新 
{
 if(bird_y==bar_y-1)    
 {
 if((bird_x>bar_xTop)&&(bird_x<bar_xDown)) //小鳥通過擋板開口加分
 score++;
 else
 {
  printf("小鳥死亡\n"); //小鳥沒沒通過擋板開口小鳥死亡 
  exit(0);
 }
 }
 
 if(bar_y>0)
 bar_y--;
 else
 {
 bar_y=width;
 bar_xTop=rand()%(high-4);
 bar_xDown=bar_xTop+4;
 }
 if(bird_x<high+1)
 bird_x++;
 else
 {
 printf("小鳥死亡\n");
 exit(0);
 }
 
 Sleep(200); 
}
void updateWithInpute() //與用戶輸入有關的更新 
{
 char input;
 
 if(kbhit())
 {
 input=getch();
 if((input==' ')&&(bird_x>0)&&(bird_x<=high) ) //小鳥向上跳 
  bird_x=bird_x-2;
 }
}
int main()
{
 startup(); //數(shù)據(jù)初始化 
 while(1)
 {
 show(); //顯示界面 
 updateWithoutInput(); //與用戶輸入無關的更新
 updateWithInpute(); //與用戶輸入有關的更新 
 }
}

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • C語言實現(xiàn)單鏈表逆序與逆序輸出實例

    C語言實現(xiàn)單鏈表逆序與逆序輸出實例

    這篇文章主要介紹了C語言實現(xiàn)單鏈表逆序與逆序輸出,是數(shù)據(jù)結構與算法中比較基礎的重要內容,有必要加以牢固掌握,需要的朋友可以參考下
    2014-08-08
  • C語言詳解數(shù)據(jù)結構與算法中枚舉和模擬及排序

    C語言詳解數(shù)據(jù)結構與算法中枚舉和模擬及排序

    枚舉和模擬其實是沒什么算法可言的,大多數(shù)都是按照題目意思去寫,這里提供快排和歸并的兩個模板,感興趣的朋友來看看吧
    2022-04-04
  • 一篇文章帶你實現(xiàn)C語言中常用庫函數(shù)的模擬

    一篇文章帶你實現(xiàn)C語言中常用庫函數(shù)的模擬

    這篇文章主要介紹了C語言中常用庫函數(shù)的模擬,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-09-09
  • C++中用棧來判斷括號字符串匹配問題的實現(xiàn)方法

    C++中用棧來判斷括號字符串匹配問題的實現(xiàn)方法

    這篇文章主要介紹了C++中用棧來判斷括號字符串匹配問題的實現(xiàn)方法,是一個比較實用的算法技巧,包含了關于棧的基本操作,需要的朋友可以參考下
    2014-08-08
  • C語言?模擬實現(xiàn)strlen函數(shù)詳解

    C語言?模擬實現(xiàn)strlen函數(shù)詳解

    在 C 語言 中我們要獲取 字符串 的長度,可以使用strlen 函數(shù),strlen 函數(shù)計算字符串的長度時,直到空結束字符,但不包括空結束字符,因為 strlen 函數(shù)時不包含最后的結束字符的,因此一般使用 strlen函數(shù)計算的字符串的長度會比使用 sizeof 計算的字符串的字節(jié)數(shù)要小
    2022-04-04
  • C++面向對象語言自制多級菜單功能實現(xiàn)代碼

    C++面向對象語言自制多級菜單功能實現(xiàn)代碼

    菜單類主要負責菜單的創(chuàng)建、修改、刪除,是包含菜單結構組織和響應函數(shù)的模型,用戶擁有充分的自主性,可根據(jù)需要自定義菜單顯示和響應函數(shù),這篇文章主要介紹了C++面向對象語言自制多級菜單,需要的朋友可以參考下
    2024-06-06
  • C++實現(xiàn)希爾排序(ShellSort)

    C++實現(xiàn)希爾排序(ShellSort)

    這篇文章主要為大家詳細介紹了C++實現(xiàn)希爾排序,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-04-04
  • C語言中遞歸和排列組合詳解

    C語言中遞歸和排列組合詳解

    大家好,本篇文章主要講的是C語言中遞歸和排列組合詳解,感興趣的同學趕快來看一看吧,對你有幫助的話記得收藏一下,方便下次瀏覽
    2022-01-01
  • C++?Boost?Spirit精通教程

    C++?Boost?Spirit精通教程

    Boost是為C++語言標準庫提供擴展的一些C++程序庫的總稱。Boost庫是一個可移植、提供源代碼的C++庫,作為標準庫的后備,是C++標準化進程的開發(fā)引擎之一,是為C++語言標準庫提供擴展的一些C++程序庫的總稱
    2022-11-11
  • C++實現(xiàn)字符串元音字母反轉的兩種方法

    C++實現(xiàn)字符串元音字母反轉的兩種方法

    在處理字符串問題時,我們經常需要對其中的字符進行操作,例如反轉、替換等,本文將詳細討論如何在C++中實現(xiàn)僅反轉字符串中的所有元音字母,并返回結果字符串,需要的朋友可以參考下
    2024-07-07

最新評論

新余市| 会泽县| 望谟县| 青田县| 青川县| 北川| 绵竹市| 天津市| 元江| 柳河县| 新野县| 泰州市| 宜兴市| 巴楚县| 万盛区| 红桥区| 海口市| 巧家县| 皋兰县| 北京市| 宁强县| 政和县| 东乌珠穆沁旗| 新宁县| 太仓市| 孟连| 雷州市| 社旗县| 昌都县| 榆树市| 弥渡县| 东辽县| 五华县| 鸡西市| 桑植县| 福贡县| 天津市| 浙江省| 安溪县| 鲁山县| 蒙山县|