网页
资讯
视频
图片
知道
文库
贴吧
地图
采购
进入贴吧
全吧搜索
吧内搜索
搜贴
搜人
进吧
搜标签
日
一
二
三
四
五
六
签到排名:今日本吧第
个签到,
本吧因你更精彩,明天继续来努力!
本吧签到人数:0
一键签到
成为超级会员,使用一键签到
一键签到
本月漏签
0
次!
0
成为超级会员,赠送8张补签卡
如何使用?
点击日历上漏签日期,即可进行
补签
。
连续签到:
天 累计签到:
天
0
超级会员单次开通12个月以上,赠送连续签到卡3张
使用连续签到卡
02月10日
漏签
0
天
c4droid吧
关注:
42,851
贴子:
262,807
看贴
图片
吧主推荐
游戏
1
2
下一页
尾页
51
回复贴,共
2
页
,跳到
页
确定
<<返回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
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
欢迎大家找问题。欢迎大神修改。欢迎小白使用。
stbzx518
外星人
9
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
怎么少代码
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;
}
李登淳
大哲
13
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
矩阵什么鬼?我没用,再说你绝对找不到第二个代码规模和我相似而界面比较华丽的贪吃蛇,而且还是用类写的
2002a1116
孤独求败
12
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
好短。。。。。
====祝top gear早日回归====
登录百度账号
扫二维码下载贴吧客户端
下载贴吧APP
看高清直播、视频!
贴吧页面意见反馈
违规贴吧举报反馈通道
贴吧违规信息处理公示