网页
资讯
视频
图片
知道
文库
贴吧
地图
采购
进入贴吧
全吧搜索
吧内搜索
搜贴
搜人
进吧
搜标签
日
一
二
三
四
五
六
签到排名:今日本吧第
个签到,
本吧因你更精彩,明天继续来努力!
本吧签到人数:0
一键签到
成为超级会员,使用一键签到
一键签到
本月漏签
0
次!
0
成为超级会员,赠送8张补签卡
如何使用?
点击日历上漏签日期,即可进行
补签
。
连续签到:
天 累计签到:
天
0
超级会员单次开通12个月以上,赠送连续签到卡3张
使用连续签到卡
02月14日
漏签
0
天
c4droid吧
关注:
42,848
贴子:
262,805
看贴
图片
吧主推荐
游戏
11
回复贴,共
1
页
<<返回c4droid吧
>0< 加载中...
70行简单贪吃蛇
取消只看楼主
收藏
回复
ljt12138
高手寂寞
11
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
最近怎么都喜欢贪吃蛇
,于是我闲着没事码了一发。发现挺有意思。界面非常简陋,各种渣,但是只有70行欧!
ljt12138
高手寂寞
11
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
ljt12138
高手寂寞
11
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
实现方法和大伙不太相同。没有用nm矩阵。下面发源码,自己看吧。
ljt12138
高手寂寞
11
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
#include <iostream>
#include <cstdlib>
#include <conio.h>
#include <cstdio>
#include <ctime>
using namespace std;
const int a=30,b=15;
struct p {
int x,y;
}snake[a*b+5],food;
int n=3,way=6;
bool exi=false;
void print() {
gotoxy(1,1);
for (int i=1; i<=b; i++){
for (int i=1; i<=a; i++)
cout << '.';
cout << endl;
}
gotoxy(food.y,food.x);
putchar('$');
for (int i=1; i<=n; i++){
gotoxy(snake[i].y,snake[i].x);
putchar('#');
}
gotoxy(1,a+1);
fflush(stdout);
system("sleep 1");
}
void move(){
if (snake[1].x==food.x&&snake[1].y==food.y){
food.x=rand()%b;
food.y=rand()%a;
snake[++n]=snake[n-1];
}
for (int i=n; i>1; i--)
snake[i]=snake[i-1];
switch (way) {
case 2: snake[1].x--; break;
case 6: snake[1].y++; break;
case 8: snake[1].x++; break;
case 4: snake[1].y--; break;
}
}
ljt12138
高手寂寞
11
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
int main(){
food.x=rand()%b;
food.y=rand()%a;
snake[1].x=snake[1].y=snake[2].x=snake[3].x=3;
snake[2].y=4,snake[3].y=5;
srand(time(NULL));
print();
while (!exi) {
if (snake[1].x>b||snake[1].y>a||snake[1].x<1||snake[1].y<1)
break;
gotoxy(1,a+1);
if (kbhit()){
way=getch()-48;
fflush(stdin);
}
move();
system("clear");
print();
}
system("clear");
cout << "You Die";
return 0;
}
ljt12138
高手寂寞
11
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
2846上下左右。
嫌慢的调sleep。
ps 这只虫虫有特异功能,可以自己吃自己
ljt12138
高手寂寞
11
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
@NGSTV
@2002a1116
@火可天
@李登淳
@mengyapeng1
@不一样的井猜
ljt12138
高手寂寞
11
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
能否骗个精
ljt12138
高手寂寞
11
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
欢迎大家找问题。欢迎大神修改。欢迎小白使用。
ljt12138
高手寂寞
11
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
虫虫吃了自己的肉,发现很难吃。于是他不再吃自己的肉了。代码楼下
ljt12138
高手寂寞
11
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
#include <iostream>
#include <cstdlib>
#include <conio.h>
#include <cstdio>
#include <ctime>
using namespace std;
const int a=30,b=15;
struct p {
int x,y;
}snake[a*b+5],food;
int n=3,way=6;
bool exi=false;
void print() {
gotoxy(1,1);
for (int i=1; i<=b; i++){
for (int i=1; i<=a; i++)
cout << '.';
cout << endl;
}
gotoxy(food.y,food.x);
putchar('$');
for (int i=1; i<=n; i++){
gotoxy(snake[i].y,snake[i].x);
putchar('#');
}
gotoxy(1,a+1);
fflush(stdout);
system("sleep 0.5");
}
void move(){
if (snake[1].x==food.x&&snake[1].y==food.y){
food.x=rand()%(b-1);
food.y=rand()%(a-1);
if (food.x<=1) ++food.x;
if (food.x<=1) ++food.x;
//snake[++n]=snake[n-1];
snake[++n].x=snake[n].y=-2;
}
for (int i=n; i>1; i--)
snake[i]=snake[i-1];
ljt12138
高手寂寞
11
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
switch (way) {
case 2: snake[1].x--; break;
case 6: snake[1].y++; break;
case 8: snake[1].x++; break;
case 4: snake[1].y--; break;
default: break;
}
for (int i=2; i<=n; i++)
if (snake[1].x==snake[i].x&&snake[1].y==snake[i].y)
exi=true;
}
int main(){
food.x=rand()%b;
food.y=rand()%a;
snake[3].x=snake[3].y=snake[2].x=snake[1].x=2;
snake[2].y=3,snake[1].y=4;
srand(time(NULL));
print();
while (!exi) {
if (snake[1].x>b||snake[1].y>a||snake[1].x<1||snake[1].y<1)
break;
gotoxy(1,a+1);
if (kbhit()){
way=getch()-48;
fflush(stdin);
}
move();
system("clear");
print();
}
system("clear");
cout << "You Die";
return 0;
}
登录百度账号
扫二维码下载贴吧客户端
下载贴吧APP
看高清直播、视频!
贴吧页面意见反馈
违规贴吧举报反馈通道
贴吧违规信息处理公示