尊宝国际娱乐APP下载

设为首页收藏本站

编程十万个为什么,属于程序员的编程论坛

 找回密码
 5秒快速注册
QQ登录 只需一步,快速开始
搜索
查看: 19828|回复: 90
打印 上一主题 下一主题

[C/C++每日一练] C/C++贪吃蛇2011/4/30

  [复制链接]
跳转到指定楼层
传说中的楼主
发表于 2011-4-30 14:30:27 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
PStatus"> 本帖最后由 凌云紫冥 于 2011-5-1 21:14 编辑

第一天写出了框框。                C/C++贪吃蛇2011/5/1
第二天写出了增加头结点。
第三天写出了删除尾结点。
今天当然就是蛇的移动了,蛇是怎么移动的呢?
首先用一个枚举变量enum { UP, DOWN, LEFT, RIGHT } point; 来定义蛇的方向。
初始化point = RIGHT; 将这条语句放到我们的init()函数中即可。
在添加三个结点,这样蛇就有了一定长度,都放到init()函数中。
  1. void init()  //初始化数组,使其形成围墙
  2. {
  3. int i;
  4. for (i = 0; i < N; ++i)
  5. {
  6.   game[i][0] = game[i][N-1] = 1; //每行的第一列和最后一列赋为1
  7.   game[0][i] = game[N-1][i] = 1; //每行的第一行和最后一行赋为1
  8. }
  9. head = tail;
  10. point = RIGHT;
  11. add_head(6, 4);
  12. add_head(6, 5);
  13. add_head(6, 6);
  14. }
复制代码

今天的题目是:定义一个move()函数,使得蛇能够按point指向的方向移动。
比如point = RIGHT,那么move就控制蛇向右移动,(增加一个头结点右边的结点,删除最后一个结点)
蛇怎么会动还是个问题,详见分析。
游客,如果您要查看本帖隐藏内容请回复
单选投票, 共有 16 人参与投票
您所在的用户组没有投票权限
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友 !wechat_share!!wechat_share!
收藏收藏6 转播转播 分享分享3 分享淘帖 顶一个顶一个3 踩一下踩一下

BcWhy版权声明1、本帖可以任何形式转载到任何媒体,但必须带上本贴的URL连接,否则即视为同意支付 1000 元报酬
2、本主题所有言论和图片纯属凌云紫冥个人意见,与本论坛立场无关
3、本主题由该帖子作者凌云紫冥发表,该帖子作者凌云紫冥与本站享有帖子相关版权
4、如本帖侵犯到任何版权问题,请立即告知本站,本站将及时予与删除并致以最深的歉意
5、本站管理员和版主有权不事先通知发贴者而删除本文

!related_be_replied_threads!
令人羡慕的沙发
 楼主| 发表于 2011-4-30 14:53:49 | 只看该作者
论坛发代码缩进老是乱。。
可以复制好代码到编译器里Ctrl+A 全选中,再Alt+F8 调整好缩进。
回复 使用道具 举报
冷板凳
发表于 2011-4-30 15:00:14 | 只看该作者
顶顶更健康
回复 使用道具 举报
4
发表于 2011-4-30 16:23:10 | 只看该作者
本帖最后由 1609 于 2011-4-30 17:45 编辑

void move()
{
int a = head->x;
int b = head->y;

switch(point)
{
case UP: a--;break;
case DOWN: a++;break;
case LEFT: b--;break;
case RIGHT:b++;break;
default:break;
}

if(game[a] == 1) output_failed();

add_to_snake(a,b);
delete_tail();
}
回复 使用道具 举报
5
 楼主| 发表于 2011-4-30 17:03:44 | 只看该作者
回复 1609 的帖子

if(game[a] = 1) output_failed();

这里? if是game[a] == 1吧。
我一般写1 == game[a] 这样就不怕漏=了
我的还得改改,你的简单多了。
回复 使用道具 举报
6
发表于 2011-4-30 17:43:58 | 只看该作者
回复 凌云紫冥 的帖子

刚刚要出去下,  就偷个懒写的。。。  
回复 使用道具 举报
7
 楼主| 发表于 2011-4-30 17:45:38 | 只看该作者
回复 1609 的帖子

不错啊。
回复 使用道具 举报
8
 楼主| 发表于 2011-4-30 17:47:08 | 只看该作者
【b】就是把字体给加粗了,,搞得b都不见了。。。。我晕了
回复 使用道具 举报
9
发表于 2011-4-30 17:48:07 | 只看该作者
回复 凌云紫冥 的帖子

下半年就研三了  该找工作了  程序写成这样  还不错?
回复 使用道具 举报
10
 楼主| 发表于 2011-4-30 17:49:33 | 只看该作者
回复 1609 的帖子

。。。。。。。。。
原来是学长啊
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 5秒快速注册
本版积分规则
关闭

BcWhy推荐上一条 /1 下一条

QQ|关于我们|最新帖子|小黑屋|手机版|编程十万个为什么 ( 粤ICP备16108587号-2   GMT+8, 2017-8-18 05:26 , Processed in 0.176951 second(s), 34 queries , File On.
Powered by Discuz! X3.3 © 2001-2017 Comsenz Inc.
快速回复 返回顶部 返回列表
尊宝国际娱乐APP下载亚虎娱乐手机官方网站亚虎国际娱乐齐乐娱乐国际
优乐娱乐齐乐娱乐网优乐娱乐龙8娱乐手机下载
优乐娱乐亚虎娱乐手机官方网站亚虎国际娱乐梦之城娱乐
尊宝国际娱乐APP下载尊宝国际手机首页尊宝国际娱乐城齐乐娱乐国际
优乐娱乐齐乐娱乐网优乐娱乐龙8娱乐手机下载