c언어 초보구요ㅜㅜ

지렁이 게임만들고있는대  소스보고 수정좀 해주세요ㅠㅠ

그리구 아직완성 못했는대 완성하려면 어떤 문법 더공부해야 할지도 가치 알려주시면 감사하겠습니다..ㅎㅎ

#include "stdafx.h"
#include <stdio.h>
#include <iostream>
#include <Windows.h>
#include <conio.h>
#include <stdlib.h>
using namespace std;

void Movexy(int x,int y); //지렁이이동을 위한함수 o
int GameRule(); //게임 규칙을 정하는 함수 o
int ControlWorm(char key, int *x, int *y, int x_m, int y_m); //지렁이 조종하게하는 함수 o
void WormMove(); //지렁이 이동함수 o
void GameMap(); //게임 화면 o
void WormManage(); //지렁이관리함수
void Fooditem(); //지렁이 먹이생성 함수
void WormTail(); //지렁이 꼬리를 관리하는 함수
void Progress(); //게임 진행을 위해 필요한 함수

 

#define left 75
#define right 77
#define up 72
#define down 80
#define ESC 27
#define X_MAX 79 
#define Y_MAX 24


int main()
{
 GameRule();
}

void WormManage()
{
 
}

void GameMap()
{
 int x=39,y=24;
 system("cls");
 printf("┌"); //위쪽
 
 for(int i=0; i<x-2 ;i++)
 {
  printf("─");
 }
 printf("┐");
 printf("\n");
 
 for(int j = 0;j<y-2;j++) //양옆
 {
  printf("│");
  for(int i = 0;i<x-2;i++)
  {
   printf("  ");
  }
  printf("│");
  printf("\n");
 }
 printf("└"); //아래

 for(int i=0 ; i<x-2 ; i++)
 {
  printf("─");
 }
 printf("┘");
}

int GameRule()
{
 
 int Userinput;
 Movexy(15,10);
 printf("게임을 시작하시려면 1 종료하시려면 0 을입력하시오 :  ");
 scanf("%d",&Userinput);
 if(Userinput==1)
 {
  WormMove();
 }
 else
 {
  printf("종료합니다.\n");
  return 0;
 }
}

void WormMove()
{
 system("cls");
 char key;
 int x=10, y=10;
 
 do
 {
  Movexy(x,y);
  printf("■");
  key = getch();
  do
  {
   if(ControlWorm(key, &x, &y, X_MAX, Y_MAX)==1)
   {
    return;
   }
   Movexy(x,y);
   printf("■");
   Sleep(50);
   system("cls");
   Movexy(1,1);
   GameMap();
  }
  while(!kbhit());
 }
 while(key!=27);
}

int ControlWorm(char key, int *x1, int *y1, int x_m, int y_m) //지렁이 조종함수
{
 int x =30, y=10;
 switch(key)
 {
  case left : //left
   
   (*x1)-=2;
   if(*x1<1)
   {
    *x1=1;
    Movexy(x,y);
    printf("GAME OVER\n");
    return 1;
   }
   break;

  case right : //right
   
   (*x1)+=2;
   if(*x1>x_m)
   {
    *x1=x_m;
    Movexy(x,y);
    printf("GAME OVER\n");
    return 1;
   }
   break;

  case up ://up
   
   (*y1)--;
   if(*y1<1)
   {
    *y1=1;
    Movexy(x,y);
    printf("GAME OVER\n");
    return 1;
   }
   break;

  case down : //down
   
   (*y1)++;
   if(*y1>y_m)
   {
    *y1=y_m;
    Movexy(x,y);
    printf("GAME OVER\n");
    return 1;
   }
   break;

  default :
  
   return 0;
 }
}

void Movexy(int x, int y)

{

    COORD Pos = { x-1, y-1 };

    SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), Pos);

}