吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 5848|回复: 15
收起左侧

[C&C++ 转载] 200行代码的贪吃蛇!

[复制链接]
773827986 发表于 2015-5-28 16:38
本帖最后由 773827986 于 2015-6-1 09:19 编辑

新建位图图像 (2).bmp 贪吃蛇小游戏界面效果
百度网盘(贪吃蛇.exe):http://pan.baidu.com/s/1jGFzAvG
百度网盘(Microsoft Visual C++ 6.0编译源码)http://pan.baidu.com/s/1o6onbMa

贪吃蛇.zip

295.02 KB, 下载次数: 70, 下载积分: 吾爱币 -1 CB

贪吃蛇.exe

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

czr27 发表于 2015-5-28 19:52
我居然有空帮你调了调
[C++] 纯文本查看 复制代码
#include <iostream>
#include<stdio.h>
#include<stdlib.h>
#include<time.h> 
#include <windows.h>   
#include <conio.h>
#include <windows.h>
int s1=0,s2=0;
int pp=10;
void caonima();

void PrintChar(char *ch,UINT count,UINT x,UINT y) //在坐标(x,y)处输出字符串ch,ch里有count个字符
{
HANDLE h=GetStdHandle(STD_OUTPUT_HANDLE);
COORD pos;
ULONG unuse;
pos.X=x;
pos.Y=y;
CONSOLE_SCREEN_BUFFER_INFO bInfo; // 窗口缓冲区信息
GetConsoleScreenBufferInfo(h, &bInfo );
WriteConsoleOutputCharacterA(h,ch,count,pos,&unuse);
}

int main()
{
        char p[20][20];
        srand((int)time(NULL));
        int a=0,b=19;
        int sjz;
 
        int sjz2;
        int t=0;
        int f=19;
		for(int i=0;i<22;i++){
			PrintChar("-",1,i,21);
			PrintChar("-",1,i,0);
			PrintChar("-",1,0,i);
			PrintChar("-",1,21,i);
		}
        sjz2=(rand()%(f-t+1))+t;
        sjz=(rand()%(b-a+1))+a;
		PrintChar("#",1,sjz+1,sjz2+1);
        //输出图纸 
        while(true)
        {
			PrintChar(" ",1,s1+1,s2+1);
			switch(pp)
			{
				case 1:s1--;break;
				case 2:s1++;break;
				case 3:s2--;break;
				case 4:s2++;break;
			}   
			caonima();
			PrintChar("*",1,s1+1,s2+1);
            while(kbhit())
            {
				PrintChar(" ",1,s1+1,s2+1);
                switch(getch())
                {
					case 'a':
						s1--;pp=1;caonima();break;
					case 'd':
						s1++;pp=2;caonima();break;
                    case 'w':
                        s2--;pp=3;caonima();break;
                    case 's':
                        s2++;pp=4;caonima();break;
                    default:
                        s2++;
						caonima();
                        break;
                }
				PrintChar("*",1,s1+1,s2+1);
            }
                        //蛇吃到东西了 
            if (s1==sjz&s2==sjz2)
            {
				PrintChar(" ",1,sjz+1,sjz2+1);
				sjz2=(rand()%(f-t+1))+t;
				sjz=(rand()%(b-a+1))+a;
				PrintChar("#",1,sjz+1,sjz2+1);
            }

		Sleep(100);
		//system("cls");
        }
        return 0;
}
void caonima(void)
{
	if(s1<0 || s1>20 || s2<0 || s2>20)
	{
		system("cls");    
		std::cout << "sile";
		pp=10;
		getch();
	}
}

免费评分

参与人数 1热心值 +1 收起 理由
773827986 + 1 热心回复!

查看全部评分

 楼主| 773827986 发表于 2015-5-29 14:26
lytalyt 发表于 2015-5-29 12:53
楼主如果需要代码我可以把项目发给你。。不过挺复杂的。楼主你可以去网上搜mfc贪吃蛇视频教程,一步步教的 ...

我没按照网上贪吃蛇的做法做,因为我完全看不懂,我已经做出来了
嘉靖 发表于 2015-5-28 16:51
358463121 发表于 2015-5-28 16:59
你只要1秒钟闪24下就不闪了
wsat 发表于 2015-5-28 17:07
这个需要绘图
lytalyt 发表于 2015-5-28 17:07
我用MFC写过

免费评分

参与人数 1热心值 +1 收起 理由
773827986 + 1 热心回复!

查看全部评分

 楼主| 773827986 发表于 2015-5-28 19:02
ubuntu 发表于 2015-5-28 17:33
代码居然只有不到100行么?

只是个雏形,但是他不停的闪,我就不高兴做下去了!所以想请教一下
浙江螃蟹 发表于 2015-5-28 19:52
我试过了,这蛇他吃了东西后老是不长大呀,

免费评分

参与人数 1热心值 +1 收起 理由
773827986 + 1 热心回复!

查看全部评分

 楼主| 773827986 发表于 2015-5-28 21:05
浙江螃蟹 发表于 2015-5-28 19:52
我试过了,这蛇他吃了东西后老是不长大呀,

说了只是雏形
czr27 发表于 2015-5-28 21:15
浙江螃蟹 发表于 2015-5-28 19:52
我试过了,这蛇他吃了东西后老是不长大呀,

他至少加上数据结构才能实现
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-13 23:23

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表