I have tried looking for an answer and fixing this myself but I have failed. I'm attempting to create a program that executes a letter guessing game. Please be advised that this IS homework. However, I'm not looking for answers, I am looking for insight. After executing this program I'm getting the error "The variable 'solution' is being used without being initialized C++.
Any ideas?
    #define _CRT_SECURE_NO_WARNINGS
    #include <stdio.h>
    #define MAXGUESSES 4
    void GuessItRules();
    int PlayOneGame(char);
    char GetTheLetter();
    int IsAWinner(char, char);
    void CompareTheLetters(char guess, char letter);
    int main()
    {
    //declare additional variables
    //declare FILE pointer
    FILE *inp;
    int numGames, i = 0;
    //letter from file
    char letter;
    //variable for the return of the PlayOneGame function
    int didYouWin;
    char solution;
    //display instructions
    GuessItRules();
    //connect to the file HINT: use fopen
    inp = fopen("letterinput.txt", "r");
    //get number of games to play
    printf("How many games? (1 to 5): ");
    scanf("%d", &numGames);
    //this for loop will allow the player to play more than one game
    //without recompiling
    for (i = 0; i < numGames; i++)
    {
        //get a letter from file - use fscanf
        fscanf(inp, "%c", &letter);
        //print the letter back onto the screen, just to test
        //printf("\nThe letter is %c\n", letter);
        //Play one game (Call PlayOneGame function)
        //remember the function has an int return type
        printf("Let's play game %d\n", i + 1);
        PlayOneGame(solution);
        //tell the player if they have won or lost (test the variable didYouWin)
      }
      //close file
    fclose(inp);
    return 0;
}
    char GetTheLetter()
    {
    char guess;
    printf("\nMake a guess (CAPITAL LETTERS ONLY):");
    scanf("%c", &guess);
    return guess;
    }
    void CompareTheLetters(char guess, char letter)
    {
    if (guess == letter)
    {
        printf("\nThe Letter and the guess are the same (%c)\n",guess);
    }
    else 
    if (guess < letter)
    {
        printf("The letter comes after your guess (%c)", guess);
    }
    else 
    if (guess > letter)
    {
        printf("The letter comes before your guess (%c)", guess);
    }
    }
    int IsAWinner(char guess, char letter)
    {
    if (guess == letter)
    {
        return 1;
    }
    else
        if (guess < letter)
        {
            return 0;
        }
        else
            if (guess > letter)
            {
                return 0;
            }
    }
    int PlayOneGame(char solution)
    {
    int numGuesses = 0;
    //SHOULD BE INITIALZED TO 1
    int winOrLose = 1;
    // user guess
    char guess = 0;
    //char solution = 0;
    char letter = 0;
    //As long as the user  has not used up the maximum number
    //of guesses and has not guessed correctly 
    //the game will continue using this while loop
    while (numGuesses < MAXGUESSES && winOrLose == 1)
    {
        printf("Getting guess number %d\n", numGuesses+1);
        //function call to GetTheletter - returns to guess variable
        GetTheLetter();
        //function call to IsAWinner - returns to winOrLose variable (0 or 1)
        IsAWinner(guess, letter);
        //function call to CompareTheLetters - gives the user  a message
        CompareTheLetters(guess, letter);
        //update counter for number of guesses used
        numGuesses = numGuesses + 1;
    }
    return winOrLose;  //(0 or 1)
    }
    //add the other function definitions
    void GuessItRules()
    {
    printf("Welcome to the Letter Guessing Game\n");
    printf("\nFirst, you will enter the number of games you want 
    to play (1 - 5      games)\n");
    printf("For each game you will have 4 chances to guess each letter\n");
    printf("Let's begin:\n");
    }
 
    