#include <bits/stdc++.h>
#include <windows.h>
#include <conio.h>
using namespace std;
/****全局变量表示食物*****/
int a,b;
void gotoxy(int x,int y)
{
HANDLE hout;
COORD coord;
coord.X=x;
coord.Y=y;
hout=GetStdHandle(STD_OUTPUT_HANDLE);
SetConsoleCursorPosition(hout,coord);
}
void food()
{
srand( (unsigned)time(NULL) ); /// 截取毫秒
a=rand()%50 + 1; ///随机生成 x
b=rand()%28 + 1;///随机生成 y
gotoxy(a,b);
cout<<char(12);
}
void f(int n)///打印字符
{
cout<< (char)n;
}
void ShowMain()///函数功能打印边框
{
system("color 24");
/***
0 = 黑色 8 = 灰色
1 = 蓝色 9 = 淡蓝色
2 = 绿色 A = 淡绿色
3 = 浅绿色 B = 淡浅绿色
4 = 红色 C = 淡红色
5 = 紫色 D = 淡紫色
6 = 黄色 E = 淡黄色
7 = 白色 F = 亮白色
***/
for( int i=0; i<=50; i++) ///上边的
{
gotoxy(i,0);
f(12);
}
for(int i=0; i<=30; i++) ///右边的
{
gotoxy(60,i);
f(12);
}
for(int i=0; i<=50; i++) ///下面的
{
gotoxy(i,30);
f(12);
}
for(int i=0; i<=30; i++) ///左边的
{
gotoxy(0,i);
f(12);
}
gotoxy(10+2,29);
cout<<"山东理工大学计算机科学与技术学院软件1603 赵德锋\n";
}
void judge(int ch ,int *x,int *y)
{
switch(ch)
{
case 72:///上
(*y)--;
break;
case 'w':///上
(*y)--;
break;
case 'W':///上
(*y)--;
break;
case 75:///左
(*x)--;
break;
case 'a':///左
(*x)--;
break;
case 'A':///左
(*x)--;
break;
case 77:///右
(*x)++;
break;
case 'd':///右
(*x)++;
break;
case 'D':///右
(*x)++;
break;
case 80:///下
(*y)++;
case 's':///下
(*y)++;
case 'S':///下
(*y)++;
break;
}
}
int main()
{
ShowMain();///显示主页面
gotoxy(5,5);///设置 (5,5)为默认开始位置
f(12);
int x=5;
int y=5;
food();///函数功能随机生成 食物
int sum=0;///积分;
while(1)
{
int ch=getch();///读入用户的方向
gotoxy(x,y);
f(' ');
judge(ch,&x,&y);///判读用户输入的方向
gotoxy(x,y);
f(12);
if(x<=0 || x>=59 || y<=0 || y>=30)
{
gotoxy(25,15);
cout<<"GAME OVER\n";
cout<<"恭喜您的分数是"<<sum<<"分";
system("pause");
break;
}
if(x==a && b==y)
{
sum+=10;
food();///在生成一个食物
}
}
system("cls");
cout<<"您是否要继续游戏(1/0)"<<endl;
int choose;
cin>>choose;
if(choose==1)
ShellExecute(NULL, "open", "http://www.4399.com/flash/186083_1.htm", NULL, NULL, SW_MINIMIZE);///打开特定网站
return 0;
}
#include <windows.h>
#include <conio.h>
using namespace std;
/****全局变量表示食物*****/
int a,b;
void gotoxy(int x,int y)
{
HANDLE hout;
COORD coord;
coord.X=x;
coord.Y=y;
hout=GetStdHandle(STD_OUTPUT_HANDLE);
SetConsoleCursorPosition(hout,coord);
}
void food()
{
srand( (unsigned)time(NULL) ); /// 截取毫秒
a=rand()%50 + 1; ///随机生成 x
b=rand()%28 + 1;///随机生成 y
gotoxy(a,b);
cout<<char(12);
}
void f(int n)///打印字符
{
cout<< (char)n;
}
void ShowMain()///函数功能打印边框
{
system("color 24");
/***
0 = 黑色 8 = 灰色
1 = 蓝色 9 = 淡蓝色
2 = 绿色 A = 淡绿色
3 = 浅绿色 B = 淡浅绿色
4 = 红色 C = 淡红色
5 = 紫色 D = 淡紫色
6 = 黄色 E = 淡黄色
7 = 白色 F = 亮白色
***/
for( int i=0; i<=50; i++) ///上边的
{
gotoxy(i,0);
f(12);
}
for(int i=0; i<=30; i++) ///右边的
{
gotoxy(60,i);
f(12);
}
for(int i=0; i<=50; i++) ///下面的
{
gotoxy(i,30);
f(12);
}
for(int i=0; i<=30; i++) ///左边的
{
gotoxy(0,i);
f(12);
}
gotoxy(10+2,29);
cout<<"山东理工大学计算机科学与技术学院软件1603 赵德锋\n";
}
void judge(int ch ,int *x,int *y)
{
switch(ch)
{
case 72:///上
(*y)--;
break;
case 'w':///上
(*y)--;
break;
case 'W':///上
(*y)--;
break;
case 75:///左
(*x)--;
break;
case 'a':///左
(*x)--;
break;
case 'A':///左
(*x)--;
break;
case 77:///右
(*x)++;
break;
case 'd':///右
(*x)++;
break;
case 'D':///右
(*x)++;
break;
case 80:///下
(*y)++;
case 's':///下
(*y)++;
case 'S':///下
(*y)++;
break;
}
}
int main()
{
ShowMain();///显示主页面
gotoxy(5,5);///设置 (5,5)为默认开始位置
f(12);
int x=5;
int y=5;
food();///函数功能随机生成 食物
int sum=0;///积分;
while(1)
{
int ch=getch();///读入用户的方向
gotoxy(x,y);
f(' ');
judge(ch,&x,&y);///判读用户输入的方向
gotoxy(x,y);
f(12);
if(x<=0 || x>=59 || y<=0 || y>=30)
{
gotoxy(25,15);
cout<<"GAME OVER\n";
cout<<"恭喜您的分数是"<<sum<<"分";
system("pause");
break;
}
if(x==a && b==y)
{
sum+=10;
food();///在生成一个食物
}
}
system("cls");
cout<<"您是否要继续游戏(1/0)"<<endl;
int choose;
cin>>choose;
if(choose==1)
ShellExecute(NULL, "open", "http://www.4399.com/flash/186083_1.htm", NULL, NULL, SW_MINIMIZE);///打开特定网站
return 0;
}