I'm having issues with my code. I am trying to build a game and it somehow gives errors when reaching the main loops. I will show to code and the errors I'm getting.

Just a small note, the point when choosing option 1 and playing the game is that the game loops after the correct answer has been given and presents the player with a second random word, and keeps doing this until the player writes 'quit'.

This is the code:
Code:
#include <iostream>
#include <string>
#include <cstdlib>
#include <ctime>
using namespace std;

int main()
{
    enum fields {WORD, HINT, NUM_FIELDS};
    const int NUM_WORDS = 3;
    const string WORDS[NUM_WORDS][NUM_FIELDS] =
    {
        {"jumble1", "First word."},
        {"jumble2", "Second word."},
        {"jumble3", "Third word."}
    };
    
    srand(static_cast<unsigned int>(time(0)));
    int choice = (rand() % NUM_WORDS);
    string theWord = WORDS[choice][WORD];
    string theHint = WORDS[choice][HINT];
    
    string jumble = theWord;
    int length = jumble.size();
    for (int i = 0; i < length; ++i)
    {
        int index1 = (rand() % length);
        int index2 = (rand() % length);
        char temp = jumble[index1];
        jumble[index1] = jumble[index2];
        jumble[index2] = temp;
    }

    int choice;
    bool choiceNotMade = true;

	while (choiceNotMade)
	{
		cout << "[1] Play\n";
		cout << "[2] Credits\n";
		cout << "[3] Quit\n\n";

                cout << "Your choice: ";
		cin >> choice;
        }
    
            switch (choice)
            {
            case 1:
                cout << "Unscramble the letters to make a word.\n";
                cout << "Enter 'hint' for a hint.\n";
                cout << "Enter 'quit' to quit the game.\n\n";
                cout << "The jumble is: " << jumble;

                string guess;
                cout << "\n\nYour guess: ";
                cin >> guess;

                while ((guess != theWord) && (guess != "quit"))
                {
                    if (guess == "hint")
                    {
                        cout << theHint;
                    }
                    else
                    {
                        cout << "That's not the right word.";
                    }

                    cout << "\n\nYour guess: ";
                    cin >> guess;
                }

                if (guess == theWord)
                {
                    cout << "\nYou guessed it!\n";
                }

                cout << "\nThank you for playing.\n";

                system("Pause");
                choiceNotMade = false;
                break;

            case 2:
                cout << "\n\nThis game has been made by:\n\n";
                choiceNotMade = false;
                break;

            case 3:
                cout << "Program will exit";
                exit(1);

            default:
                cout << "\nYou did not pick a valid option.\n\n";
                choiceNotMade = false;
                break;  
            
                } 
    
    return 0;
}

And this is the error:
Code:
word_jumble.cpp: In function `int main()':
word_jumble.cpp:32: error: redeclaration of `int choice'
word_jumble.cpp:17: error: `int choice' previously declared here
word_jumble.cpp:83: error: jump to case label
word_jumble.cpp:53: error:   crosses initialization of `std::string guess'
word_jumble.cpp:88: error: jump to case label
word_jumble.cpp:53: error:   crosses initialization of `std::string guess'
word_jumble.cpp:92: error: jump to case label
word_jumble.cpp:53: error:   crosses initialization of `std::string guess'
word_jumble.cpp:83: warning: destructor needed for `guess'
word_jumble.cpp:83: warning: where case label appears here
word_jumble.cpp:83: warning: (enclose actions of previous case statements requiring destructors in their own scope.)
word_jumble.cpp:88: warning: destructor needed for `guess'
word_jumble.cpp:88: warning: where case label appears here
word_jumble.cpp:92: warning: destructor needed for `guess'
word_jumble.cpp:92: warning: where case label appears here
word_jumble.cpp:100:2: warning: no newline at end of file
make[2]: *** [build/Debug/MinGW-Windows/word_jumble.o] Error 1
make[1]: *** [.build-conf] Error 2
make: *** [.build-impl] Error 2