c++实现随机移动

写下这篇文章是我博客生涯的第一天,我10岁,第一篇文章当然比较简单了。

就分享一下自己写的程序而已! 以后要努力!努力!努力写文章!

我写了一个随机移动的c++程序,先上移动主要代码。

void chu(){
	for(int i=0;i<40;i++){
		for(int j=0;j<40;j++)
		G[i][j]=' ';
	}
}
void map1(){
	G[x][y]='#';
	color(11);
	for(int i=1;i<=42;i++)
	cout<<'*';
	cout<<endl; 
	for(int i=0;i<40;i++){
		color(11);
		cout<<'*';
		color(14);
		for(int j=0;j<40;j++)
		cout<<G[i][j];
		color(11);
		cout<<'*';
		cout<<endl;
	}
	color(11);
	for(int i=1;i<=42;i++)
	cout<<'*';	
	color(7);
}
void sui(){
	G[x][y]=' ';
	int xa;
	srand(time(0)+q);
	if(x==0&&y==0){
		xa=rand()%2;
		if(xa==0){
			y++;
		}else{
			x++;
		}
	}else if(x==0&&y==39){
		xa=rand()%2;
		if(xa==0){
			x--;
		}else{
			y++;
		}
	}else if(x==39&&y==0){
		xa=rand()%2;
		if(xa==0){
			x++;
		}else{
			y--;
		}
	}else if(x==39&&y==39){
		xa=rand()%2;
		if(xa==0){
			y--;
		}else{
			x--;
		}
	}else if(x==0&&(y>0&&y<39)){
		xa=rand()%3;
		if(xa==0)
		x++;
		else if(xa==1)
		y--;
		else
		y++;
	}else if(y==0&&(x>0&&x<39)){
		xa=rand()%3;
		if(xa==0)
		x++;
		else if(xa==1)
		x--;
		else
		y++;		
	}else if(y==39&&(x>0&&x<59)){
		xa=rand()%3;
		if(xa==0)
		x++;
		else if(xa==1)
		x--;
		else
		y--;				
	}else if(x==39&&(y>0&&y<59)){
		xa=rand()%3;
		if(xa==0)
		y++;
		else if(xa==1)
		x--;
		else
		y--;		
	}else{
		xa=rand()%4;
		if(xa==0)
		y--;
		else if(xa==1)
		y++;
		else if(xa==2)
		x--;
		else
		x++;
	}
}

这是移动,画地图和初始化,再来一个效果。

用一大堆的规则来限制#,不让它出边界。

对了,我用了一个自己的头文件,里面有按钮,调整颜色。

大家记得把头文件zyh.h和color()函数删掉。

代码:https://download.csdn.net/download/m0_60630094/20680247

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

c++学生

你的鼓励是我进步的台阶

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值