Zeichen voneinander abziehen ?



  • hallo,

    habe mal eine frage sitze gerade hier vor einer aufgabe in c und wollte mal fragen wie kann ich zeichen in C voneinander abziehen.

    also ich muss die funktion getchar() benutzen, lese so lange zeichen ein bis mal return eingibt.

    ich soll ein datum einlesen tt.mm.jjjj und auch als gültiges datum ausgeben
    wie kann ich das konvertieren das da raus ein gültiges datum rauskommt

    und es darf kein array beutzt werden

    danke im vorraus



  • Erklaer mal wo genau das Problem liegt. Deine Hausaufgaben machen wir naemlich nicht.

    Aber wenn du schon einen Ansatz hast oder konkrete Fragen: nur her damit, wir werden dir das so gut es uns moeglich ist erklaeren...

    Also: was willst du genau machen mit dem "zeichen voneinander abziehen"?



  • GAST2101 schrieb:

    ich soll ein datum einlesen tt.mm.jjjj und auch als gültiges datum ausgeben
    wie kann ich das konvertieren das da raus ein gültiges datum rauskommt

    vielleicht hift dir das: http://faq.cprogramming.com/cgi-bin/smartfaq.cgi?answer=1048383636&id=1043284392



  • #include <time.h>
    #include <stdio.h>
    /* Diese Void-Prozedur gibt das aktuelle Datum vom Rechner in
       3 Integervariablen zurück
    
       Der Aufruf lautet: aktdate(&Tag,&Monat,&Jahr);                          */
    
    void aktdate(int *Tag, int *Monat, int *Jahr)
    {
          struct tm *datum;
          time_t heute;
          time(&heute);
          datum = localtime(&heute);
          *Tag = datum->tm_mday;
          *Monat = datum->tm_mon+1;
          *Jahr = datum->tm_year+1900;
          return;
    }
    
    int main()
    {
    	int Tag,Monat,Jahr;
    	aktdate(&Tag,&Monat,&Jahr);
    	printf("Heutiges Datum : ");
    	printf("Tag= %i, Monat= %i, Jahr= %i", Tag,Monat,Jahr);
    	int c,counter=0,eingabe;
                printf("\nBitte Eingabe machen:");
             /* Eingabe machen bis mit Return beendet wird */
              while((c=getchar()) != '\n') {
             /* Leerzeichen und Tabulatorzeichen nicht mitzählen */
                if (c != ' ')		 		 
                 counter++; /* counter erhöhen */
    
              }
    
              /* Gibt die Anzahl eingegeb. Zeichen von 0 bis counter-1 aus
                      * mit counter-1 wird das Zeichen '\0' nicht mitgezählt */
               printf("Anzahl der Zeichen beträgt %d Zeichen\n", counter);
    
    	return 0;
    }
    

Anmelden zum Antworten