#include #include #include #include #define BUFFER_SIZE 100 int main(int argc, char *argv[]) { int i, guess, target, goes, max = 100; char buffer[BUFFER_SIZE]; srand((unsigned) time(NULL)); // Initialize random number generator. printf("Welcome!\n"); for(i = 0; i < 8; i++) { printf("="); } printf("\n\n"); do { goes = 0; //Zähler für die Versuche target = rand() % max + 1; //Zufallszahl mod max (in diesem Fall 100) +1 guess = 0; //Variable für die Versuche wir nullgesetzt while(guess != target) { //schleifenanfang: solange die Zufallszahl nicht erraten wurde... printf("Enter your guess: "); //eingabeaufforderung fgets(buffer, BUFFER_SIZE - 1, stdin); //einlesen und sicherstellen ob die eingabe nicht zu lang ist while(!sscanf(buffer, "%d", &guess)) { //einlesen der eingabe printf("Enter a number! "); fgets(buffer, BUFFER_SIZE - 1, stdin); } if(guess < target) //abgleich der eingegebenen zahl mit der zufallszahl printf("Too low! "); else if(guess > target) // "" printf("Too high! "); ++goes; //anzahl der versuche wird erhöht } printf("Well done, it was %d!\n", target); printf("You took %d goes.\n\n", goes); printf("Another go? (y/n) "); fgets(buffer, BUFFER_SIZE - 1, stdin); } while (buffer[0] == 'y' || buffer[0] == 'Y'); printf("Goodbye!\n"); return EXIT_SUCCESS; }