Hello!!!
I am trying to get my program to run in Visual Studio 2012, but it won't. I keep receiving errors on my brackets, such as missing function header or 'expected a declaration'. I knew they were messed up from the start, but I just can't seem to get it right. Could someone please help me with this and explain where I messed up? Thank you very much! Here is my code:

#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
#define MAXGUESSES 5

int SingleGame(char file_letter);

int main()
{
    //declare additional variables
int PlayGames = 4,
i = 0;
FILE * infile;
char letter;
    //display instructions
    printf("Welcome to the Letter Guessing Game!\n");
    printf("You will enter the number of games that you want to play, which is 1-4 games\n");
    printf("You have 5 chances to guess each letter\n");
    printf("Let's begin!\n");

    //open file
    infile = fopen("lettersin.txt", "r");

    //get number of games to play
    printf("How many games would you like to play?(1-4)\n");
    scanf("%d", &PlayGames);

    for(i=0;i<PlayGames;i++)
    {
        //get a letter from file
        fscanf(infile, " %c", &letter);

        //Play one game
        printf("Let's play a game %d\n", i);

        //check for win or lose
        SingleGame (letter);
    }

    //close file
    fclose(infile);
    return 0;
}
int SingleGame(char file_letter);
{

//Function definitions
    int numGuesses = 0;
    while(numGuesses < MAXGUESSES);
    char RetrieveGuess = 0;
    int PlayGames = 0;

    {
        printf("Enter a guess\n");
        scanf("%c" , &RetrieveGuess);
        if(file_letter == RetrieveGuess);
        {
            printf("You guessed it!\n");
        }
        else
        {
            if(file_letter>RetrieveGuess);
            {
                printf("The letter you are trying to guess comes before:%d\n",RetrieveGuess);
            }

            else if(file_letter<RetrieveGuess);
            {
                printf("The letter you are trying to guess comes after:%d\n", RetrieveGuess);
            }

            {
            numGuesses = numGuesses +1;
            }


}

Recommended Answers

All 2 Replies

You're putting semi-colons(;) where they don't belong. They are needed in the function prototype but not in the function declaration. if statements don't take semi-colons either.

What tinstaafl said. Look at the function definition on line 43: int SingleGame(char file_letter);

You want to remove the semicolon as that makes the compiler pretty much ignore the rest of the code.

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.