2014-10-07 4 views
-3

У меня есть некоторые проблемы, когда я пытаюсь скомпилировать свою очень простую игру C ..C, GCC ошибка компиляции простая программа

Он говорит:

«линия 125 ошибка: ожидается идентификатор или„(“перед ' возвращение» возврата 0;»

и

"линия 126 ошибка: ожидается идентификатор или '(' перед '}' маркер }"

(строка 125 и 126 являются 2 последние строки в моем коде)

<#include <stdio.h> 
    #include <time.h> 
    #include <stdlib.h> 



    int main (void) 

    { 

     int headbang,x,y,fx,fy; 
     char choice; 

     headbang = 0; 



    { 
    srand(1); 
    int fx = rand()%5 + 1; 
    } 
    { 
    srand(2); 
    int fy = rand()%5 + 1; 
    } 
    { 
    srand(3); 
    int x= rand()%5 + 1; 
    } 
    { 
    srand(4); 
    int y= rand()%5 + 1; 
    } 


     printf ("It is pitch black. You have no idea how you got here, but you \nknow that you have to find some source of light in order to get \nout. \n \n"); 



     printf ("Where do you want to go? "); 


     { 
     scanf(" %c", &choice); 


     switch (choice) 
    { 
     case 'n': 
    x++; 

    printf ("You crawl North.\n"); 
    break; 



     case 's': 
    x--; 

    printf("You crawl South \n"); 


     case 'e': 

    y++; 

    printf ("You crawl East.\n"); 
    break; 

     case 'w': 


    y--; 

    printf ("You crawl West.\n"); 
    break; 

    default: 
    printf ("Sorry, you can only go north, south, east or west."); 


    } 
     if (x==0 || y==0 || x==6 || y==6) 
    { 
    printf("Ouch! You hit your head in the wall."); 
    headbang++; 

     if (x==0) 
    { 
    x++; 
    } 

     else if (y==0) 
    { 
    y++; 
    } 

     else if (x==6) 
    { 
    x--; 
    } 

     else if (y==6) 
    { 
    y--; 
    } 

    } 

     if (headbang == 2) 
    { 
    printf ("You slip into a deep sleep, never to wake up again..."); 
    } 

     if (x==fx && y==fy) 
    { 
    printf("You feel something on the floor. It is a flashlight! \n You wake up, finding yourself in your own bed. What a nightmare!"); 
    break; 
    } 


    while (!(x==fx && y==fy)); 
    } 
    } 
     return 0; 
    } 
+3

Вот BIG совет: не всегда напишите много кода перед компиляцией. Научитесь писать небольшой фрагмент кода, а затем проверяйте его, прежде чем двигаться дальше. – Dan

ответ

3

вы должны поставить возвращение перед вторым к последнему } и удалить последний кронштейн

+4

Имейте upvote для определения того, что в этом ужасно отформатированном сообщении;) – MrHug

+0

+1. Я попытался исправить это и сдался. – admdrew

Смежные вопросы