|
@ -0,0 +1,56 @@ |
|
|
|
|
|
#include <stdio.h> |
|
|
|
|
|
#include <stdlib.h> |
|
|
|
|
|
#include <string.h> |
|
|
|
|
|
|
|
|
|
|
|
// Struktur für eine Frage im Quiz |
|
|
|
|
|
struct Frage { |
|
|
|
|
|
char text[100]; |
|
|
|
|
|
char antwort1[50]; |
|
|
|
|
|
char antwort2[50]; |
|
|
|
|
|
char antwort3[50]; |
|
|
|
|
|
int korrekteAntwort; |
|
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
// Funktion, um eine Frage zu erstellen |
|
|
|
|
|
struct Frage erstelleFrage(char *text, char *antwort1, char *antwort2, char *antwort3, int korrekteAntwort) { |
|
|
|
|
|
struct Frage frage; |
|
|
|
|
|
strcpy(frage.text, text); |
|
|
|
|
|
strcpy(frage.antwort1, antwort1); |
|
|
|
|
|
strcpy(frage.antwort2, antwort2); |
|
|
|
|
|
strcpy(frage.antwort3, antwort3); |
|
|
|
|
|
frage.korrekteAntwort = korrekteAntwort; |
|
|
|
|
|
return frage; |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
// Funktion, um eine Frage anzuzeigen und die Antwort des Benutzers zu überprüfen |
|
|
|
|
|
int zeigeFrage(struct Frage frage) { |
|
|
|
|
|
printf("%s\n", frage.text); |
|
|
|
|
|
printf("1. %s\n", frage.antwort1); |
|
|
|
|
|
printf("2. %s\n", frage.antwort2); |
|
|
|
|
|
printf("3. %s\n", frage.antwort3); |
|
|
|
|
|
|
|
|
|
|
|
int benutzerAntwort; |
|
|
|
|
|
printf("Deine Antwort (1, 2 oder 3): "); |
|
|
|
|
|
scanf("%d", &benutzerAntwort); |
|
|
|
|
|
|
|
|
|
|
|
return (benutzerAntwort == frage.korrekteAntwort); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
int quiz() { |
|
|
|
|
|
struct Frage fragen[3]; |
|
|
|
|
|
fragen[0] = erstelleFrage("Was ist die Hauptstadt von Frankreich?", "Berlin", "Paris", "London", 2); |
|
|
|
|
|
fragen[1] = erstelleFrage("Welches ist das groesste Saeugetier?", "Elefant", "Wal", "Giraffe", 2); |
|
|
|
|
|
fragen[2] = erstelleFrage("Wer hat die Relativitaetstheorie entwickelt?", "Isaac Newton", "Albert Einstein", "Galileo Galilei", 2); |
|
|
|
|
|
fragen[3] = erstelleFrage("Wer ist bundeskanzler?", "", "Thomas Mueller", "Olaf scholz", 2); |
|
|
|
|
|
// Quiz starten |
|
|
|
|
|
int punktzahl = 0; |
|
|
|
|
|
int i; |
|
|
|
|
|
for (i = 0; i < 4; i++) { |
|
|
|
|
|
punktzahl +=zeigeFrage(fragen[i]); |
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
// Ergebnis anzeigen |
|
|
|
|
|
printf("Deine Punktzahl: %d / %d\n", punktzahl, i); |
|
|
|
|
|
|
|
|
|
|
|
return 0; |
|
|
|
|
|
} |