日本搞逼视频_黄色一级片免费在线观看_色99久久_性明星video另类hd_欧美77_综合在线视频

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > php開源 > php教程 > 貪吃蛇,c,c++

貪吃蛇,c,c++

來源:程序員人生   發布時間:2015-01-09 08:20:34 閱讀次數:2661次
學了c++半個學期了,自己動手做了1個游戲。(有甚么不好的地方,歡迎指出<img alt="大笑" src="http://static.blog.csdn.net/xheditor/xheditor_emot/default/laugh.gif" />)
#include <windows.h> #include <conio.h> #include <ctime> #include <iostream> #include <cmath> #include <mmsystem.h> #include<stdio.h> #include <stdlib.h> # pragma comment (lib, "Winmm.lib")//導入Winmm.lib庫 using namespace std; int node; //蛇的節數 int life; //生命,0活著,1死亡 int Q;//控制食品色彩 int fa,fb;//食品坐標 int q;//控制上下左右 int ti=0,ti1=0;//time int nd=0;//難度 char k; int a[4][2]={{⑴,0},{1,0},{0,⑴},{0,1}}; // 上下左右 struct food { int f1; int f2; int need; }f; struct she { int x; int y; }s[1000],t; HANDLE hout=GetStdHandle(STD_OUTPUT_HANDLE); //光標定位 COORD coord; void hide() //隱藏光標 { CONSOLE_CURSOR_INFO cursor_info={1,0}; SetConsoleCursorInfo(hout, &cursor_info); } void gotoxy(int x, int y) { CONSOLE_SCREEN_BUFFER_INFO cs; HANDLE hConsoleOut = GetStdHandle(STD_OUTPUT_HANDLE); GetConsoleScreenBufferInfo(hConsoleOut, &cs); cs.dwCursorPosition.X = y; cs.dwCursorPosition.Y = x; SetConsoleCursorPosition(hConsoleOut, cs.dwCursorPosition); } void color(int a)//色彩函數 { SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),a); } void weiqiang(void)//圍圈 { color(14); int a=25,b=20,c=25,d=20; while(a--) { cout << '-'; } cout << endl; while(b--) { cout << '|'; cout << endl; } while(d--) { gotoxy(20-d,24); cout << '|'; cout << endl; } while(c--) { cout << '-'; } cout << endl; gotoxy(1,1); } void food1(void)//食品 { f.f1=5; f.f2=5; int i; srand((unsigned)time(NULL)); while (1) { loop:f.f1=rand()%19;//隨機數 f.f2=rand()%24; for (i=0;i<node;i++) { if (f.f1==s[i].x||f.f2==s[i].y) { goto loop; } } if (f.f1==0||f.f2==0)//避免超越框框 { continue; } else { break; } } if(f.need==0) { fa=f.f1;fb=f.f2;//f.f1,f.f2賦值給全局變量 gotoxy(f.f1,f.f2); while (1) { Q=rand()%16; if (Q>9) { break; } } color(Q); cout << "*"; } } int died(void)//判斷死亡 { int i,flag=0; for (i=1;i<node;i++) { if (s[0].x==s[i].x&&s[0].y==s[i].y) { flag=1; } } if ((s[0].x==0||s[0].x==21||s[0].y==0||s[0].y==24)||flag==1) { return 0; } else { return 1; } } void tyd(char c) { if (abs(c-k)!=3&&abs(c-k)!=4&&abs(c-k)!=0)//控制蛇頭走身體后面 { if(c=='a') { q=2; } else if (c=='s') { q=1; } else if (c=='w') { q=0; } else if (c=='d') { q=3; } } s[0].x+=a[q][0]; s[0].y+=a[q][1]; } void yd(void)//移動方向 { char c='d'; int i,a=200; s[0].x=1; s[0].y=1; node=2; do { ti+=1;//必須將其重新歸0,不然游戲會出錯 ti1+=ti; if (ti>1000) { ti=0; } if (ti%150==0) { if (a>25) { nd++; a-=25; } } food1(); t.x=s[node⑴].x;//保存最后1個* t.y=s[node⑴].y; for (i=node⑴;i>0;i--)//身體移動 { s[i].x=s[i⑴].x; s[i].y=s[i⑴].y; } for (i=1;i<node;i++) { color(13); gotoxy(s[i].x,s[i].y); cout << "*" ; } gotoxy(t.x,t.y);//消去最后那個* cout << " "; if (_kbhit())//接受鍵盤輸入的上下左右,并以此改變方向 { k=c; c=_getch(); } tyd(c);//移動 gotoxy(s[0].x,s[0].y);//頭移動 cout << "#"; if (s[0].x==fa&&s[0].y==fb)//控制食品每次只能有1個 { f.need=0; node++; } else { f.need=1; } Sleep(a); if(died()==0)//判斷是不是 { system("cls");//清屏 break; } color(12); gotoxy(22,0); cout << "食品統計: " << node⑵ ; gotoxy(1,27); color(11); cout << "游戲難度: " << nd; }while(1); } void jieshu(void) { color(12); cout << "花費時間:" << ti1/60 << " s" << endl; cout << " o(
生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 亚洲精品在线视频观看 | 亚洲视频在线观看视频 | 成人精品视频在线观看 | 久久99精品久久久久久久久久久久 | 国产精品午夜在线 | 日韩高清一区二区 | 成人欧美一区二区三区视频网页 | 国产二区精品 | 日韩综合在线 | 国产精品国产三级国产aⅴ原创 | 综合在线视频 | 欧美美女啪啪 | 99久久精品国产麻豆演员表 | 永久精品| 国产一区在线播放 | av黄网 | www.一区 | 最污网站 | 91精品国产综合久久久久 | 国产综合久久 | 日韩在线毛片 | 嫩草在线视频 | 午夜精品久久久久久久久久久 | 成人免费毛片片v | 国产免费区一区二区三视频免费 | av在线免费网站 | 久久都是精品 | 国产精品99久久 | 欧美性猛交xxxxx水多 | 亚洲视频在线观看视频 | 一区二区三区在线 | 欧美日韩一区三区 | 久久精品在线视频 | 成人免费视频在线观看 | 免费在线观看污视频 | 欧美日韩国产在线一区 | 二区在线视频 | 成人福利网站 | 18久久久久久 | 在线久热 | 亚洲综合av网 |