Quiz Wer wird Milionär? mit C

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • du must phax seinen Quelltext natürlich um:
    "getQuestion" und
    "getAnswer" erweitern.

    @chen: Überleg mal wie umfangreich dein Quelltext wird so wie die Sache angehst. :(
    phax seine Variante wird viel kürzer. Okay deine Variante läst sich mit einigen
    Änderungen auch anpassen, das sie nicht so gross wird. Das solltest du aber
    möglichst bald angehen sonst verlierst du die Lust/den Überblick.

    MfG Bcc-fan
  • du brauchst eine zugriffsfunktion auf die entsprechnden elemente ;)

    Quellcode

    1. const char* getQuestion (question_t* pQuestion)
    2. {
    3. assert (pQuestion);
    4. assert(pQuestion->question);
    5. return pQuestion->question;
    6. }
    7. const char* getAnswer (question_t* pQuestion, unsigned int nIndex)
    8. {
    9. assert (pQuestion);
    10. assert (nIndex < pQuestion->answerCount);
    11. assert (pQuestion->answers[nIndex])
    12. return pQuestion->answers[nIndex];
    13. }
    Alles anzeigen


    \\e: set -> get
  • Wie sähe denn dann eine Frage aus, die ich mit setQuestion und setAnswer eingebe?
    Das mache ich doch mit

    Quellcode

    1. question_t* p = newQuestion (4);
    2. setQuestion (p,"Wie geht das?");
    3. setAnswer (p, 0, "a)");
    4. setAnswer (p, 1, "b)");
    5. setAnswer (p, 2, "c)");
    6. setAnswer (p, 3, "d)");


    Mein Problem ist, dass ich mir nicht ganz vorstellen kann, wie die Funktionen dann im Quelltext aussehen...versteht ihr was ich meine?
  • Du musst dir eine Liste von "question_t*" speichern. (Lineare einfach verkettete Liste habt ihr sicher schon gelernt, oder?)
    Am Anfang fügst du Fragen ein (1x newQuestion, 1x setQuestion, Nx setAnswer)
    Dann werden die Fragen ausgeführt (User sieht Frage und muss Antwort eingeben)
    Wenn er nicht mehr will muss für jede Frage in der List "deleteQuestion" aufgerufen werden.

    Klarer?
  • Chen wie weit bist du? Hier mal wieder ein Häppchen:

    Quellcode

    1. #include <stdio.h> // Standardfunktionen Ein- und Ausgabe
    2. #include <conio.h> // Standardfunktionen Tastatur und Bildschirm
    3. #include <math.h> // mathematische Standardfunktion
    4. #include <string.h> //
    5. #include "struct_daten.h" // Strukturen des Fragenpools und Prototypen
    6. int main()
    7. {
    8. printf("\n\t\tWer wird Millionaer?\n");
    9. question_t* p = newQuestion (4);
    10. setQuestion (p,"Wie geht das?");
    11. setAnswer (p, 0, "a)");
    12. setAnswer (p, 1, "b)");
    13. setAnswer (p, 2, "c)");
    14. setAnswer (p, 3, "d)");
    15. printf("Die Frage: %s\n", getQuestion(p));
    16. printf("Antwort 1: %s\n", getAnswer(p, 0));
    17. printf("Antwort 2: %s\n", getAnswer(p, 1));
    18. /* todo... */
    19. deleteQuestion (p);
    20. getch();
    21. return 0;
    22. }
    Alles anzeigen