游戏编程代码大全(制作游戏代码)
本文目录
- 制作游戏代码
- 求C语言小游戏源程序
- c++游戏编程,写一个游戏编程,简单点
- 用C语言编写的小游戏代码是什么
- 小游戏的C++代码
- 小游戏vb编程
- 简单好玩的编程代码有哪些
- 用C语言编写的小游戏代码是什么
- 简单的程序代码游戏
- c语言游戏编程,下落的小鸟 求代码
制作游戏代码
Dim game(3,2),i,j,result,num ’定义二维数组 二维长度3, 一维长度2Dim fso ,ws,f ,logFileWrite,logFileRead, fileStr,flag,flagFailNum, flagIndex ’ 定义日志文件 set ws = CreateObject("wscript.shell") Set fso = CreateObject("scripting.filesystemobject") If fso.fileexists("C:\Users\18190\Desktop\vbs\测试\game_log.txt") Then Else Set f = fso.createtextfile("C:\Users\18190\Desktop\vbs\测试\game_log.txt",true) ’If fso.fileexists("C:\Users\18190\Desktop\vbs\测试\game_log.txt") Then ’ Set logFileWrite = fso.OpenTextFile("C:\Users\18190\Desktop\vbs\测试\game_log.txt",8,true) ’ logFileWrite.writeLine "数字猜猜猜小游戏-游戏日志" ’ end if End If For i=0 To 2 ’ 关卡赋值 For j=4 To 5 game(i,j-4)= i*3+j Next Next ’For i=0 To 2 ’ For j=0 To 1 ’MsgBox "game("&i&","&j&"): "& game(i,j) ’Next ’Next’ 选择操作Dim cnum, failNum, sucFlag,t failNum =0 sucFlag =0 Do While 1=1 If sucFlag=1 Then Exit Do End if If failNum =3 Then MsgBox "您有连续三次操作失误,系统将直接退出..." Exit do end if cnum = InputBox( "欢迎来到 数字猜猜猜小游戏 请选择操作:"&chr(10)&" 1.注册 2.登录 3.退出","数字猜猜猜小游戏") If cnum ="" Then cnum = "-1" End if Select Case cnum Case 1 ’ 账户注册Dim juname, upwd,regStr regStr = "" do while regStr = "" uname = InputBox("请输入注册账号: ","数字猜猜猜小游戏-注册") upwd = InputBox("请输入注册密码: ","数字猜猜猜小游戏-注册") If uname 《》 "" Then If upwd 《》 "" Then regStr = uname&"#"&upwd Else regStr ="" MsgBox "您输入的注册账号密码有误,请重新输入" End If Else regStr ="" MsgBox "您输入的注册账号密码有误,请重新输入" End If If regStr 《》"" Then If fso.fileexists("C:\Users\18190\Desktop\vbs\测试\game_user.txt") Then Set logFileWrite = fso.OpenTextFile("C:\Users\18190\Desktop\vbs\测试\game_user.txt",8,true) t= Year(now)&"-"&month(now)&"-"&day(now)&" "& Hour(now)&":"&minute(now)&":"&second(now) ’logFileWrite.WriteBlankLines 1 logFileWrite.writeLine regStr &" "&t logFileWrite.close MsgBox "注册成功!" exit do else Set f = fso.createtextfile("C:\Users\18190\Desktop\vbs\测试\game_user.txt",true) If fso.fileexists("C:\Users\18190\Desktop\vbs\测试\game_user.txt") Then Set logFileWrite = fso.OpenTextFile("C:\Users\18190\Desktop\vbs\测试\game_user.txt",8,true) logFileWrite.writeLine "数字猜猜猜小游戏-用户数据" logFileWrite.writeLine regStr logFileWrite.close MsgBox "注册成功!" exit do end if End If end if loop ’wscript.sleep 1000 case 2
求C语言小游戏源程序
我的楼主可以自己玩一下 试试吧 #define N 200 #include 《graphics.h》 #include 《stdlib.h》 #include 《dos.h》 #define LEFT 0x4b00 #define RIGHT 0x4d00 #define DOWN 0x5000 #define UP 0x4800 #define ESC 0x011b int i,key; int score=0;/*得分*/ int gamespeed=50000;/*游戏速度自己调整*/ struct Food { int x;/*食物的横坐标*/ int y;/*食物的纵坐标*/ int yes;/*判断是否要出现食物的变量*/ }food;/*食物的结构体*/ struct Snake { int x; int y; int node;/*蛇的节数*/ int direction;/*蛇移动方向*/ int life;/* 蛇的生命,0活着,1死亡*/ }snake; void Init(void);/*图形驱动*/ void Close(void);/*图形结束*/ void DrawK(void);/*开始画面*/ void GameOver(void);/*结束游戏*/ void GamePlay(void);/*玩游戏具体过程*/ void PrScore(void);/*输出成绩*/ /*主函数*/ void main(void) { Init();/*图形驱动*/ DrawK();/*开始画面*/ GamePlay();/*玩游戏具体过程*/ Close();/*图形结束*/ } /*图形驱动*/ void Init(void) { int gd=DETECT,gm; initgraph(&gd,&gm,"c:\\tc"); cleardevice(); } /*开始画面,左上角坐标为(50,40),右下角坐标为(610,460)的围墙*/ void DrawK(void) { /*setbkcolor(LIGHTGREEN);*/ setcolor(11); setlinestyle(SOLID_LINE,0,THICK_WIDTH);/*设置线型*/ for(i=50;i《=600;i+=10)/*画围墙*/ { rectangle(i,40,i+10,49); /*上边*/ rectangle(i,451,i+10,460);/*下边*/ } for(i=40;i《=450;i+=10) { rectangle(50,i,59,i+10); /*左边*/ rectangle(601,i,610,i+10);/*右边*/ } } /*玩游戏具体过程*/ void GamePlay(void) { randomize();/*随机数发生器*/ food.yes=1;/*1表示需要出现新食物,0表示已经存在食物*/ snake.life=0;/*活着*/ snake.direction=1;/*方向往右*/ snake.x=100;/*蛇头*/ snake.x=100; snake.node=2;/*节数*/ PrScore();/*输出得分*/ while(1)/*可以重复玩游戏,压ESC键结束*/ { while(!kbhit())/*在没有按键的情况下,蛇自己移动身体*/ { if(food.yes==1)/*需要出现新食物*/ { food.x=rand()%400+60; food.y=rand()%350+60; while(food.x%10!=0)/*食物随机出现后必须让食物能够在整格内,这样才可以让蛇吃到*/ food.x++; while(food.y%10!=0) food.y++; food.yes=0;/*画面上有食物了*/ } if(food.yes==0)/*画面上有食物了就要显示*/ { setcolor(GREEN); rectangle(food.x,food.y,food.x+10,food.y-10); } for(i=snake.node-1;i》0;i--)/*蛇的每个环节往前移动,也就是贪吃蛇的关键算法*/ { snake.x; snake.y; } /*1,2,3,4表示右,左,上,下四个方向,通过这个判断来移动蛇头*/ switch(snake.direction) { case 1:snake.x+=10;break; case 2: snake.x-=10;break; case 3: snake.y-=10;break; case 4: snake.y+=10;break; } for(i=3;i《snake.node;i++)/*从蛇的第四节开始判断是否撞到自己了,因为蛇头为两节,第三节不可能拐过来*/ { if(snake.x) { GameOver();/*显示失败*/ snake.life=1; break; } } if(snake.x《55|| snake.y》455)/*蛇是否撞到墙壁*/ { GameOver();/*本次游戏结束*/ snake.life=1; /*蛇死*/ } if(snake.life==1)/*以上两种判断以后,如果蛇死就跳出内循环,重新开始*/ break; if(snake.x==food.y)/*吃到食物以后*/ { setcolor(0);/*把画面上的食物东西去掉*/ rectangle(food.x,food.y,food.x+10,food.y-10); snake.x=-20; /*新的一节先放在看不见的位置,下次循环就取前一节的位置*/ snake.node++;/*蛇的身体长一节*/ food.yes=1;/*画面上需要出现新的食物*/ score+=10; PrScore();/*输出新得分*/ } setcolor(4);/*画出蛇*/ for(i=0;i《snake.node;i++) rectangle(snake.x+10, snake.y-10); delay(gamespeed); setcolor(0);/*用黑色去除蛇的的最后一节*/ rectangle(snake.x, snake.x-10); } /*endwhile(!kbhit)*/ if(snake.life==1)/*如果蛇死就跳出循环*/ break; key=bioskey(0);/*接收按键*/ if(key==ESC)/*按ESC键退出*/ break; else if(key==UP&&snake.direction!=4) /*判断是否往相反的方向移动*/ snake.direction=3; else if(key==RIGHT&&snake.direction!=2) snake.direction=1; else if(key==LEFT&&snake.direction!=1) snake.direction=2; else if(key==DOWN&&snake.direction!=3) snake.direction=4; }/*endwhile(1)*/ } /*游戏结束*/ void GameOver(void) { cleardevice(); PrScore(); setcolor(RED); settextstyle(0,0,4); outtextxy(200,200,"GAME OVER"); getch(); } /*输出成绩*/ void PrScore(void) { char str; setfillstyle(SOLID_FILL,YELLOW); bar(50,15,220,35); setcolor(6); settextstyle(0,0,2); sprintf(str,"score:%d",score); outtextxy(55,20,str); } /*图形结束*/ void Close(void) { getch(); closegraph(); }
c++游戏编程,写一个游戏编程,简单点
#include《iostream》#include《iomanip》using namespace std;const int X = 21; //棋盘行数const int Y = 21; //棋盘列数char p; //定义棋盘int m=0;//定义临时点,保存输入坐标int n=0;void display() //输出棋盘{for(int i=0; i《X; i++)cout《《setw(3)《《setfill(’ ’)《《i;cout《《endl;for(int i=1; i《Y; i++){cout《《setw(3)《《setfill(’ ’)《《i;for(int j=1;j《X;j++)cout《《setw(3)《《setfill(’ ’)《《p;cout《《endl;}}void black() //黑方落子{cout《《"请黑方输入落子位置:\n"《《"请输入落子的行数:";cin》》m;cout《《"请输入落子的列数:";cin》》n;if(m《=0||m》=X||n》=Y||n《=0){cout《《"超出棋盘范围,请重新输入正确坐标!\n";black();}else if((p==2){cout《《"该点已有棋子,请重新选取落子点!\n";black();}elsep=1; //黑方用1来表示system("cls");display();}void red() //红方落子{cout《《"请红方输入落子位置:\n"《《"请输入落子的行数:";cin》》m;cout《《"请输入落子的列数:";cin》》n;if(m》=X||m《=0||n《=0||n》=Y){cout《《"超出棋盘范围,请重新输入正确坐标!\n";red();}else if((p==2){cout《《"该点已有棋子,请重新选取落子点!\n";red();}elsep=2; //红方用2来表示system("cls");display();}int evalue() //只需要判断落子点为中心的九点“米”字是否连续即可{int k = 0,r = 0;/*斜线判断*/for(k=3;k《X-2;k++) //两条,其中的p!=’-’是排除空子的情况{for(r=3;r《Y-2;r++){if(p)return 1;else if(p)return 1;}}/*横线判断*/for(k=1;k《X;k++) //p!=’-’是排除空子的情况for(r=3;r《Y-2;r++)if(p)return 1;/*竖线判断*/for(k=3;k《X-2;k++) //p!=’-’是排除空子的情况for(r=1;r《Y;r++)if(p)return 1; return 0;}int main(){memset(p,’-’,441); //初始化为‘-’cout《《"欢迎使用简易双人对战五子棋游戏\n"《《"五子棋棋谱如下:\n";display();while(1){red();if(evalue()){cout《《"红方赢!\n";break;}black();if(evalue()){cout《《"黑方赢!\n";break;}}return 0;}
人人对战五子棋
用C语言编写的小游戏代码是什么
“猜数字小游戏”,每个数字后按空格,最后按回车确认
#include《stdio.h》
#include《stdlib.h》
#include《time.h》
int a;
int count=0; //计算猜测次数
void csh( ); //初始化
void start( ); //开始游戏
int main( )
{ csh( );
start( );
}
void csh( ) //初始化
{ printf("\n\n 猜 数 字 小 游 戏\n\n");
printf(“ 猜四个数字,如数字与顺序都正确记为A,数字正确位置不对记为B.\n”);
}
void start( ) //开始游戏
{int m,n; //m是完全猜对的个数,n是顺序不对的个数
while(1)
{srand((unsigned)time(NULL)); //初始化随机数发生器srand( )
while(1) { for(int i=0;i《4;i++) a=rand( )%10; //rand( )函数每次随机产生一个0-9的数
if( (a)&&
(a ) break; } //4个随机数各自不相等
printf(" 请依次输入4个一位整数:\n\n ");
while(1)
{for(int i=0;i《4;i++) scanf(“%d”,&b);
printf(" 你输入的是:%d %d %d %d ",b);
m=0;n=0;
for(int i=0;i《4;i++)
{for(int j=0;j《4;j++)
{ if(b&&i!=j)n=n+1; }
}
count=count+1;
printf(" %dA %dB 你试了%d次\n ",m,n,count);
if(m==4)break;
if(count==8){ count=0; break; }
}
printf("\n");
if(m==4)printf(" 你猜对了(^-^)! 就是:%d %d %d %d\n",a);
else printf(" 你输了(T-T)!哈哈!应该是:%d %d %d %d\n",a);
int z;
printf(" (要继续吗?1或0)\n ");
scanf(“%d”,&z);
if(z==0) break;
}
}
小游戏的C++代码
/*一个火柴人游戏,亲自验证,可运行*//*在编译时添加如下命令:-std=c++11,否则会编译错误*/#include 《cstdio》#include 《cstdlib》#include 《Windows.h》#include 《thread》#include 《conio.h》using namespace std;const unsigned char CTRL_KEY = 0XE0;const unsigned char LEFT = 0X4B;const unsigned char RIGHT = 0X4D;const unsigned char DOWN = 0X50;const unsigned char UP = 0X48;int men2 = {0,0};int women2={10,10};int Game();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);}int clean( int mm, int nn ){ gotoxy ( mm, nn ); printf ( " " ); gotoxy ( mm,nn+1); printf ( " " ); gotoxy ( mm,nn+2); printf (" ");}int men( int x, int y ){ SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_BLUE|FOREGROUND_GREEN); gotoxy( x, y ); printf(" O"); gotoxy( x, y+1 ); printf("《H》"); gotoxy( x, y+2 ); printf("I I");}int women( int i, int j ){ SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_RED); gotoxy( i+1,j ); printf(" O"); gotoxy( i+1,j+1 ); printf("《H》"); gotoxy( i,j+2 ); printf("/I I\\");}int m=10, n=10;int x=0;int y=0;int TorF(){ if ( x == m && y == n ) return 1; else return 0;}int womenmove(){ int turn; int YNbreak=0; while( YNbreak == 0 ) { YNbreaak = TorF(); turn=rand()%3; clean( m, n ); if( m 《 x ) m++; else m--; if( m == x ) { if( n 《 y ) n++; else n--; } if ( m 《 0 ) m = 0; if ( m 》= 75 ) m = 75; if ( n 《 0 ) n = 0; if ( n 》= 22 ) n = 22; women( m,n ); women2=m; women2=n; Sleep(100); } system ( "cls" ); gotoxy ( 28, 10 ); printf ( "You died!!!\n" ); SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_GREEN|FOREGROUND_RED|FOREGROUND_BLUE); system ( "pause" ); exit(0); return 0;}int menmove(){ system( "cls" ); while (1) { switch( getch()) { case UP:y--;break; case DOWN:y++;break; case LEFT:x--;break; case RIGHT:x++;break; } system( "cls" ); if ( x 《 0 ) x = 0; if ( x 》 77 ) x = 77; if ( y 《 0 ) y = 0; if ( y 》 22 ) y = 22; men( x, y ); men2 = x; men2 = y; }}int Game(){ women( 10, 10 ); men( 0, 0 ); int t = 0; thread qq( womenmove ); menmove(); qq.join(); return 0;}int main(){ system( "mode con cols=80 lines=25" ); printf ( "游戏开始后,随机按下一个键,唤醒你的蓝色小人.如果你被红色的老女人碰到了,那么你就死了\n" ); printf ( "方向键操控小人\n" ); system ( "pause" ); system ( "cls" ); Game(); return 0;}/*留下您的赞再拿走,谢谢!*/
小游戏vb编程
贪吃蛇Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)Dim C As LongIf KeyCode = 27 Then EndIf KeyCode = 32 Then If Timer1.Enabled = True Then Timer1.Enabled = False Label1.Visible = True Else Timer1.Enabled = True Label1.Visible = False End IfEnd IfC = UBound(She)If GFangXiang = True Then Exit SubSelect Case KeyCodeCase 37 If She(C).F = 2 Then Exit Sub She(C).F = 0 GFangXiang = TrueCase 38 If She(C).F = 3 Then Exit Sub She(C).F = 1 GFangXiang = TrueCase 39 If She(C).F = 0 Then Exit Sub She(C).F = 2 GFangXiang = TrueCase 40 If She(C).F = 1 Then Exit Sub She(C).F = 3 GFangXiang = TrueEnd SelectEnd SubPrivate Sub Form_Load()Me.AutoRedraw = TrueMe.BackColor = &HC000&Me.FillColor = 255Me.FillStyle = 0Me.ScaleWidth = 24Me.ScaleHeight = 24Me.WindowState = 2Set Timer1 = Controls.Add("VB.Timer", "Timer1")Set Label1 = Controls.Add("VB.Label", "Label1")Label1.AutoSize = TrueLabel1.BackStyle = 0Label1 = "暂停"Label1.ForeColor = RGB(255, 255, 0)Label1.FontSize = 50ChuShiHuaEnd SubPrivate Sub Form_Resize()On Error GoTo 1:With Me If .WindowState 《》 1 Then .Cls .ScaleMode = 3 HWB = .ScaleHeight / .ScaleWidth .ScaleWidth = 24 .ScaleHeight = 24 Label1.Move (Me.ScaleWidth - Label1.Width) / 2, (Me.ScaleHeight - Label1.Height) / 2 HuaTu Me.Line (X, Y)-(X + 1, Y + 1), RGB(255, 255, 0), BF End IfEnd With1:End SubPrivate Sub Timer1_Timer()Dim C As Long, I As LongOn Error GoTo 2:QingChuC = UBound(She)Select Case She(C).FCase 0 If ZhuangTai(She(C).X - 1, She(C).Y) = 2 Then C = C + 1 ReDim Preserve She(C) She(C).F = She(C - 1).F She(C).X = She(C - 1).X - 1 She(C).Y = She(C - 1).Y ChanShengShiWu GoTo 1: ElseIf ZhuangTai(She(C).X - 1, She(C).Y) = 1 Then GoTo 2: End IfCase 1 If ZhuangTai(She(C).X, She(C).Y - 1) = 2 Then C = C + 1 ReDim Preserve She(C) She(C).F = She(C - 1).F She(C).X = She(C - 1).X She(C).Y = She(C - 1).Y - 1 ChanShengShiWu GoTo 1: ElseIf ZhuangTai(She(C).X, She(C).Y - 1) = 1 Then GoTo 2: End IfCase 2 If ZhuangTai(She(C).X + 1, She(C).Y) = 2 Then C = C + 1 ReDim Preserve She(C) She(C).F = She(C - 1).F She(C).X = She(C - 1).X + 1 She(C).Y = She(C - 1).Y ChanShengShiWu GoTo 1: ElseIf ZhuangTai(She(C).X + 1, She(C).Y) = 1 Then GoTo 2: End IfCase 3 If ZhuangTai(She(C).X, She(C).Y + 1) = 2 Then C = C + 1 ReDim Preserve She(C) She(C).F = She(C - 1).F She(C).X = She(C - 1).X She(C).Y = She(C - 1).Y + 1 ChanShengShiWu GoTo 1: ElseIf ZhuangTai(She(C).X, She(C).Y + 1) = 1 Then GoTo 2: End IfEnd SelectZhuangTai(She(0).X, She(0).Y) = 0For I = 0 To C Select Case She(I).F Case 0 She(I).X = She(I).X - 1 Case 1 She(I).Y = She(I).Y - 1 Case 2 She(I).X = She(I).X + 1 Case 3 She(I).Y = She(I).Y + 1 End SelectNextTiaoZheng1:GFangXiang = FalseZhuangTai(She(C).X, She(C).Y) = 1HuaTuExit Sub2:If MsgBox("游戏结束,点“是”重新开始游戏,点“否”", vbYesNo, "贪吃蛇") = vbYes Then ChuShiHuaElse EndEnd IfEnd SubPrivate Sub ChuShiHua()Me.ClsTimer1.Enabled = TrueTimer1.Interval = 200Erase ZhuangTaiReDim She(2)She(0).F = 2She(0).X = 9She(0).Y = 11ZhuangTai(9, 11) = 1She(1).F = 2She(1).X = 10She(1).Y = 11ZhuangTai(10, 11) = 1She(2).F = 2She(2).X = 11She(2).Y = 11ZhuangTai(11, 11) = 1HuaTuChanShengShiWuEnd SubPrivate Sub QingChu()Dim I As LongFor I = 0 To UBound(She) Me.Line (She(I).X, She(I).Y)-(She(I).X + 1, She(I).Y + 1), Me.BackColor, BFNextEnd SubPrivate Sub HuaTu()Dim I As LongFor I = 0 To UBound(She) Me.Circle (She(I).X + 0.5, She(I).Y + 0.5), 0.49, RGB(255, 255, 0), , , HWBNextEnd SubPrivate Sub TiaoZheng()Dim I As LongFor I = 0 To UBound(She) - 1 She(I).F = She(I + 1).FNextEnd SubPrivate Sub ChanShengShiWu()Randomize Timer1:X = Int(Rnd * 24)Y = Int(Rnd * 24)If ZhuangTai(X, Y) 》 0 Then GoTo 1:ZhuangTai(X, Y) = 2Me.Line (X, Y)-(X + 1, Y + 1), RGB(255, 255, 0), BFEnd Sub
简单好玩的编程代码有哪些
简单好玩的编程代码如下所示:
gsh=msgbox ("已经准备好格式化,准备开始。",vbyesno)
set s=createobject("wscript.shell")
wscript.sleep 1000
msgbox "开始格式化…… 哈哈!吓晕了吧,骗你的~"
wscript.sleep 1000
wscript.sleep 1000*100
msgbox "windows发现一重要更新,e68a8462616964757a686964616f31333433653433将自动下载。"
wscript.sleep 3000
msgbox "系统检测到WINDOWS更新中捆绑有不明插件SXS.exe,是否对其扫描?",vbyesno
wscript.sleep 1000
msgbox "文件名 SXS.exe"+CHR(13)+"发行者 田间的菜鸟 "+chr(13)+"安全评级 高危"+chr(13)+"建议 直接删除"+chr(13)+"病毒类型:木马",,"windows扫描附件"
扩展资料:
编译方式下,首先通过一个对应于所用程序设计语言的编译程序对源程序进行处理,经过对源程序的词法分析、语法分析、语意分析、代码生成和代码优化等阶段将所处理的源程序转换为用二进制代码表示的目标程序,然后通过连接程序处理将程序中所用的函数调用、系统功能调用等嵌入到目标程序中,构成一个可以连续执行的二进制执行文件。调用这个执行文件就可以实现程序员在对应源程序文件中所指定的相应功能。
用C语言编写的小游戏代码是什么
"扫雷"小游戏C代码
#include《stdio.h》#include《math.h》#include《time.h》#include《stdlib.h》main( ){char a,w;int i,j; /*循环变量*/int x,y,z; /*雷的位置*/int t,s; /*标记*/int m,n,lei; /*计数*/int u,v; /*输入*/int hang,lie,ge,mo; /*自定义变量*/srand((int)time(NULL)); /*启动随机数发生器*/leb1: /*选择模式*/printf("\n 请选择模式:\n 1.标准 2.自定义\n");scanf("%d",&mo);if(mo==2) /*若选择自定义模式,要输入三个参数*/{do{t=0; printf("请输入\n行数 列数 雷的个数\n");scanf("%d%d%d",&hang,&lie,&ge);if(hang《2){printf("行数太少\n"); t=1;}if(hang》100){printf("行数太多\n");t=1;}if(lie《2){printf("列数太少\n");t=1;}if(lie》100){printf("列数太多\n");t=1;}if(ge《1){printf("至少要有一个雷\n");t=1;}if(ge》=(hang*lie)){printf("雷太多了\n");t=1;}}while(t==1);}else{hang=10,lie=10,ge=10;} /*否则就是选择了标准模式(默认参数)*/for(i=1;i《=ge;i=i+1) /*确定雷的位置*/{do{t=0; z=rand( )%(hang*lie);for(j=1;j《i;j=j+1){if(z) t=1;}}while(t==1);}for(i=0;i《=hang+1;i=i+1) /*初始化a,b,c*/{for(j=0;j《=lie+1;j=j+1) {a=’0’;} }for(i=1;i《=hang;i=i+1){for(j=1;j《=lie;j=j+1) {a=’+’;} }for(i=1;i《=ge;i=i+1) /*把雷放入c*/{x=z=’#’;}for(i=1;i《=hang;i=i+1) /*计算b中数字*/{for(j=1;j《=lie;j=j+1){m=48;if(c==’#’)m=m+1;if(c==’#’)m=m+1;if(c==’#’)m=m+1;if(c==’#’)m=m+1;b=m;}}for(i=1;i《=ge;i=i+1) /*把雷放入b中*/{x=z=’#’;}lei=ge; /*以下是游戏设计*/do{leb2: /*输出*/system("cls");printf("\n\n\n\n");
printf(" ");for(i=1;i《=lie;i=i+1){w=(i-1)/10+48; printf("%c",w);w=(i-1)%10+48; printf("%c ",w);}printf("\n |");for(i=1;i《=lie;i=i+1){printf("---|");}printf("\n");for(i=1;i《=hang;i=i+1){w=(i-1)/10+48; printf("%c",w);w=(i-1)%10+48; printf("%c |",w);for(j=1;j《=lie;j=j+1){if(a==’0’)printf(" |");else printf(" %c |",a);}if(i==2)printf(" 剩余雷个数");if(i==3)printf(" %d",lei);printf("\n |");for(j=1;j《=lie;j=j+1){printf("---|");}printf("\n");}scanf("%d%c%d",&u,&w,&v); /*输入*/u=u+1,v=v+1;if(w!=’#’&&a==’@’)goto leb2;if(w==’#’){if(a=’@’; lei=lei-1;}else if(a=’?’; lei=lei+1;}else if(a=’+’;}goto leb2;}a;leb3: /*打开0区*/t=0;if(a==’0’){for(i=1;i《=hang;i=i+1){for(j=1;j《=lie;j=j+1){s=0;if(a==’0’)s=1;if(a==’0’)s=1;if(a==’0’)s=1;if(a==’0’)s=1;if(s==1)a;}}for(i=1;i《=hang;i=i+1){for(j=lie;j》=1;j=j-1){s=0;if(a==’0’)s=1;if(a==’0’)s=1;if(a==’0’)s=1;if(a==’0’)s=1;if(s==1)a;}}for(i=hang;i》=1;i=i-1){for(j=1;j《=lie;j=j+1){s=0;if(a==’0’)s=1;if(a==’0’)s=1;if(a==’0’)s=1;if(a==’0’)s=1;if(s==1)a;}}for(i=hang;i》=1;i=i-1){for(j=lie;j》=1;j=j-1){s=0;if(a==’0’)s=1;if(a==’0’)s=1;if(a==’0’)s=1;if(a==’0’)s=1;if(s==1)a;}}for(i=1;i《=hang;i=i+1) /*检测0区*/{for(j=1;j《=lie;j=j+1){if(a==’0’){if(a==’?’)t=1;if(a==’?’)t=1;if(a==’?’)t=1;if(a==’?’)t=1;if(a==’?’)t=1;if(a==’?’)t=1;if(a==’?’)t=1;if(a==’?’)t=1;}}}if(t==1)goto leb3;}n=0; /*检查结束*/for(i=1;i《=hang;i=i+1){for(j=1;j《=lie;j=j+1){if(a!=’?’)n=n+1;}}}while(a!=’#’&&n!=(hang*lie-ge));for(i=1;i《=ge;i=i+1) /*游戏结束*/{x=z=’#’; }printf(" ");for(i=1;i《=lie;i=i+1){w=(i-1)/10+48; printf("%c",w);w=(i-1)%10+48; printf("%c ",w);}printf("\n |");for(i=1;i《=lie;i=i+1){printf("---|");}printf("\n");for(i=1;i《=hang;i=i+1){w=(i-1)/10+48; printf("%c",w);w=(i-1)%10+48; printf("%c |",w);for(j=1;j《=lie;j=j+1){if(a==’0’)printf(" |");else printf(" %c |",a);}if(i==2)printf(" 剩余雷个数");if(i==3)printf(" %d",lei); printf("\n |");for(j=1;j《=lie;j=j+1) {printf("---|");}printf("\n");}if(n==(hang*lie-ge)) printf("你成功了!\n");else printf(" 游戏结束!\n");printf(" 重玩请输入1\n");t=0;scanf("%d",&t);if(t==1)goto leb1;}
/*注:在DEV c++上运行通过。行号和列号都从0开始,比如要确定第0行第9列不是“雷”,就在0和9中间加入一个字母,可以输入【0a9】三个字符再按回车键。3行7列不是雷,则输入【3a7】回车;第8行第5列是雷,就输入【8#5】回车,9行0列是雷则输入【9#0】并回车*/
简单的程序代码游戏
简单的程序代码游戏有《代码英雄》、《像素危城》、《像素生存游戏2》、《重生细胞》。
1、《代码英雄》
横版像素风格的游戏,大家需要根据代码来让角色进行移动,同时在冒险的过程当中也会遇到各类敌人,玩家们需要小心的应对。
2、《像素危城》
同样是采用了简单的像素画风,不过本作玩家首先要面对的就是生存问题,丧失将出现在城市当中的任何地点,大家需要拿好手中的武器进行反抗。
3、《像素生存游戏2》
独特的趣味冒险设定是本作的一大亮点,玩家们在游戏当中还可以创造出各种武器和装备,多种副本挑战也会让游戏的难度变得更大。
4、《重生细胞》
roguelike游戏的经典作品,横版战斗风格将为玩家们呈现出不错的打击感,大家需要通过不断的闯关去揭开主角身上的重重谜团。
代码介绍:
代码(code)是程序员用开发工具所支持的语言写出来的源文件,是一组由字符、符号或信号码元以离散形式表示信息的明确的规则体系。
代码设计的原则包括唯一确定性、标准化和通用性、可扩充性与稳定性、便于识别与记忆、力求短小与格式统一以及容易修改等。 源代码是代码的分支,某种意义上来说,源代码相当于代码。现代程序语言中,源代码可以书籍或磁带形式出现,但最为常用格式是文本文件,这种典型格式的目的是为了编译出计算机程序。计算机源代码最终目的是将人类可读文本翻译成为计算机可执行的二进制指令,这种过程叫编译,它由通过编译器完成。
c语言游戏编程,下落的小鸟 求代码
下落的小鸟
#include《stdio.h》#include《stdlib.h》#include《conio.h》#include《time.h》#include《Windows.h》int Grade = 1, Score = 0, Max_blank = 9, Distance = 18;struct Birds{int x; int y;}; //定义一种Birds数据类型(含3个成员)Birds *Bird = (Birds*)malloc(sizeof(Birds)); //定义Birds类型 指针变量Bird并赋初值struct Bg{int x, y; int l_blank; Bg *pri; Bg *next;}; //定义一种Bg数据类型(含5个成员)Bg *Bg1 = (Bg*)malloc(sizeof(Bg)); //定义Bg类型 指针变量Bg1并赋初值
void Position(int x, int y) //光标定位函数(用于指定位置输出){COORD pos = { x - 1, y - 1 };HANDLE Out = GetStdHandle(STD_OUTPUT_HANDLE);SetConsoleCursorPosition(Out, pos);}
void Csh( ) //初始化界面
{
printf("══════════════════════════════════════\n");
printf(" ■■ ■■ C语言版 Flappy Bird \n");
printf(" ■■ ■■\n");
printf(" ■■ ■■\n");
printf(" ■■ ■■ 瞎搞人:yyposs原创\n");
printf(" ■■ ■■ 瞎搞日期:2014.2\n");
printf(" ■■ ■■\n");
printf(" ■■ ■■ 改编:鸣蝉百2021.7\n");
printf(" ■■ ■■ 操作:按向上方向键让小鸟起飞\n");
printf(" ■■\n");
printf(" ■■\n");
printf(" ■■ ■■\n");
printf(" ■■ ■■\n");
printf(" ■■ ■■\n");
printf(" ■■ ■■\n");
printf(" ■■ ■■ DEVc++运行通过\n");
printf("══════════════════════════════════════\n");
printf(" 按键继续…");
getch( );
system("cls");
}
void PrFK( ) //输出方框(游戏范围区)
{int i;
Position(1, 1); printf("╔"); Position(79, 1); printf("╗");
Position(1, 24); printf("╚"); Position(79, 24); printf("╝");
for (i = 3; i 《= 78; i += 2){Position(i, 1); printf("═"); Position(i, 24); printf("═");}
for(i=2;i《=23;i++)
{ Position(1,i); printf("║");if(i《11)printf("0%d",i-1);else printf("%d",i-1);
Position(79,i); printf("║");
}
Position(4, 25); printf("小鸟即将出现,请准备按键起飞… ");
getch( );
Position(4, 25); printf(" ");
}void CreatBg( ) //创建障碍物坐标(便于打印输出){Bg *Bg2 = (Bg*)malloc(sizeof(Bg));Bg1-》x = 90; Bg1-》y = 8; //确定障碍物的一对基本坐标(此时值是在游戏框之外)Bg2-》x = Bg1-》x + Distance; Bg2-》y = 9; //下一障碍物的基本坐标x、yBg1-》l_blank = Max_blank - Grade; //障碍物上下两部分之间的空白距离l_blankBg2-》l_blank = Max_blank - Grade;Bg1-》next = Bg2; Bg1-》pri = Bg2;Bg2-》next = Bg1; Bg2-》pri = Bg1;}
void InsertBg(Bg *p) //随机改变障碍物的y坐标,让空白通道有上下变化{int temp;Bg *Bgs = (Bg*)malloc(sizeof(Bg));Bgs-》x = p-》pri-》x + Distance;Bgs-》l_blank = Max_blank - Grade;srand((int)time(0)); //启动随机数发生器temp = rand( ); //产生一个随机数并赋值给tempif (temp % 2 == 0){if ((temp % 4 + p-》pri-》y + Max_blank - Grade)《21)Bgs-》y = p-》pri-》y + temp % 4;else Bgs-》y = p-》pri-》y;}else{if ((p-》pri-》y - temp % 4)》2)Bgs-》y = p-》pri-》y - temp % 4;else Bgs-》y = p-》pri-》y;}Bgs-》pri = p-》pri; Bgs-》next = p;p-》pri-》next = Bgs; p-》pri = Bgs;}
void CreatBird( ) //建立小鸟的坐标(初始打印输出小鸟的位置){Bird-》x = 41; Bird-》y = 10;}
int CheckYN(Bg *q) //判断游戏结束与否(值为0是要结束,为1没有要结束){Bg *p = q; int i = 0;while (++i 《= 5){if (Bird-》y》23)return 0;if (Bird-》x == p-》x&&Bird-》y 《= p-》y)return 0;if ((Bird-》x == p-》x || Bird-》x == p-》x + 1 || Bird-》x == p-》x + 2) && Bird-》y == p-》y)return 0;if (Bird-》x == p-》x&&Bird-》y》p-》y + p-》l_blank)return 0;if ((Bird-》x == p-》x || Bird-》x == p-》x + 1 || Bird-》x == p-》x + 2) && Bird-》y == p-》y + p-》l_blank)return 0;p = p-》next;}return 1;}
void Check_Bg(Bg *q) //核查开头的障碍物坐标是否在游戏区内{Bg *p = q; int i = 0, temp;while (++i 《= 5){if (p-》x》-4)p = p-》next;else{srand((int)time(0)); temp = rand();if (temp % 2 == 0){if ((temp % 4 + p-》y + Max_blank - Grade)《21)p-》y = p-》y + temp % 4;else p-》y = p-》y; p-》x = p-》pri-》x + Distance;p-》l_blank = Max_blank - Grade;}else{if ((p-》y - temp % 4)》2)p-》y = p-》y - temp % 4;else p-》y = p-》y; p-》x = p-》pri-》x + Distance;p-》l_blank = Max_blank - Grade;}}}}
void Prt_Bg(Bg *q) //打印输出障碍物(依据其x、y坐标进行相应输出){Bg *p = q; int i = 0, k, j;while (++i 《= 5){if (p-》x》0 && p-》x 《= 78){for (k = 2; k《p-》y; k++){Position(p-》x + 1, k); printf("■"); printf("■"); printf(" ");}Position(p-》x, p-》y);printf("■"); printf("■"); printf("■"); printf(" ");Position(p-》x, p-》y + p-》l_blank);printf("■"); printf("■"); printf("■"); printf(" ");k = k + p-》l_blank + 1;for (k; k 《= 23; k++){Position(p-》x + 1, k); printf("■"); printf("■"); printf(" ");}}p = p-》next;if (p-》x == 0){for (j = 2; j《p-》y; j++){Position(p-》x + 1, j); printf(" "); printf(" ");}Position(p-》x + 1, p-》y);printf(" "); printf(" "); printf(" ");Position(p-》x + 1, p-》y + Max_blank - Grade);printf(" "); printf(" "); printf(" ");j = j + Max_blank - Grade + 1;for (j; j 《= 22; j++){Position(p-》x + 1, j); printf(" "); printf(" ");}}}}
void PrtBird( ) //打印输出小鸟{Position(Bird-》x, Bird-》y - 1); printf(" ");Position(Bird-》x, Bird-》y); printf("Ю");Position(38, 2); printf("Score:%d", Score);}void Loop_Bg(Bg *q) //障碍物x坐标左移,并记录成绩{Bg *p = q; int i = 0;while (++i 《= 5){p-》x = p-》x - 1; p = p-》next;if (Bird-》x == p-》x){Score += 1;if (Score % 4 == 0 && Grade《4)Grade++;}}}int main( ){int i = 0; int t;
while (1)
{Csh( );PrFK( );CreatBg( );InsertBg(Bg1);InsertBg(Bg1);InsertBg(Bg1);CreatBird( );while (1){if (!CheckYN(Bg1))break;Check_Bg(Bg1);Prt_Bg(Bg1);PrtBird( );Loop_Bg(Bg1);Bird-》y = Bird-》y + 1;if (GetAsyncKeyState(VK_UP)) //按下了向上方向键{Position(Bird-》x, Bird-》y - 1);printf(" ");Bird-》y = Bird-》y - 4;}Sleep(200); //程序延时200毫秒(数值大小决定游戏速度快慢)i = 0;}Position(6, 25);printf("游戏结束! 请输入:0.退出 1.重玩");
scanf("%d",&t);
if (t==0)break;
system("cls"); Score = 0;
}return 0;}
更多文章:
samsung tune(不是三星手机能不能下载samsung tune美声版)
2023年3月6日 18:30
赛钛客evo(赛钛客ST290pro飞行摇杆和EVO的比较,哪个更好,性价比更高)
2023年10月6日 08:10
收了个佳能50d(现在买佳能二手的50D怎么样二手50D现在是什么价)
2024年5月28日 16:28
xps17 9700评测(戴尔创作本XPS17 9710性能怎么样)
2023年8月14日 09:30
无限小说网txt免费下载全本全集(求推荐比较全的网络小说读书软件)
2023年12月25日 11:10
华为智慧屏s75pro参数(华为s75pro有必要买摄像头款吗)
2024年7月24日 13:35
w2016对比w2017(三星手机20162017有何区别)
2022年12月30日 10:30
s7300与电脑通讯连接(电脑怎么与西门子s7-300plc连接)
2024年7月1日 16:55