scanf nur Zahl ?

Dieses Thema im Forum "Webmaster Hilfe / Programmierer Forum" wurde erstellt von HightronicDesign, 03.11.2012.

  1. #1 HightronicDesign, 03.11.2012
    HightronicDesign

    HightronicDesign Intel Inside

    Dabei seit:
    19.06.2010
    Beiträge:
    662
    Zustimmungen:
    0
    Ort:
    127.0.0.1
    hi leute,

    wie kann ich die scanf Funktion verbessern dass man nur eine Zahl eingeben kann ?

    Ich habe eine Datums und Zeit eingabe programmiert und wenn man zb beim jahr einen Buchstaben anstatt zahlen eingibt dann spielt das programm verrückt.


    In C

    mfg
     
  2. AdMan

    schau mal hier: Windows-Wartungs-Tool. Viele Probleme lassen sich damit einfach beheben. Oftmals ist der PC dann auch schneller!
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren.
  3. #2 xandros, 03.11.2012
    xandros

    xandros IT Consultant, Cisco Registered Partner
    Moderator

    Dabei seit:
    05.07.2007
    Beiträge:
    25.881
    Zustimmungen:
    91
    Ort:
    Umkreis Duisburg, neben Mannheim, hinter Hamburg
    Wenn lediglich ein Dezimal-Integer eingegeben werden soll (Erlaubte Ziffern 0 bis 9; + oder - als Vorzeichen optional):
    Code:
    int i;
    scanf ("%d",&i);
     
  4. #3 HightronicDesign, 03.11.2012
    HightronicDesign

    HightronicDesign Intel Inside

    Dabei seit:
    19.06.2010
    Beiträge:
    662
    Zustimmungen:
    0
    Ort:
    127.0.0.1
    Code:
    int jahr;
    long i;
    main(void)
    {
    // Zeiteingabe durch den Benutzer
    	printf("Geben Sie das Jahr an:");
    	scanf("%d",&jahr);
    	if(jahr < 0)
    	{
    		printf("Ungueltige Jahresangabe, Bitte erneut eingeben:");
    		scanf("%d",&jahr);
    	}
    Ich hatte das ja schon so nur wenn ich einen buchtstaben für das jahr eingeben und bestätige dann startet das Programm ohne Werte.
     
  5. #4 xandros, 03.11.2012
    xandros

    xandros IT Consultant, Cisco Registered Partner
    Moderator

    Dabei seit:
    05.07.2007
    Beiträge:
    25.881
    Zustimmungen:
    91
    Ort:
    Umkreis Duisburg, neben Mannheim, hinter Hamburg
    zum Einen.... warum definierst du
    int Jahr und long i VOR dem Main und nicht innerhalb von Main? Reicht es nicht aus, wenn die Variablen innerhalb von Main gueltig sind?
    Zum anderen sieht eine Abfrage mit Fehlerpruefung mit Do...While schoener aus als eine Eingabeaufforderung mit anschliessender IF-Abfrage, die nur einmal durchlaeuft und die erneute Eingabeaufforderung nicht ueberprueft....
    Code:
    do{
    printf("Geben Sie das Jahr an:");
    scanf(....);
    } while (Jahr<=0);
     
  6. AdMan

    Es ist generell erstmal empfehlenswert alle ggf. veralteten oder fehlerhaften Treiber zu scannen und auf neue zu aktualisieren. Hier kannst du einen Treiber-Scanner downloaden. Das erspart oftmals viel Ärger und hilft gegen diverse Probleme.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren.
Thema: scanf nur Zahl ?
Besucher kamen mit folgenden Suchen
  1. scanf nur zahlen

Die Seite wird geladen...

scanf nur Zahl ? - Ähnliche Themen

  1. Excel: Gleiche Werte zusammenfassen und zählen

    Excel: Gleiche Werte zusammenfassen und zählen: Habe folgenden Formel gefunden: http://www.herber.de/forum/archiv/728to732/730098_Gleiche_Werte_zusammenfassen_und_zaehlen.html Dazu diese...
  2. Panik! Rote Zahlen beim Booten!

    Panik! Rote Zahlen beim Booten!: Moin! Ich habe gerade meinen Rechner gestartet und plötzlich kam beim Booten ein Logo, irgendetwas mit <Infinity>. Danach war der ganze Bildschirm...
  3. Outlook 2010: markierte Emails zählen

    Outlook 2010: markierte Emails zählen: Hallo, gibt es eine Möglichkeit bei Outlook 2010 markierte Emails zählen zu lassen? Ich meine nicht die Gesamtanzahl die in einem Ordner sind,...
  4. C++ Extrem (lange) Zahlen ausgeben

    C++ Extrem (lange) Zahlen ausgeben: Ich bin in letzter zeit oft daran gescheitert, eine sehr lange zahl in C++ auszugeben (über 200 Zeichen). Ich bin mir nicht sicher ob es überhaupt...
  5. zahl von html mit c++ abfangen

    zahl von html mit c++ abfangen: soo, nun bin ich auch mal wieder da... guten abend zusammen, ich hoffe ihr könnt mir wieder einmal helfen. es geht um folgendes: gibt es eine...