A C# console application to help kids train for Battle of Books competitions through interactive quizzes.
- Book Library: Manage a collection of books with questions
- Random Quiz: Get random questions from all available books
- Score Tracking: Track correct/incorrect answers and see your percentage
- Interactive Menu: Easy-to-use console interface
- Add Books & Questions: Dynamically add new books and questions
- Sample Data: Pre-loaded with questions from popular children's books
The application comes with sample questions from:
- Harry Potter and the Sorcerer's Stone by J.K. Rowling
- Charlotte's Web by E.B. White
- Wonder by R.J. Palacio
- The Lightning Thief by Rick Riordan
- Make sure you have .NET 8.0 SDK installed
- Navigate to the project directory
- Run the following commands:
dotnet build
dotnet runWhen you run the application, you'll see a menu with options to:
- View Book List: See all available books and question counts
- Start Quiz: Take a quiz with a specified number of questions
- Add New Book: Add a new book to the library
- Add Question to Book: Add questions to existing books
- Exit: Close the application
BattleOfBooks/
├── Models/
│ ├── Book.cs # Book model with title, author, and questions
│ └── Question.cs # Question model with text and answer
├── Services/
│ └── QuizService.cs # Quiz logic and scoring
├── Program.cs # Main program with user interface
└── BattleOfBooks.csproj # Project file
You can easily extend this application by:
- Adding more books and questions through the menu
- Implementing question difficulty levels
- Adding timer functionality for timed quizzes
- Saving/loading books from a file or database
- Creating multiplayer modes for competitive play
- .NET 8.0 SDK or later
- Windows, macOS, or Linux
Free to use for educational purposes.