签到

06月20日
尚未签到

共有回帖数 0

    做月子

    等级:
    大神帮帮忙…帮我看看蛇神身怎么转向
    #include stdio.h
    #include conio.h
    #include stdlib.h
    #define W 30
    #define H 20
    char *pmap, *fmap;
    char *head, *tail;// 蛇头,蛇身和蛇身尾
    char *belly[H*W];
    char I = H / 2, J = W / 2;
    int k=0, i, j, p;
    int a, b;
    int x = 1, y = 1;
    char map[H][W];
    void init_map();// 初始化地图
    void put_food();// 放食物
    void key_gain();// 键盘获取
    void snake();// 蛇
    void draw_map();// 绘制地图
    void cartoon();// 动画
    int main(void)
    {
    cartoon();
    return 0;
    }
    void init_map()
    {
    for (i = 0; i  H; i++)
    {
    for (j = 0; j  W; j++)
    {
    if (i == 0 || i == H - 1 || j == 0 || j == W - 1)
    {
    map[j] = '9';
    }
    else
    {
    map[j] = '0';
    }
    }
    }
    return;
    }
    void put_food()
    {
    do
    {
    a = random() % (H - 2) + 1;
    b = random() % (W - 2) + 1;
    }
    while (map[a] != '0');
    fmap = &map[a];
    *fmap = '4';
    return;
    }
    void key_gain()
    {
    if (kbhit())
    {
    p = getch();
    }
    switch (p)
    {
    case '2':
    I--;
    break;
    case '8':
    I++;
    break;
    case '4':
    J--;
    break;
    case '6':
    J++;
    break;
    }
    }
    void snake()// 模拟蛇
    {
    belly[k]= &map[J];
    *belly[k]= '1';
    return;
    }
    void draw_map()
    {
    for (i = 0; i  H; i++)
    {
    for (j = 0; j  W; j++)
    {
    switch (map[j])
    {
    case '9':
    printf("33[41;33m 33[40;37m");
    break;
    case '0':
    printf("33[42;32m 33[40;32m");
    break;
    case '4':
    printf("33[43;32m 33[40;32m");
    break;
    case '1':
    printf("33[44;32m 33[44;32m");
    }
    }
    printf("n");
    }
    return;
    }
    void cartoon()
    {
    init_map();
    for (;;)
    {
    k++;
    snake();
    draw_map();
    key_gain();
    usleep(300000);
    clrscr();
    }
    return;
    }

    楼主 2015-07-28 08:21 回复

共有回帖数 0
  • 回 帖
  • 表情 图片 视频
  • 发表

登录直线网账号

Copyright © 2010~2015 直线网 版权所有,All Rights Reserved.沪ICP备10039589号 意见反馈 | 关于直线 | 版权声明 | 会员须知