Kleines Code-Eingabe-Programm

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

  • Kleines Code-Eingabe-Programm

    Hallo, ich möchte ein kleines Programm in C schreiben, bei dem der user einen Code eingeben soll und das Programm dann entweder "zu klein" oder "zu groß" oder "Stimmt" ausgeben soll. Ich habe leider keinen Compiler für Windows, kenn mich da auch nicht aus, bin blutiger Anfänger, aber vielleicht kann ja mal jemand draufgucken ob das so funktionieren würde.

    Quellcode

    1. #! /usr/local/bin/tcc -run
    2. #include <stdio.h>
    3. int a;
    4. int x;
    5. main()
    6. a=123
    7. {
    8. printf("Achtung! \t3-stelliger Zahlencode! \tBitte geben Sie den richtigen Code ein:\t");
    9. scanf("%d",x);
    10. if (x==123)
    11. {
    12. printf("Richtiger Code; Zugang gewährt!\t");
    13. }
    14. if (x!=123)
    15. {
    16. printf("Falscher Code!\t");
    17. }
    18. if (x<123)
    19. {
    20. printf("Eingegebener Code ist zu niedrig!\t")
    21. }
    22. if (x>123)
    23. {
    24. printf("Eingegebener Code ist zu hoch!\t")
    25. }
    26. }
    Alles anzeigen


    Und, wenn das geht, wie kann ich daraus eine Schleife machen? Also dass es bei einer falschen Eingabe von vorne losgeht?

    Würde mich sehr über Hilfe freuen! Danke! :D
    Gruß,
    Pit
  • Quellcode

    1. #! /usr/local/bin/tcc -run
    2. #include <stdio.h>
    3. int main()
    4. {
    5. int a=123; // a wird nicht gebraucht?!
    6. int x;
    7. // /n newline statt /t Tabulator (sieht besser aus):
    8. printf("Achtung! \n3-stelliger Zahlencode!\n");
    9. while(1)
    10. {
    11. printf("Bitte geben Sie den richtigen Code ein: ");
    12. scanf("%d",&x); // Adresse von x übergeben
    13. if (x==123)
    14. {
    15. printf("Richtiger Code; Zugang gewährt!\n");
    16. break; // Aus Schleife springen
    17. }
    18. else if (x!=123)
    19. printf("Falscher Code!\n");
    20. else if (x<123)
    21. printf("Eingegebener Code ist zu niedrig!\n");
    22. else if (x>123)
    23. printf("Eingegebener Code ist zu hoch!\n");
    24. }
    25. return 0;
    26. }
    Alles anzeigen
  • while(1) führt dazu, dass die while-Schleife endlos ausgeführt wird, da die Schleifenbedingung (1) immer true ist. Das return 0 bewirkt den Rücksprung aus der aktuellen Funktion, in dem Fall also aus deinem Programm ins OS zurück. Die Zahl dahinter ist der jeweilige Rückgabewert, anhand dessen man zB Werte oder Fehlercodes übergeben kann.