Home > C > Einlesen und ausgeben von Variablen mit scanf

Einlesen und ausgeben von Variablen mit scanf

Einlesen

Mit dem Befehl scanf wartet das Programm auf eine Eingabe über die Tastatur. Diese Eingabe kann man wiederrum in eine Variable abspeichern und später dann aufrufen. Bevor man aber etwas eingeben kann, muss man den genauen Datentyp bekannt machen.

Beispiel:

scanf("%i", &k);   /* Liest in die int-Variable k ein.
Zuerst den Datentyp bestimmen danach die Variable angeben */
 
scanf("%i", &c)/* Liest in die int-Variable c ein */

Ausgeben

Da wir nun durch eine Eingabe eine Zahl in den Variablen k und c gespeichert haben, könne wir sie durch eine Bildschirmausgabe aufrufen. Wir können sie auch addieren, multiplizieren usw. aber das kommt später ;)
Genau wie scanf muss auch printf  den Datentyp kennen welchen ausgegeben soll.

Beispiel:

printf("Du hast die Zahl %i eingegeben", k);  /* Man schreibt
den Datentyp rein und am Schluss die Variable die man dort haben
möchte */

Komplett-Programm:

#include
#include 
 
int main(void)
{
int zahl1;
int zahl2;
 
printf("Wie alt bist du?\n");
 
scanf("%i", &zahl1);
 
printf("Und wie alt ist deine Mutter?\n");
 
scanf("%i", &zahl2);
 
printf("\nWie ich es vestanden habe bist du %i und deine Mutter ist  %i", zahl1, zahl2);
getch();
 
}
KategorienC Tags: , , ,
  1. 27. September 2009, 13:03 | #1

    ERSTER :D

  2. 27. September 2009, 13:05 | #2

    so das mit den Variablen ausgeben ist so ähnlich wie bei Python nur dass man zum schluss ein komma macht und nicht % zum schluss.

    Danke fürs TUT :)

  3. Harun (admin)
    27. September 2009, 13:06 | #3

    :D :D ich denke nun müssten deine Fragen geklärt sein^^
    Also immer weiterempfehlen die Seite ;)

  4. 27. September 2009, 13:08 | #4

    Ach ja noch net kleine Frage wohe rweiß ich jetzt ob ich “int main(void)”
    oder “void main(void)” machen muss?

  5. Harun (admin)
    27. September 2009, 13:12 | #5
  6. 27. September 2009, 13:17 | #6

    Soviel ich lesen kann soll man eigentlich lieber int main nehmen.

    Und ma so ne Frage :) ,

    was könntest du schon alles mit C machen, also wie fortgeschritten bist du darin?

  7. Harun (admin)
    27. September 2009, 13:20 | #7

    Also mehr als das kann ich noch nicht xD

    Das alles hatte ich in den letzten zwei Wochen in der Schule^^

    Habe aber 2 mal in der Woche Programmieren, so dass ich euch regelmäßig damit füttern kann

  8. 27. September 2009, 13:28 | #8

    asoooo :D ,
    also auch anfänger :D ,
    naja will auch ma informatik studieren dauerd aber noch weng, bin 16 und in der 10. klasse hab noch 2 Jahre :D

  9. 27. September 2009, 14:02 | #9

    Hey uedi,

    void main(void) bedeuted soviel wie das nichts return wird und das main keine variablen mitgeliefert werden müssen, stell dir das vor wie def main(): (python)

    int main(void) bedeuted soviel wie das eine zahl return wird

    int main(void) {
    return 1
    }

    ist aber in main unwesentlich!

    hier ein nützliches beispiel in dem variablem mitgeliefert werden!

    ( c++ beispiel da ich nur c++ kann <.<)

    #include

    using namespace std;

    int main( int argc, char *argv[]) {
    cout<<"Programm mit "<<argc-1<<" Parametern gestartet:"<<endl;
    for (int item = 0; item < argc; item++)
    {
    // startparamter aufzählen
    if (item)
    cout<<" ["<<item<<"] "<<argv[item]<<endl;
    }
    }

    so weit hoffe ich das du es verstanden hast :D ansonsten noch ein ganz einfaches beispiel zum schluss:

    #include

    using namespace std;

    int minuseins(int zahl)
    {
    return zahl-1
    }

    int main(void)
    {
    cout<<"2 minus 1 ist "<<minuseins(2)<<"."<<endl;
    }

    -M.f.G, sea212

  10. 1. Oktober 2009, 20:43 | #10

    hey, ich hab hier mal einen kleinen selbst versuch gemacht, eine Zahl is richtig, die man einstellen kann und man muss sie versuchen zu erate :D

    #include
    #include

    int main(void)
    {
    int richtigezahl = 6; /* HIER DIE RICHTIGE ZAHL */
    int x;
    printf(”Gebe Eine Zahl von 1 – 10 an, nur eine Zahl ist richtig\n”);
    scanf(”%i”, &x);
    printf(”deine Zahl war %i\n”, x);
    if (x == richtigezahl)
    {
    printf(”Richtige Zahl, gut gemacht\n”);

    }
    else
    {
    printf(”Falsche Zahl, probiers nochmal\n”);
    }
    getch();
    }

  11. 1. Oktober 2009, 20:43 | #11

    das zeugs nach include nimmts nicht

  12. 1. Oktober 2009, 20:44 | #12

    und die anführungszeichen mcht es falsche :D

  13. 2. Oktober 2009, 13:52 | #13

    hab hier noch bissle erweiter :D , jetzt ist es eine zufällige zahl :D

    #include
    #include

    int main(void)
    {
    int x;
    int richtig = 1 + ( rand() % ( 10 – 1 + 1 ) ) ;
    printf(”Gebe Eine Zahl von 1 – 10 an, nur eine Zahl ist richtig, diese ist zufaellig ;D\n”);
    scanf(”%i”, &x);
    printf(”deine Zahl war %i\n\n”, x);
    if (x == richtig)
    {
    printf(”Richtige Zahl, gut gemacht\n\n”);

    }
    else
    {
    printf(”Falsche Zahl, probiers nochma\n\n\n\n”);
    main();
    }
    getch();
    }

  14. Harun (admin)
    2. Oktober 2009, 15:49 | #14

    Hehe gute Sachen ;) Ja das liegt an html, dass die nach include nicht kommen. Also der macht das auch ^^

  15. 2. Oktober 2009, 21:29 | #15

    irgentwie sind die zufallszahlen immer die gleichen 2, dann 5 dann 8 und so weiter, voll der kack ;D

  16. 3. Oktober 2009, 14:21 | #16

    Hey hab 2 Fragen ;D

    1. Wäre es möglich in die Homepage hier ein kleines Forum einzubauen, damit man Fragen, wie ich jetzt, stellen kann, und es nicht umbedingt unter kommentare schreiben muss?

    2. Was ist das für Sprache jetzt eigentlich ganz genau?

    C, C# oder C++ ?

  17. 3. Oktober 2009, 14:34 | #17

    Ein Forum wäre generell möglich aber würde sich im Moment nicht lohnen, da es wirklich sehr wenige Besucher sind… Die paar Fragen kann ich auch hier beantworten ;)

    Und das ist C über das ich hier schreibe.

  1. Bisher keine Trackbacks