[STRING] problem bei einem prog



  • hallo

    also ich soll ein programm schrieben das eine telefonnummer einliest und diese dann wida aus gibt mit dem zusatz das alle 2 zahlen ein strich erscheint.

    das habe ich auch bisher geschafft,wenn auch umständlich(aber wir haben erst grad mit den grundbefehlen gearbeitet):

    #include<stdio.h>

    void main ()
    {
    int i;
    char nummer [20];
    printf("Geben Sie ihre hoechstens 20-stellige Telefonnummer ein: \n");
    gets(nummer);
    for(i=0;i<=20;i++)
    {
    if(i%2==0&&i!=0) printf("-");
    printf("%c",nummer[i]);
    if(nummer[i]==NULL) break;
    }

    }

    so nun komt noch ein zusatz,den ich leider nicht lösen kann:
    wenn die anzahl der zahlen ungerade ist (also hinten eine zahl alleine hinter nem strich stehen würde dann soll dieser verschwinden und drei zahlen am ende stehen:

    Bsp: NICHT 12-34-56-78-9

    sondern

    12-34-56-789

    kann mir jemand helefn oda ein tip geben was ich in das prog noch einfügen muss damit dieser zusatz auch erfüllt ist?

    DANKE!!!



  • Du kannst mit strlen() die Länge eines Strings bekommen und dann einfach % 2 machen, um zu gucken, ob der String gerade oder ungerade ist.



  • okay...

    bloss das problem ist das wir nur befehle benutzen dürfe die wir schon hatten...und alle befehle mit "str" am anfang hatten wir noch nciht 😞

    aber trotzdem danke

    ich bräuchte ne lösung mit IF ida sowas



  • hat sich erledigt

    bin selbst drauf gekommen 😃 😃


Anmelden zum Antworten