c语言游戏开发编完的游戏怎么玩

做游戏,学编程(C语言) 4 flappy birda year ago第二步,同时实现下落的小鸟和静止障碍物的显示,注意为了刻画障碍物的位置、中间缝隙的大小,需要多个变量。#include &stdio.h&
#include &stdlib.h&
#include &conio.h&
#include &cwindow.h&
// 全局变量
int high,width; // 游戏画面大小
int bird_x,bird_y; // 小鸟的坐标
int bar1_y,bar1_xDown,bar1_xTop; // 障碍物的相关坐标
void gotoxy(int x,int y)//类似于清屏函数
HANDLE handle = GetStdHandle(STD_OUTPUT_HANDLE);
COORD pos;
pos.X = x;
pos.Y = y;
SetConsoleCursorPosition(handle,pos);
void startup()
// 数据初始化
high = 15;
width = 20;
bird_x = 0;
bird_y = width/3;
bar1_y = width/2;
bar1_xDown = high/3;
bar1_xTop = high/2;
void show()
// 显示画面
gotoxy(0,0);
for (i=0;i&high;i++)
for (j=0;j&width;j++)
if ((i==bird_x) && (j==bird_y))
printf("@");
else if ((j==bar1_y) && ((i&bar1_xDown)||(i&bar1_xTop)) )
printf("*");
printf(" ");
printf("\n");
void updateWithoutInput()
// 与用户输入无关的更新
bird_x ++;
Sleep(150);
void updateWithInput()
// 与用户输入有关的更新
char input;
if(kbhit())
// 判断是否有输入
input = getch();
// 根据用户的不同输入来移动,不必输入回车
if (input == ' ')
bird_x = bird_x - 2;
void main()
startup();
// 数据初始化
游戏循环执行
// 显示画面
updateWithoutInput();
// 与用户输入无关的更新
updateWithInput();
// 与用户输入有关的更新
第三步,让上面的一列障碍物从右向左移动起来,类似飞机子弹移动的思路。#include &stdio.h&
#include &stdlib.h&
#include &conio.h&
#include &cwindow.h&
// 全局变量
int high,width; // 游戏画面大小
int bird_x,bird_y; // 小鸟的坐标
int bar1_y,bar1_xDown,bar1_xTop; // 障碍物的相关坐标
void gotoxy(int x,int y)//类似于清屏函数
HANDLE handle = GetStdHandle(STD_OUTPUT_HANDLE);
COORD pos;
pos.X = x;
pos.Y = y;
SetConsoleCursorPosition(handle,pos);
void startup()
// 数据初始化
high = 20;
width = 50;
bird_x = high/2;
bird_y = 1;
bar1_y = width/2;
bar1_xDown = high/3;
bar1_xTop = high/2;
void show()
// 显示画面
gotoxy(0,0);
for (i=0;i&high;i++)
for (j=0;j&width;j++)
if ((i==bird_x) && (j==bird_y))
printf("@");
else if ((j==bar1_y) && ((i&bar1_xDown)||(i&bar1_xTop)) )
printf("*");
printf(" ");
printf("\n");
void updateWithoutInput()
// 与用户输入无关的更新
bird_x ++;
bar1_y --;
Sleep(150);
void updateWithInput()
// 与用户输入有关的更新
char input;
if(kbhit())
// 判断是否有输入
input = getch();
// 根据用户的不同输入来移动,不必输入回车
if (input == ' ')
bird_x = bird_x - 2;
void main()
startup();
// 数据初始化
游戏循环执行
// 显示画面
updateWithoutInput();
// 与用户输入无关的更新
updateWithInput();
// 与用户输入有关的更新
第四步,判断小鸟是从障碍物的缝隙中通过,还是发生碰撞,并加入一个记分变量。基本和飞机游戏中判断击中敌机的思路差不多。#include &stdio.h&
#include &stdlib.h&
#include &conio.h&
#include &cwindow.h&
// 全局变量
int high,width; // 游戏画面大小
int bird_x,bird_y; // 小鸟的坐标
int bar1_y,bar1_xDown,bar1_xTop; // 障碍物的相关坐标
int score; // 得分,经过障碍物的个数
void gotoxy(int x,int y)//类似于清屏函数
HANDLE handle = GetStdHandle(STD_OUTPUT_HANDLE);
COORD pos;
pos.X = x;
pos.Y = y;
SetConsoleCursorPosition(handle,pos);
void startup()
// 数据初始化
high = 20;
width = 50;
bird_x = high/2;
bird_y = 3;
bar1_y = width/2;
bar1_xDown = high/3;
bar1_xTop = high/2;
score = 0;
void show()
// 显示画面
gotoxy(0,0);
for (i=0;i&high;i++)
for (j=0;j&width;j++)
if ((i==bird_x) && (j==bird_y))
printf("@");
else if ((j==bar1_y) && ((i&bar1_xDown)||(i&bar1_xTop)) )
printf("*");
printf(" ");
printf("\n");
printf("得分:%d\n",score);
void updateWithoutInput()
// 与用户输入无关的更新
bird_x ++;
bar1_y --;
if (bird_y==bar1_y)
if ((bird_x&=bar1_xDown)&&(bird_x&=bar1_xTop))
printf("游戏失败\n");
system("pause");
Sleep(150);
void updateWithInput()
// 与用户输入有关的更新
char input;
if(kbhit())
// 判断是否有输入
input = getch();
// 根据用户的不同输入来移动,不必输入回车
if (input == ' ')
bird_x = bird_x - 2;
void main()
startup();
// 数据初始化
游戏循环执行
// 显示画面
updateWithoutInput();
// 与用户输入无关的更新
updateWithInput();
// 与用户输入有关的更新
第五步,类似飞机游戏中敌机重现的例子,障碍物在左边消失后,在右边循环出现。注意利用随机变量实现障碍物中间缝隙位置的不同。#include &stdio.h&
#include &stdlib.h&
#include &conio.h&
#include &cwindow.h&
// 全局变量
int high,width; // 游戏画面大小
int bird_x,bird_y; // 小鸟的坐标
int bar1_y,bar1_xDown,bar1_xTop; // 障碍物1的相关坐标
int score; // 得分,经过障碍物的个数
void gotoxy(int x,int y)//类似于清屏函数
HANDLE handle = GetStdHandle(STD_OUTPUT_HANDLE);
COORD pos;
pos.X = x;
pos.Y = y;
SetConsoleCursorPosition(handle,pos);
void startup()
// 数据初始化
high = 20;
width = 20;
bird_x = high/2;
bird_y = 3;
bar1_y = width;
bar1_xDown = high/3;
bar1_xTop = high/2;
score = 0;
void show()
// 显示画面
gotoxy(0,0);
for (i=0;i&high;i++)
for (j=0;j&width;j++)
if ((i==bird_x) && (j==bird_y))
printf("@");
else if ((j==bar1_y) && ((i&bar1_xDown)||(i&bar1_xTop)) )
printf("*");
printf(" ");
printf("\n");
printf("得分:%d\n",score);
void updateWithoutInput()
// 与用户输入无关的更新
bird_x ++;
bar1_y --;
if (bird_y==bar1_y)
if ((bird_x&=bar1_xDown)&&(bird_x&=bar1_xTop))
printf("游戏失败\n");
system("pause");
if (bar1_y&=0)
// 再新生成一个障碍物
bar1_y = width;
int temp = rand()%int(high*0.8);
bar1_xDown = temp - high/10;
bar1_xTop = temp + high/10;
Sleep(150);
void updateWithInput()
// 与用户输入有关的更新
char input;
if(kbhit())
// 判断是否有输入
input = getch();
// 根据用户的不同输入来移动,不必输入回车
if (input == ' ')
bird_x = bird_x - 2;
void main()
startup();
// 数据初始化
游戏循环执行
// 显示画面
updateWithoutInput();
// 与用户输入无关的更新
updateWithInput();
// 与用户输入有关的更新
这个flappy bird是不是很cool?大家也可以利用空战游戏、反弹球、flappy bird的实现思路,实现很多常见的小游戏了。思考题,如果要求空战游戏中2台敌机同时出现、3个反弹球同时反弹、flappy bird画面中同时出现4个柱子,如何实现?下一个教程,数组之生命游戏:赞赏5 人赞赏262收藏分享举报文章被以下专栏收录通过开发游戏进行C语言的编程学习{&debug&:false,&apiRoot&:&&,&paySDK&:&https:\u002F\u002Fpay.zhihu.com\u002Fapi\u002Fjs&,&wechatConfigAPI&:&\u002Fapi\u002Fwechat\u002Fjssdkconfig&,&name&:&production&,&instance&:&column&,&tokens&:{&X-XSRF-TOKEN&:null,&X-UDID&:null,&Authorization&:&oauth c3cef7c66aa9e6a1e3160e20&}}{&database&:{&Post&:{&&:{&isPending&:false,&contributes&:[{&sourceColumn&:{&lastUpdated&:,&description&:&面向C语言初学者,和大家一起step by step地开发出酷炫的2D游戏。培养对C语言的兴趣,实现大代码量的编程,在实践中理解C语言的语法知识。\n\n每次教程前会写上所需的基础语法知识,给出多个步骤的实现目标、相应的参考代码。大家可以先在前一个步骤代码的基础上,自己尝试实现下一个步骤的要求;如果有困难的话,再参考我们给出的代码。&,&permission&:&COLUMN_PUBLIC&,&memberId&:,&contributePermission&:&COLUMN_PUBLIC&,&translatedCommentPermission&:&all&,&canManage&:true,&intro&:&通过开发游戏进行C语言的编程学习&,&urlToken&:&c2game&,&id&:25605,&imagePath&:&v2-e8fa4fc00f7b294bfe29.jpg&,&slug&:&c2game&,&applyReason&:&0&,&name&:&做游戏,学编程(C语言)&,&title&:&做游戏,学编程(C语言)&,&url&:&https:\u002F\u002Fzhuanlan.zhihu.com\u002Fc2game&,&commentPermission&:&COLUMN_ALL_CAN_COMMENT&,&canPost&:true,&created&:,&state&:&COLUMN_NORMAL&,&followers&:17801,&avatar&:{&id&:&v2-e8fa4fc00f7b294bfe29&,&template&:&https:\u002F\u002Fpic4.zhimg.com\u002F{id}_{size}.jpg&},&activateAuthorRequested&:false,&following&:false,&imageUrl&:&https:\u002F\u002Fpic4.zhimg.com\u002Fv2-e8fa4fc00f7b294bfe29_l.jpg&,&articlesCount&:27},&state&:&accepted&,&targetPost&:{&titleImage&:&https:\u002F\u002Fpic1.zhimg.com\u002Fv2-2f1fccbbd02b4c9a0a31_r.jpg&,&lastUpdated&:,&imagePath&:&v2-2f1fccbbd02b4c9a0a31.jpg&,&permission&:&ARTICLE_PUBLIC&,&topics&:[],&summary&:&在学习数组之前,我们再做一个好玩的游戏:flappy bird。大家可以按照上一个教程中空战游戏的思路,先按照我们的提示,逐步地实现,如果有困难,再参考我们分步骤的代码,这样的锻炼效果最好。备注:#include &windows.h& 或者 #include &cwindows.h&,大家…&,&copyPermission&:&ARTICLE_COPYABLE&,&translatedCommentPermission&:&all&,&likes&:0,&origAuthorId&:0,&publishedTime&:&T20:49:41+08:00&,&sourceUrl&:&&,&urlToken&:,&id&:2065776,&withContent&:false,&slug&:,&bigTitleImage&:false,&title&:&做游戏,学编程(C语言) 4 flappy bird&,&url&:&\u002Fp\u002F&,&commentPermission&:&ARTICLE_ALL_CAN_COMMENT&,&snapshotUrl&:&&,&created&:,&comments&:0,&columnId&:25605,&content&:&&,&parentId&:0,&state&:&ARTICLE_PUBLISHED&,&imageUrl&:&https:\u002F\u002Fpic1.zhimg.com\u002Fv2-2f1fccbbd02b4c9a0a31_r.jpg&,&author&:{&bio&:&教师\u002FIT\u002FCG&,&isFollowing&:false,&hash&:&f515faa31ad1ea5ee648a7b&,&uid&:117000,&isOrg&:false,&slug&:&tongjingHHU&,&isFollowed&:false,&description&:&主要研究方向:计算机图形学、计算机视觉、虚拟现实、三维打印;同时对教学很感兴趣,主要教授:程序设计语言C、计算机动画与虚拟现实、人工智能等课程。&,&name&:&童晶&,&profileUrl&:&https:\u002F\u002Fwww.zhihu.com\u002Fpeople\u002FtongjingHHU&,&avatar&:{&id&:&v2-c07a7cd2efa33acb333f14aae10b71d9&,&template&:&https:\u002F\u002Fpic4.zhimg.com\u002F{id}_{size}.jpg&},&isOrgWhiteList&:false,&isBanned&:false},&memberId&:,&excerptTitle&:&&,&voteType&:&ARTICLE_VOTE_CLEAR&},&id&:513273}],&title&:&做游戏,学编程(C语言) 4 flappy bird&,&author&:&tongjingHHU&,&content&:&在学习数组之前,我们再做一个好玩的游戏:flappy bird。大家可以按照上一个教程中空战游戏的思路,先按照我们的提示,逐步地实现,如果有困难,再参考我们分步骤的代码,这样的锻炼效果最好。\u003Cp\u003E备注:#include &windows.h& 或者 #include &cwindows.h&,大家测试下选适合自己编译器的版本。\u003C\u002Fp\u003E\u003Cp\u003E第一步,实现一个简单下落的小鸟,实际上和飞机游戏中下落的敌机类似的效果。按空格键后,小鸟上升。\u003C\u002Fp\u003E\u003Cfigure\u003E\u003Cnoscript\u003E\u003Cimg src=\&https:\u002F\u002Fpic1.zhimg.com\u002Fv2-cde7c4c4b5d65c8722de2cdcb47e5e82_b.jpg\& data-rawwidth=\&480\& data-rawheight=\&429\& class=\&origin_image zh-lightbox-thumb\& width=\&480\& data-original=\&https:\u002F\u002Fpic1.zhimg.com\u002Fv2-cde7c4c4b5d65c8722de2cdcb47e5e82_r.jpg\&\u003E\u003C\u002Fnoscript\u003E\u003Cimg src=\&data:image\u002Fsvg+utf8,&svg%20xmlns='http:\u002F\u002Fwww.w3.org\u002FFsvg'%20width='480'%20height='429'&&\u002Fsvg&\& data-rawwidth=\&480\& data-rawheight=\&429\& class=\&origin_image zh-lightbox-thumb lazy\& width=\&480\& data-original=\&https:\u002F\u002Fpic1.zhimg.com\u002Fv2-cde7c4c4b5d65c8722de2cdcb47e5e82_r.jpg\& data-actualsrc=\&https:\u002F\u002Fpic1.zhimg.com\u002Fv2-cde7c4c4b5d65c8722de2cdcb47e5e82_b.jpg\&\u003E\u003C\u002Ffigure\u003E\u003Cdiv class=\&highlight\&\u003E\u003Cpre\u003E\u003Ccode class=\&language-c\&\u003E\u003Cspan\u003E\u003C\u002Fspan\u003E\u003Cspan class=\&cp\&\u003E#include\u003C\u002Fspan\u003E \u003Cspan class=\&cpf\&\u003E&stdio.h&\u003C\u002Fspan\u003E\u003Cspan class=\&cp\&\u003E\u003C\u002Fspan\u003E\n\u003Cspan class=\&cp\&\u003E#include\u003C\u002Fspan\u003E \u003Cspan class=\&cpf\&\u003E&stdlib.h&\u003C\u002Fspan\u003E\u003Cspan class=\&cp\&\u003E\u003C\u002Fspan\u003E\n\u003Cspan class=\&cp\&\u003E#include\u003C\u002Fspan\u003E \u003Cspan class=\&cpf\&\u003E&conio.h&\u003C\u002Fspan\u003E\u003Cspan class=\&cp\&\u003E\u003C\u002Fspan\u003E\n\u003Cspan class=\&cp\&\u003E#include\u003C\u002Fspan\u003E \u003Cspan class=\&cpf\&\u003E&cwindow.h&\u003C\u002Fspan\u003E\u003Cspan class=\&cp\&\u003E\u003C\u002Fspan\u003E\n\n\u003Cspan class=\&c1\&\u003E\u002F\u002F 全局变量\u003C\u002Fspan\u003E\n\u003Cspan class=\&kt\&\u003Eint\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Ehigh\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E,\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ewidth\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E;\u003C\u002Fspan\u003E \u003Cspan class=\&c1\&\u003E\u002F\u002F 游戏画面大小\u003C\u002Fspan\u003E\n\u003Cspan class=\&kt\&\u003Eint\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Ebird_x\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E,\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ebird_y\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E;\u003C\u002Fspan\u003E \u003Cspan class=\&c1\&\u003E\u002F\u002F 小鸟的坐标\u003C\u002Fspan\u003E\n\u003Cspan class=\&kt\&\u003Eint\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Ebar1_y\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E,\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ebar1_xDown\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E,\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ebar1_xTop\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E;\u003C\u002Fspan\u003E \u003Cspan class=\&c1\&\u003E\u002F\u002F 障碍物\u003C\u002Fspan\u003E\n\n\u003Cspan class=\&kt\&\u003Evoid\u003C\u002Fspan\u003E \u003Cspan class=\&nf\&\u003Egotoxy\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&kt\&\u003Eint\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Ex\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E,\u003C\u002Fspan\u003E\u003Cspan class=\&kt\&\u003Eint\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Ey\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E)\u003C\u002Fspan\u003E\u003Cspan class=\&c1\&\u003E\u002F\u002F类似于清屏函数\u003C\u002Fspan\u003E\n\u003Cspan class=\&p\&\u003E{\u003C\u002Fspan\u003E\n
\u003Cspan class=\&n\&\u003EHANDLE\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Ehandle\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003EGetStdHandle\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003ESTD_OUTPUT_HANDLE\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E);\u003C\u002Fspan\u003E\n
\u003Cspan class=\&n\&\u003ECOORD\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Epos\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E;\u003C\u002Fspan\u003E\n
\u003Cspan class=\&n\&\u003Epos\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003EX\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Ex\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E;\u003C\u002Fspan\u003E\n
\u003Cspan class=\&n\&\u003Epos\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003EY\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Ey\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E;\u003C\u002Fspan\u003E\n
\u003Cspan class=\&n\&\u003ESetConsoleCursorPosition\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ehandle\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E,\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Epos\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E);\u003C\u002Fspan\u003E\n\u003Cspan class=\&p\&\u003E}\u003C\u002Fspan\u003E\n\n\u003Cspan class=\&kt\&\u003Evoid\u003C\u002Fspan\u003E \u003Cspan class=\&nf\&\u003Estartup\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E()\u003C\u002Fspan\u003E
\u003Cspan class=\&c1\&\u003E\u002F\u002F 数据初始化\u003C\u002Fspan\u003E\n\u003Cspan class=\&p\&\u003E{\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&n\&\u003Ehigh\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E \u003Cspan class=\&mi\&\u003E15\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E;\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&n\&\u003Ewidth\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E \u003Cspan class=\&mi\&\u003E20\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E;\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&n\&\u003Ebird_x\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E \u003Cspan class=\&mi\&\u003E0\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E;\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&n\&\u003Ebird_y\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Ewidth\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E\u002F\u003C\u002Fspan\u003E\u003Cspan class=\&mi\&\u003E3\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E;\u003C\u002Fspan\u003E\n\u003Cspan class=\&p\&\u003E}\u003C\u002Fspan\u003E\n\n\u003Cspan class=\&kt\&\u003Evoid\u003C\u002Fspan\u003E \u003Cspan class=\&nf\&\u003Eshow\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E()\u003C\u002Fspan\u003E
\u003Cspan class=\&c1\&\u003E\u002F\u002F 显示画面\u003C\u002Fspan\u003E\n\u003Cspan class=\&p\&\u003E{\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&n\&\u003Egotoxy\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&mi\&\u003E0\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E,\u003C\u002Fspan\u003E\u003Cspan class=\&mi\&\u003E0\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E);\u003C\u002Fspan\u003E
\u003Cspan class=\&c1\&\u003E\u002F\u002F 清屏\t\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&kt\&\u003Eint\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Ei\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E,\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ej\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E;\u003C\u002Fspan\u003E\n\t\n\t\u003Cspan class=\&k\&\u003Efor\u003C\u002Fspan\u003E \u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ei\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E\u003Cspan class=\&mi\&\u003E0\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E;\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ei\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E&\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ehigh\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E;\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ei\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E++\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E)\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&p\&\u003E{\u003C\u002Fspan\u003E\n\t\t\u003Cspan class=\&k\&\u003Efor\u003C\u002Fspan\u003E \u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ej\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E\u003Cspan class=\&mi\&\u003E0\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E;\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ej\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E&\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ewidth\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E;\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ej\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E++\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E)\u003C\u002Fspan\u003E\n\t\t\u003Cspan class=\&p\&\u003E{\u003C\u002Fspan\u003E\n\t\t\t\u003Cspan class=\&k\&\u003Eif\u003C\u002Fspan\u003E \u003Cspan class=\&p\&\u003E((\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ei\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E==\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ebird_x\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E)\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E&&\u003C\u002Fspan\u003E \u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ej\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E==\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ebird_y\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E))\u003C\u002Fspan\u003E\n\t\t\t\t\u003Cspan class=\&n\&\u003Eprintf\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&s\&\u003E\&@\&\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E);\u003C\u002Fspan\u003E
\u003Cspan class=\&c1\&\u003E\u002F\u002F
输出小鸟\u003C\u002Fspan\u003E\n\t\t\t\u003Cspan class=\&k\&\u003Eelse\u003C\u002Fspan\u003E\n\t\t\t\t\u003Cspan class=\&n\&\u003Eprintf\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&s\&\u003E\& \&\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E);\u003C\u002Fspan\u003E
\u003Cspan class=\&c1\&\u003E\u002F\u002F
输出空格\u003C\u002Fspan\u003E\n\t\t\u003Cspan class=\&p\&\u003E}\u003C\u002Fspan\u003E\n\t\t\u003Cspan class=\&n\&\u003Eprintf\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&s\&\u003E\&\u003C\u002Fspan\u003E\u003Cspan class=\&se\&\u003E\\n\u003C\u002Fspan\u003E\u003Cspan class=\&s\&\u003E\&\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E);\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&p\&\u003E}\u003C\u002Fspan\u003E\n\u003Cspan class=\&p\&\u003E}\u003C\u002Fspan\u003E\t\n\n\u003Cspan class=\&kt\&\u003Evoid\u003C\u002Fspan\u003E \u003Cspan class=\&nf\&\u003EupdateWithoutInput\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E()\u003C\u002Fspan\u003E
\u003Cspan class=\&c1\&\u003E\u002F\u002F 与用户输入无关的更新\u003C\u002Fspan\u003E\n\u003Cspan class=\&p\&\u003E{\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&n\&\u003Ebird_x\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E++\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E;\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&n\&\u003ESleep\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&mi\&\u003E150\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E);\u003C\u002Fspan\u003E\n\u003Cspan class=\&p\&\u003E}\u003C\u002Fspan\u003E\n\n\u003Cspan class=\&kt\&\u003Evoid\u003C\u002Fspan\u003E \u003Cspan class=\&nf\&\u003EupdateWithInput\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E()\u003C\u002Fspan\u003E
\u003Cspan class=\&c1\&\u003E\u002F\u002F 与用户输入有关的更新\u003C\u002Fspan\u003E\n\u003Cspan class=\&p\&\u003E{\u003C\u002Fspan\u003E\t\n\t\u003Cspan class=\&kt\&\u003Echar\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Einput\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E;\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&k\&\u003Eif\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ekbhit\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E())\u003C\u002Fspan\u003E
\u003Cspan class=\&c1\&\u003E\u002F\u002F 判断是否有输入\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&p\&\u003E{\u003C\u002Fspan\u003E\n\t\t\u003Cspan class=\&n\&\u003Einput\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Egetch\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E();\u003C\u002Fspan\u003E
\u003Cspan class=\&c1\&\u003E\u002F\u002F 根据用户的不同输入来移动,不必输入回车\u003C\u002Fspan\u003E\n\t\t\u003Cspan class=\&k\&\u003Eif\u003C\u002Fspan\u003E \u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Einput\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E==\u003C\u002Fspan\u003E \u003Cspan class=\&sc\&\u003E' '\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E)\u003C\u002Fspan\u003E
\n\t\t\u003Cspan class=\&p\&\u003E{\u003C\u002Fspan\u003E\n\t\t\t\u003Cspan class=\&n\&\u003Ebird_x\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Ebird_x\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E-\u003C\u002Fspan\u003E \u003Cspan class=\&mi\&\u003E2\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E;\u003C\u002Fspan\u003E\n\t\t\u003Cspan class=\&p\&\u003E}\u003C\u002Fspan\u003E\n\t\t\n\t\u003Cspan class=\&p\&\u003E}\u003C\u002Fspan\u003E\n\u003Cspan class=\&p\&\u003E}\u003C\u002Fspan\u003E\n\n\u003Cspan class=\&kt\&\u003Evoid\u003C\u002Fspan\u003E \u003Cspan class=\&nf\&\u003Emain\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E()\u003C\u002Fspan\u003E\n\u003Cspan class=\&p\&\u003E{\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&n\&\u003Estartup\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E();\u003C\u002Fspan\u003E
\u003Cspan class=\&c1\&\u003E\u002F\u002F 数据初始化\t\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&k\&\u003Ewhile\u003C\u002Fspan\u003E \u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&mi\&\u003E1\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E)\u003C\u002Fspan\u003E
\u003Cspan class=\&c1\&\u003E\u002F\u002F
游戏循环执行\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&p\&\u003E{\u003C\u002Fspan\u003E\n\t\t\u003Cspan class=\&n\&\u003Eshow\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E();\u003C\u002Fspan\u003E
\u003Cspan class=\&c1\&\u003E\u002F\u002F 显示画面\u003C\u002Fspan\u003E\n\t\t\u003Cspan class=\&n\&\u003EupdateWithoutInput\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E();\u003C\u002Fspan\u003E
\u003Cspan class=\&c1\&\u003E\u002F\u002F 与用户输入无关的更新\u003C\u002Fspan\u003E\n\t\t\u003Cspan class=\&n\&\u003EupdateWithInput\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E();\u003C\u002Fspan\u003E
\u003Cspan class=\&c1\&\u003E\u002F\u002F 与用户输入有关的更新\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&p\&\u003E}\u003C\u002Fspan\u003E\n\u003Cspan class=\&p\&\u003E}\u003C\u002Fspan\u003E\n\u003C\u002Fcode\u003E\u003C\u002Fpre\u003E\u003C\u002Fdiv\u003E\u003Cbr\u003E\u003Cp\u003E第二步,同时实现下落的小鸟和静止障碍物的显示,注意为了刻画障碍物的位置、中间缝隙的大小,需要多个变量。\u003C\u002Fp\u003E\u003Cfigure\u003E\u003Cnoscript\u003E\u003Cimg src=\&https:\u002F\u002Fpic3.zhimg.com\u002Fv2-fe6bb7d9777eaf91f5547053_b.jpg\& data-rawwidth=\&699\& data-rawheight=\&534\& class=\&origin_image zh-lightbox-thumb\& width=\&699\& data-original=\&https:\u002F\u002Fpic3.zhimg.com\u002Fv2-fe6bb7d9777eaf91f5547053_r.jpg\&\u003E\u003C\u002Fnoscript\u003E\u003Cimg src=\&data:image\u002Fsvg+utf8,&svg%20xmlns='http:\u002F\u002Fwww.w3.org\u002FFsvg'%20width='699'%20height='534'&&\u002Fsvg&\& data-rawwidth=\&699\& data-rawheight=\&534\& class=\&origin_image zh-lightbox-thumb lazy\& width=\&699\& data-original=\&https:\u002F\u002Fpic3.zhimg.com\u002Fv2-fe6bb7d9777eaf91f5547053_r.jpg\& data-actualsrc=\&https:\u002F\u002Fpic3.zhimg.com\u002Fv2-fe6bb7d9777eaf91f5547053_b.jpg\&\u003E\u003C\u002Ffigure\u003E\u003Cdiv class=\&highlight\&\u003E\u003Cpre\u003E\u003Ccode class=\&language-c\&\u003E\u003Cspan\u003E\u003C\u002Fspan\u003E\u003Cspan class=\&cp\&\u003E#include\u003C\u002Fspan\u003E \u003Cspan class=\&cpf\&\u003E&stdio.h&\u003C\u002Fspan\u003E\u003Cspan class=\&cp\&\u003E\u003C\u002Fspan\u003E\n\u003Cspan class=\&cp\&\u003E#include\u003C\u002Fspan\u003E \u003Cspan class=\&cpf\&\u003E&stdlib.h&\u003C\u002Fspan\u003E\u003Cspan class=\&cp\&\u003E\u003C\u002Fspan\u003E\n\u003Cspan class=\&cp\&\u003E#include\u003C\u002Fspan\u003E \u003Cspan class=\&cpf\&\u003E&conio.h&\u003C\u002Fspan\u003E\u003Cspan class=\&cp\&\u003E\u003C\u002Fspan\u003E\n\u003Cspan class=\&cp\&\u003E#include\u003C\u002Fspan\u003E \u003Cspan class=\&cpf\&\u003E&cwindow.h&\u003C\u002Fspan\u003E\u003Cspan class=\&cp\&\u003E\u003C\u002Fspan\u003E\n\n\u003Cspan class=\&c1\&\u003E\u002F\u002F 全局变量\u003C\u002Fspan\u003E\n\u003Cspan class=\&kt\&\u003Eint\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Ehigh\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E,\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ewidth\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E;\u003C\u002Fspan\u003E \u003Cspan class=\&c1\&\u003E\u002F\u002F 游戏画面大小\u003C\u002Fspan\u003E\n\u003Cspan class=\&kt\&\u003Eint\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Ebird_x\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E,\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ebird_y\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E;\u003C\u002Fspan\u003E \u003Cspan class=\&c1\&\u003E\u002F\u002F 小鸟的坐标\u003C\u002Fspan\u003E\n\u003Cspan class=\&kt\&\u003Eint\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Ebar1_y\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E,\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ebar1_xDown\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E,\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ebar1_xTop\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E;\u003C\u002Fspan\u003E \u003Cspan class=\&c1\&\u003E\u002F\u002F 障碍物的相关坐标\u003C\u002Fspan\u003E\n\n\u003Cspan class=\&kt\&\u003Evoid\u003C\u002Fspan\u003E \u003Cspan class=\&nf\&\u003Egotoxy\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&kt\&\u003Eint\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Ex\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E,\u003C\u002Fspan\u003E\u003Cspan class=\&kt\&\u003Eint\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Ey\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E)\u003C\u002Fspan\u003E\u003Cspan class=\&c1\&\u003E\u002F\u002F类似于清屏函数\u003C\u002Fspan\u003E\n\u003Cspan class=\&p\&\u003E{\u003C\u002Fspan\u003E\n
\u003Cspan class=\&n\&\u003EHANDLE\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Ehandle\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003EGetStdHandle\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003ESTD_OUTPUT_HANDLE\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E);\u003C\u002Fspan\u003E\n
\u003Cspan class=\&n\&\u003ECOORD\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Epos\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E;\u003C\u002Fspan\u003E\n
\u003Cspan class=\&n\&\u003Epos\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003EX\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Ex\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E;\u003C\u002Fspan\u003E\n
\u003Cspan class=\&n\&\u003Epos\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003EY\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Ey\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E;\u003C\u002Fspan\u003E\n
\u003Cspan class=\&n\&\u003ESetConsoleCursorPosition\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ehandle\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E,\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Epos\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E);\u003C\u002Fspan\u003E\n\u003Cspan class=\&p\&\u003E}\u003C\u002Fspan\u003E\n\n\u003Cspan class=\&kt\&\u003Evoid\u003C\u002Fspan\u003E \u003Cspan class=\&nf\&\u003Estartup\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E()\u003C\u002Fspan\u003E
\u003Cspan class=\&c1\&\u003E\u002F\u002F 数据初始化\u003C\u002Fspan\u003E\n\u003Cspan class=\&p\&\u003E{\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&n\&\u003Ehigh\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E \u003Cspan class=\&mi\&\u003E15\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E;\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&n\&\u003Ewidth\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E \u003Cspan class=\&mi\&\u003E20\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E;\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&n\&\u003Ebird_x\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E \u003Cspan class=\&mi\&\u003E0\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E;\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&n\&\u003Ebird_y\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Ewidth\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E\u002F\u003C\u002Fspan\u003E\u003Cspan class=\&mi\&\u003E3\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E;\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&n\&\u003Ebar1_y\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Ewidth\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E\u002F\u003C\u002Fspan\u003E\u003Cspan class=\&mi\&\u003E2\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E;\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&n\&\u003Ebar1_xDown\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Ehigh\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E\u002F\u003C\u002Fspan\u003E\u003Cspan class=\&mi\&\u003E3\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E;\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&n\&\u003Ebar1_xTop\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Ehigh\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E\u002F\u003C\u002Fspan\u003E\u003Cspan class=\&mi\&\u003E2\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E;\u003C\u002Fspan\u003E\n\u003Cspan class=\&p\&\u003E}\u003C\u002Fspan\u003E\n\n\u003Cspan class=\&kt\&\u003Evoid\u003C\u002Fspan\u003E \u003Cspan class=\&nf\&\u003Eshow\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E()\u003C\u002Fspan\u003E
\u003Cspan class=\&c1\&\u003E\u002F\u002F 显示画面\u003C\u002Fspan\u003E\n\u003Cspan class=\&p\&\u003E{\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&n\&\u003Egotoxy\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&mi\&\u003E0\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E,\u003C\u002Fspan\u003E\u003Cspan class=\&mi\&\u003E0\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E);\u003C\u002Fspan\u003E
\u003Cspan class=\&c1\&\u003E\u002F\u002F 清屏\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&kt\&\u003Eint\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Ei\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E,\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ej\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E;\u003C\u002Fspan\u003E\n\t\n\t\u003Cspan class=\&k\&\u003Efor\u003C\u002Fspan\u003E \u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ei\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E\u003Cspan class=\&mi\&\u003E0\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E;\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ei\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E&\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ehigh\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E;\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ei\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E++\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E)\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&p\&\u003E{\u003C\u002Fspan\u003E\n\t\t\u003Cspan class=\&k\&\u003Efor\u003C\u002Fspan\u003E \u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ej\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E\u003Cspan class=\&mi\&\u003E0\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E;\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ej\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E&\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ewidth\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E;\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ej\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E++\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E)\u003C\u002Fspan\u003E\n\t\t\u003Cspan class=\&p\&\u003E{\u003C\u002Fspan\u003E\n\t\t\t\u003Cspan class=\&k\&\u003Eif\u003C\u002Fspan\u003E \u003Cspan class=\&p\&\u003E((\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ei\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E==\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ebird_x\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E)\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E&&\u003C\u002Fspan\u003E \u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ej\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E==\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ebird_y\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E))\u003C\u002Fspan\u003E\n\t\t\t\t\u003Cspan class=\&n\&\u003Eprintf\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&s\&\u003E\&@\&\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E);\u003C\u002Fspan\u003E
\u003Cspan class=\&c1\&\u003E\u002F\u002F
输出小鸟\u003C\u002Fspan\u003E\n\t\t\t\u003Cspan class=\&k\&\u003Eelse\u003C\u002Fspan\u003E \u003Cspan class=\&k\&\u003Eif\u003C\u002Fspan\u003E \u003Cspan class=\&p\&\u003E((\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ej\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E==\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ebar1_y\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E)\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E&&\u003C\u002Fspan\u003E \u003Cspan class=\&p\&\u003E((\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ei\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E&\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ebar1_xDown\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E)\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E||\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ei\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E&\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ebar1_xTop\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E))\u003C\u002Fspan\u003E \u003Cspan class=\&p\&\u003E)\u003C\u002Fspan\u003E\n\t\t\t\t\u003Cspan class=\&n\&\u003Eprintf\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&s\&\u003E\&*\&\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E);\u003C\u002Fspan\u003E
\u003Cspan class=\&c1\&\u003E\u002F\u002F
输出墙壁\u003C\u002Fspan\u003E\n\t\t\t\u003Cspan class=\&k\&\u003Eelse\u003C\u002Fspan\u003E\n\t\t\t\t\u003Cspan class=\&n\&\u003Eprintf\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&s\&\u003E\& \&\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E);\u003C\u002Fspan\u003E
\u003Cspan class=\&c1\&\u003E\u002F\u002F
输出空格\u003C\u002Fspan\u003E\n\t\t\u003Cspan class=\&p\&\u003E}\u003C\u002Fspan\u003E\n\t\t\u003Cspan class=\&n\&\u003Eprintf\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&s\&\u003E\&\u003C\u002Fspan\u003E\u003Cspan class=\&se\&\u003E\\n\u003C\u002Fspan\u003E\u003Cspan class=\&s\&\u003E\&\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E);\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&p\&\u003E}\u003C\u002Fspan\u003E\n\n\u003Cspan class=\&p\&\u003E}\u003C\u002Fspan\u003E\t\n\n\u003Cspan class=\&kt\&\u003Evoid\u003C\u002Fspan\u003E \u003Cspan class=\&nf\&\u003EupdateWithoutInput\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E()\u003C\u002Fspan\u003E
\u003Cspan class=\&c1\&\u003E\u002F\u002F 与用户输入无关的更新\u003C\u002Fspan\u003E\n\u003Cspan class=\&p\&\u003E{\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&n\&\u003Ebird_x\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E++\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E;\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&n\&\u003ESleep\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&mi\&\u003E150\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E);\u003C\u002Fspan\u003E\n\u003Cspan class=\&p\&\u003E}\u003C\u002Fspan\u003E\n\n\u003Cspan class=\&kt\&\u003Evoid\u003C\u002Fspan\u003E \u003Cspan class=\&nf\&\u003EupdateWithInput\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E()\u003C\u002Fspan\u003E
\u003Cspan class=\&c1\&\u003E\u002F\u002F 与用户输入有关的更新\u003C\u002Fspan\u003E\n\u003Cspan class=\&p\&\u003E{\u003C\u002Fspan\u003E\t\n\t\u003Cspan class=\&kt\&\u003Echar\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Einput\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E;\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&k\&\u003Eif\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ekbhit\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E())\u003C\u002Fspan\u003E
\u003Cspan class=\&c1\&\u003E\u002F\u002F 判断是否有输入\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&p\&\u003E{\u003C\u002Fspan\u003E\n\t\t\u003Cspan class=\&n\&\u003Einput\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Egetch\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E();\u003C\u002Fspan\u003E
\u003Cspan class=\&c1\&\u003E\u002F\u002F 根据用户的不同输入来移动,不必输入回车\u003C\u002Fspan\u003E\n\t\t\u003Cspan class=\&k\&\u003Eif\u003C\u002Fspan\u003E \u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Einput\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E==\u003C\u002Fspan\u003E \u003Cspan class=\&sc\&\u003E' '\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E)\u003C\u002Fspan\u003E
\n\t\t\u003Cspan class=\&p\&\u003E{\u003C\u002Fspan\u003E\n\t\t\t\u003Cspan class=\&n\&\u003Ebird_x\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Ebird_x\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E-\u003C\u002Fspan\u003E \u003Cspan class=\&mi\&\u003E2\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E;\u003C\u002Fspan\u003E\n\t\t\u003Cspan class=\&p\&\u003E}\u003C\u002Fspan\u003E\n\n\t\u003Cspan class=\&p\&\u003E}\u003C\u002Fspan\u003E\n\u003Cspan class=\&p\&\u003E}\u003C\u002Fspan\u003E\n\n\u003Cspan class=\&kt\&\u003Evoid\u003C\u002Fspan\u003E \u003Cspan class=\&nf\&\u003Emain\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E()\u003C\u002Fspan\u003E\n\u003Cspan class=\&p\&\u003E{\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&n\&\u003Estartup\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E();\u003C\u002Fspan\u003E
\u003Cspan class=\&c1\&\u003E\u002F\u002F 数据初始化\t\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&k\&\u003Ewhile\u003C\u002Fspan\u003E \u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&mi\&\u003E1\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E)\u003C\u002Fspan\u003E
\u003Cspan class=\&c1\&\u003E\u002F\u002F
游戏循环执行\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&p\&\u003E{\u003C\u002Fspan\u003E\n\t\t\u003Cspan class=\&n\&\u003Eshow\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E();\u003C\u002Fspan\u003E
\u003Cspan class=\&c1\&\u003E\u002F\u002F 显示画面\u003C\u002Fspan\u003E\n\t\t\u003Cspan class=\&n\&\u003EupdateWithoutInput\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E();\u003C\u002Fspan\u003E
\u003Cspan class=\&c1\&\u003E\u002F\u002F 与用户输入无关的更新\u003C\u002Fspan\u003E\n\t\t\u003Cspan class=\&n\&\u003EupdateWithInput\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E();\u003C\u002Fspan\u003E
\u003Cspan class=\&c1\&\u003E\u002F\u002F 与用户输入有关的更新\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&p\&\u003E}\u003C\u002Fspan\u003E\n\u003Cspan class=\&p\&\u003E}\u003C\u002Fspan\u003E\n\u003C\u002Fcode\u003E\u003C\u002Fpre\u003E\u003C\u002Fdiv\u003E\u003Cbr\u003E\u003Cp\u003E第三步,让上面的一列障碍物从右向左移动起来,类似飞机子弹移动的思路。\u003C\u002Fp\u003E\u003Cdiv class=\&highlight\&\u003E\u003Cpre\u003E\u003Ccode class=\&language-c\&\u003E\u003Cspan\u003E\u003C\u002Fspan\u003E\u003Cspan class=\&cp\&\u003E#include\u003C\u002Fspan\u003E \u003Cspan class=\&cpf\&\u003E&stdio.h&\u003C\u002Fspan\u003E\u003Cspan class=\&cp\&\u003E\u003C\u002Fspan\u003E\n\u003Cspan class=\&cp\&\u003E#include\u003C\u002Fspan\u003E \u003Cspan class=\&cpf\&\u003E&stdlib.h&\u003C\u002Fspan\u003E\u003Cspan class=\&cp\&\u003E\u003C\u002Fspan\u003E\n\u003Cspan class=\&cp\&\u003E#include\u003C\u002Fspan\u003E \u003Cspan class=\&cpf\&\u003E&conio.h&\u003C\u002Fspan\u003E\u003Cspan class=\&cp\&\u003E\u003C\u002Fspan\u003E\n\u003Cspan class=\&cp\&\u003E#include\u003C\u002Fspan\u003E \u003Cspan class=\&cpf\&\u003E&cwindow.h&\u003C\u002Fspan\u003E\u003Cspan class=\&cp\&\u003E\u003C\u002Fspan\u003E\n\n\u003Cspan class=\&c1\&\u003E\u002F\u002F 全局变量\u003C\u002Fspan\u003E\n\u003Cspan class=\&kt\&\u003Eint\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Ehigh\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E,\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ewidth\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E;\u003C\u002Fspan\u003E \u003Cspan class=\&c1\&\u003E\u002F\u002F 游戏画面大小\u003C\u002Fspan\u003E\n\u003Cspan class=\&kt\&\u003Eint\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Ebird_x\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E,\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ebird_y\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E;\u003C\u002Fspan\u003E \u003Cspan class=\&c1\&\u003E\u002F\u002F 小鸟的坐标\u003C\u002Fspan\u003E\n\u003Cspan class=\&kt\&\u003Eint\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Ebar1_y\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E,\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ebar1_xDown\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E,\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ebar1_xTop\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E;\u003C\u002Fspan\u003E \u003Cspan class=\&c1\&\u003E\u002F\u002F 障碍物的相关坐标\u003C\u002Fspan\u003E\n\n\u003Cspan class=\&kt\&\u003Evoid\u003C\u002Fspan\u003E \u003Cspan class=\&nf\&\u003Egotoxy\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&kt\&\u003Eint\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Ex\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E,\u003C\u002Fspan\u003E\u003Cspan class=\&kt\&\u003Eint\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Ey\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E)\u003C\u002Fspan\u003E\u003Cspan class=\&c1\&\u003E\u002F\u002F类似于清屏函数\u003C\u002Fspan\u003E\n\u003Cspan class=\&p\&\u003E{\u003C\u002Fspan\u003E\n
\u003Cspan class=\&n\&\u003EHANDLE\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Ehandle\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003EGetStdHandle\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003ESTD_OUTPUT_HANDLE\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E);\u003C\u002Fspan\u003E\n
\u003Cspan class=\&n\&\u003ECOORD\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Epos\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E;\u003C\u002Fspan\u003E\n
\u003Cspan class=\&n\&\u003Epos\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003EX\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Ex\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E;\u003C\u002Fspan\u003E\n
\u003Cspan class=\&n\&\u003Epos\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003EY\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Ey\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E;\u003C\u002Fspan\u003E\n
\u003Cspan class=\&n\&\u003ESetConsoleCursorPosition\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ehandle\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E,\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Epos\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E);\u003C\u002Fspan\u003E\n\u003Cspan class=\&p\&\u003E}\u003C\u002Fspan\u003E\n\n\u003Cspan class=\&kt\&\u003Evoid\u003C\u002Fspan\u003E \u003Cspan class=\&nf\&\u003Estartup\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E()\u003C\u002Fspan\u003E
\u003Cspan class=\&c1\&\u003E\u002F\u002F 数据初始化\u003C\u002Fspan\u003E\n\u003Cspan class=\&p\&\u003E{\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&n\&\u003Ehigh\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E \u003Cspan class=\&mi\&\u003E20\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E;\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&n\&\u003Ewidth\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E \u003Cspan class=\&mi\&\u003E50\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E;\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&n\&\u003Ebird_x\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Ehigh\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E\u002F\u003C\u002Fspan\u003E\u003Cspan class=\&mi\&\u003E2\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E;\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&n\&\u003Ebird_y\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E \u003Cspan class=\&mi\&\u003E1\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E;\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&n\&\u003Ebar1_y\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Ewidth\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E\u002F\u003C\u002Fspan\u003E\u003Cspan class=\&mi\&\u003E2\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E;\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&n\&\u003Ebar1_xDown\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Ehigh\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E\u002F\u003C\u002Fspan\u003E\u003Cspan class=\&mi\&\u003E3\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E;\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&n\&\u003Ebar1_xTop\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Ehigh\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E\u002F\u003C\u002Fspan\u003E\u003Cspan class=\&mi\&\u003E2\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E;\u003C\u002Fspan\u003E\n\u003Cspan class=\&p\&\u003E}\u003C\u002Fspan\u003E\n\n\u003Cspan class=\&kt\&\u003Evoid\u003C\u002Fspan\u003E \u003Cspan class=\&nf\&\u003Eshow\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E()\u003C\u002Fspan\u003E
\u003Cspan class=\&c1\&\u003E\u002F\u002F 显示画面\u003C\u002Fspan\u003E\n\u003Cspan class=\&p\&\u003E{\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&n\&\u003Egotoxy\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&mi\&\u003E0\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E,\u003C\u002Fspan\u003E\u003Cspan class=\&mi\&\u003E0\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E);\u003C\u002Fspan\u003E
\u003Cspan class=\&c1\&\u003E\u002F\u002F 清屏\t\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&kt\&\u003Eint\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Ei\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E,\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ej\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E;\u003C\u002Fspan\u003E\n\t\n\t\u003Cspan class=\&k\&\u003Efor\u003C\u002Fspan\u003E \u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ei\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E\u003Cspan class=\&mi\&\u003E0\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E;\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ei\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E&\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ehigh\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E;\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ei\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E++\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E)\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&p\&\u003E{\u003C\u002Fspan\u003E\n\t\t\u003Cspan class=\&k\&\u003Efor\u003C\u002Fspan\u003E \u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ej\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E\u003Cspan class=\&mi\&\u003E0\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E;\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ej\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E&\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ewidth\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E;\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ej\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E++\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E)\u003C\u002Fspan\u003E\n\t\t\u003Cspan class=\&p\&\u003E{\u003C\u002Fspan\u003E\n\t\t\t\u003Cspan class=\&k\&\u003Eif\u003C\u002Fspan\u003E \u003Cspan class=\&p\&\u003E((\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ei\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E==\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ebird_x\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E)\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E&&\u003C\u002Fspan\u003E \u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ej\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E==\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ebird_y\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E))\u003C\u002Fspan\u003E\n\t\t\t\t\u003Cspan class=\&n\&\u003Eprintf\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&s\&\u003E\&@\&\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E);\u003C\u002Fspan\u003E
\u003Cspan class=\&c1\&\u003E\u002F\u002F
输出小鸟\u003C\u002Fspan\u003E\n\t\t\t\u003Cspan class=\&k\&\u003Eelse\u003C\u002Fspan\u003E \u003Cspan class=\&k\&\u003Eif\u003C\u002Fspan\u003E \u003Cspan class=\&p\&\u003E((\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ej\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E==\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ebar1_y\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E)\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E&&\u003C\u002Fspan\u003E \u003Cspan class=\&p\&\u003E((\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ei\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E&\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ebar1_xDown\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E)\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E||\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ei\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E&\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ebar1_xTop\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E))\u003C\u002Fspan\u003E \u003Cspan class=\&p\&\u003E)\u003C\u002Fspan\u003E\n\t\t\t\t\u003Cspan class=\&n\&\u003Eprintf\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&s\&\u003E\&*\&\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E);\u003C\u002Fspan\u003E
\u003Cspan class=\&c1\&\u003E\u002F\u002F
输出墙壁\u003C\u002Fspan\u003E\n\t\t\t\u003Cspan class=\&k\&\u003Eelse\u003C\u002Fspan\u003E\n\t\t\t\t\u003Cspan class=\&n\&\u003Eprintf\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&s\&\u003E\& \&\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E);\u003C\u002Fspan\u003E
\u003Cspan class=\&c1\&\u003E\u002F\u002F
输出空格\u003C\u002Fspan\u003E\n\t\t\u003Cspan class=\&p\&\u003E}\u003C\u002Fspan\u003E\n\t\t\u003Cspan class=\&n\&\u003Eprintf\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&s\&\u003E\&\u003C\u002Fspan\u003E\u003Cspan class=\&se\&\u003E\\n\u003C\u002Fspan\u003E\u003Cspan class=\&s\&\u003E\&\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E);\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&p\&\u003E}\u003C\u002Fspan\u003E\n\n\u003Cspan class=\&p\&\u003E}\u003C\u002Fspan\u003E\t\n\n\u003Cspan class=\&kt\&\u003Evoid\u003C\u002Fspan\u003E \u003Cspan class=\&nf\&\u003EupdateWithoutInput\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E()\u003C\u002Fspan\u003E
\u003Cspan class=\&c1\&\u003E\u002F\u002F 与用户输入无关的更新\u003C\u002Fspan\u003E\n\u003Cspan class=\&p\&\u003E{\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&n\&\u003Ebird_x\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E++\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E;\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&n\&\u003Ebar1_y\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E--\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E;\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&n\&\u003ESleep\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&mi\&\u003E150\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E);\u003C\u002Fspan\u003E\n\u003Cspan class=\&p\&\u003E}\u003C\u002Fspan\u003E\n\n\u003Cspan class=\&kt\&\u003Evoid\u003C\u002Fspan\u003E \u003Cspan class=\&nf\&\u003EupdateWithInput\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E()\u003C\u002Fspan\u003E
\u003Cspan class=\&c1\&\u003E\u002F\u002F 与用户输入有关的更新\u003C\u002Fspan\u003E\n\u003Cspan class=\&p\&\u003E{\u003C\u002Fspan\u003E\t\n\t\u003Cspan class=\&kt\&\u003Echar\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Einput\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E;\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&k\&\u003Eif\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ekbhit\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E())\u003C\u002Fspan\u003E
\u003Cspan class=\&c1\&\u003E\u002F\u002F 判断是否有输入\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&p\&\u003E{\u003C\u002Fspan\u003E\n\t\t\u003Cspan class=\&n\&\u003Einput\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Egetch\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E();\u003C\u002Fspan\u003E
\u003Cspan class=\&c1\&\u003E\u002F\u002F 根据用户的不同输入来移动,不必输入回车\u003C\u002Fspan\u003E\n\t\t\u003Cspan class=\&k\&\u003Eif\u003C\u002Fspan\u003E \u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Einput\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E==\u003C\u002Fspan\u003E \u003Cspan class=\&sc\&\u003E' '\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E)\u003C\u002Fspan\u003E
\n\t\t\u003Cspan class=\&p\&\u003E{\u003C\u002Fspan\u003E\n\t\t\t\u003Cspan class=\&n\&\u003Ebird_x\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Ebird_x\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E-\u003C\u002Fspan\u003E \u003Cspan class=\&mi\&\u003E2\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E;\u003C\u002Fspan\u003E\n\t\t\u003Cspan class=\&p\&\u003E}\u003C\u002Fspan\u003E\n\n\t\u003Cspan class=\&p\&\u003E}\u003C\u002Fspan\u003E\n\u003Cspan class=\&p\&\u003E}\u003C\u002Fspan\u003E\n\n\u003Cspan class=\&kt\&\u003Evoid\u003C\u002Fspan\u003E \u003Cspan class=\&nf\&\u003Emain\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E()\u003C\u002Fspan\u003E\n\u003Cspan class=\&p\&\u003E{\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&n\&\u003Estartup\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E();\u003C\u002Fspan\u003E
\u003Cspan class=\&c1\&\u003E\u002F\u002F 数据初始化\t\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&k\&\u003Ewhile\u003C\u002Fspan\u003E \u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&mi\&\u003E1\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E)\u003C\u002Fspan\u003E
\u003Cspan class=\&c1\&\u003E\u002F\u002F
游戏循环执行\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&p\&\u003E{\u003C\u002Fspan\u003E\n\t\t\u003Cspan class=\&n\&\u003Eshow\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E();\u003C\u002Fspan\u003E
\u003Cspan class=\&c1\&\u003E\u002F\u002F 显示画面\u003C\u002Fspan\u003E\n\t\t\u003Cspan class=\&n\&\u003EupdateWithoutInput\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E();\u003C\u002Fspan\u003E
\u003Cspan class=\&c1\&\u003E\u002F\u002F 与用户输入无关的更新\u003C\u002Fspan\u003E\n\t\t\u003Cspan class=\&n\&\u003EupdateWithInput\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E();\u003C\u002Fspan\u003E
\u003Cspan class=\&c1\&\u003E\u002F\u002F 与用户输入有关的更新\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&p\&\u003E}\u003C\u002Fspan\u003E\n\u003Cspan class=\&p\&\u003E}\u003C\u002Fspan\u003E\n\u003C\u002Fcode\u003E\u003C\u002Fpre\u003E\u003C\u002Fdiv\u003E\u003Cbr\u003E\u003Cp\u003E第四步,判断小鸟是从障碍物的缝隙中通过,还是发生碰撞,并加入一个记分变量。基本和飞机游戏中判断击中敌机的思路差不多。\u003C\u002Fp\u003E\u003Cfigure\u003E\u003Cnoscript\u003E\u003Cimg src=\&https:\u002F\u002Fpic4.zhimg.com\u002Fv2-7eea5c11a6ae9a3415768_b.jpg\& data-rawwidth=\&673\& data-rawheight=\&742\& class=\&origin_image zh-lightbox-thumb\& width=\&673\& data-original=\&https:\u002F\u002Fpic4.zhimg.com\u002Fv2-7eea5c11a6ae9a3415768_r.jpg\&\u003E\u003C\u002Fnoscript\u003E\u003Cimg src=\&data:image\u002Fsvg+utf8,&svg%20xmlns='http:\u002F\u002Fwww.w3.org\u002FFsvg'%20width='673'%20height='742'&&\u002Fsvg&\& data-rawwidth=\&673\& data-rawheight=\&742\& class=\&origin_image zh-lightbox-thumb lazy\& width=\&673\& data-original=\&https:\u002F\u002Fpic4.zhimg.com\u002Fv2-7eea5c11a6ae9a3415768_r.jpg\& data-actualsrc=\&https:\u002F\u002Fpic4.zhimg.com\u002Fv2-7eea5c11a6ae9a3415768_b.jpg\&\u003E\u003C\u002Ffigure\u003E\u003Cbr\u003E\u003Cdiv class=\&highlight\&\u003E\u003Cpre\u003E\u003Ccode class=\&language-c\&\u003E\u003Cspan\u003E\u003C\u002Fspan\u003E\u003Cspan class=\&cp\&\u003E#include\u003C\u002Fspan\u003E \u003Cspan class=\&cpf\&\u003E&stdio.h&\u003C\u002Fspan\u003E\u003Cspan class=\&cp\&\u003E\u003C\u002Fspan\u003E\n\u003Cspan class=\&cp\&\u003E#include\u003C\u002Fspan\u003E \u003Cspan class=\&cpf\&\u003E&stdlib.h&\u003C\u002Fspan\u003E\u003Cspan class=\&cp\&\u003E\u003C\u002Fspan\u003E\n\u003Cspan class=\&cp\&\u003E#include\u003C\u002Fspan\u003E \u003Cspan class=\&cpf\&\u003E&conio.h&\u003C\u002Fspan\u003E\u003Cspan class=\&cp\&\u003E\u003C\u002Fspan\u003E\n\u003Cspan class=\&cp\&\u003E#include\u003C\u002Fspan\u003E \u003Cspan class=\&cpf\&\u003E&cwindow.h&\u003C\u002Fspan\u003E\u003Cspan class=\&cp\&\u003E\u003C\u002Fspan\u003E\n\n\u003Cspan class=\&c1\&\u003E\u002F\u002F 全局变量\u003C\u002Fspan\u003E\n\u003Cspan class=\&kt\&\u003Eint\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Ehigh\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E,\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ewidth\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E;\u003C\u002Fspan\u003E \u003Cspan class=\&c1\&\u003E\u002F\u002F 游戏画面大小\u003C\u002Fspan\u003E\n\u003Cspan class=\&kt\&\u003Eint\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Ebird_x\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E,\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ebird_y\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E;\u003C\u002Fspan\u003E \u003Cspan class=\&c1\&\u003E\u002F\u002F 小鸟的坐标\u003C\u002Fspan\u003E\n\u003Cspan class=\&kt\&\u003Eint\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Ebar1_y\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E,\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ebar1_xDown\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E,\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ebar1_xTop\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E;\u003C\u002Fspan\u003E \u003Cspan class=\&c1\&\u003E\u002F\u002F 障碍物的相关坐标\u003C\u002Fspan\u003E\n\u003Cspan class=\&kt\&\u003Eint\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Escore\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E;\u003C\u002Fspan\u003E \u003Cspan class=\&c1\&\u003E\u002F\u002F 得分,经过障碍物的个数\u003C\u002Fspan\u003E\n\n\u003Cspan class=\&kt\&\u003Evoid\u003C\u002Fspan\u003E \u003Cspan class=\&nf\&\u003Egotoxy\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&kt\&\u003Eint\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Ex\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E,\u003C\u002Fspan\u003E\u003Cspan class=\&kt\&\u003Eint\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Ey\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E)\u003C\u002Fspan\u003E\u003Cspan class=\&c1\&\u003E\u002F\u002F类似于清屏函数\u003C\u002Fspan\u003E\n\u003Cspan class=\&p\&\u003E{\u003C\u002Fspan\u003E\n
\u003Cspan class=\&n\&\u003EHANDLE\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Ehandle\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003EGetStdHandle\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003ESTD_OUTPUT_HANDLE\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E);\u003C\u002Fspan\u003E\n
\u003Cspan class=\&n\&\u003ECOORD\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Epos\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E;\u003C\u002Fspan\u003E\n
\u003Cspan class=\&n\&\u003Epos\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003EX\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Ex\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E;\u003C\u002Fspan\u003E\n
\u003Cspan class=\&n\&\u003Epos\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E.\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003EY\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Ey\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E;\u003C\u002Fspan\u003E\n
\u003Cspan class=\&n\&\u003ESetConsoleCursorPosition\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E(\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Ehandle\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E,\u003C\u002Fspan\u003E\u003Cspan class=\&n\&\u003Epos\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E);\u003C\u002Fspan\u003E\n\u003Cspan class=\&p\&\u003E}\u003C\u002Fspan\u003E\n\n\u003Cspan class=\&kt\&\u003Evoid\u003C\u002Fspan\u003E \u003Cspan class=\&nf\&\u003Estartup\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E()\u003C\u002Fspan\u003E
\u003Cspan class=\&c1\&\u003E\u002F\u002F 数据初始化\u003C\u002Fspan\u003E\n\u003Cspan class=\&p\&\u003E{\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&n\&\u003Ehigh\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E \u003Cspan class=\&mi\&\u003E20\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E;\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&n\&\u003Ewidth\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E \u003Cspan class=\&mi\&\u003E50\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E;\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&n\&\u003Ebird_x\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E \u003Cspan class=\&n\&\u003Ehigh\u003C\u002Fspan\u003E\u003Cspan class=\&o\&\u003E\u002F\u003C\u002Fspan\u003E\u003Cspan class=\&mi\&\u003E2\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E;\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&n\&\u003Ebird_y\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E=\u003C\u002Fspan\u003E \u003Cspan class=\&mi\&\u003E3\u003C\u002Fspan\u003E\u003Cspan class=\&p\&\u003E;\u003C\u002Fspan\u003E\n\t\u003Cspan class=\&n\&\u003Ebar1_y\u003C\u002Fspan\u003E \u003Cspan class=\&o\&\u003E=\u003C\u002Fspa}

我要回帖

更多关于 c语言游戏开发 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信