[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