mehrdimensionale felder
-
hallo forumsteilnehmer,
ich bin glücklicherweise auf dieses c-forum gestoßen und hoffe nun dass ihr mir helfen könnt!
ich habe in der berufsschule eine aufgabe bekommen, du für meinen wissensstand doch noch sehr knifflig ist.
ich habe 10 bankkonten. nun soll ich mit hilfe von mehrdimensionalen feldern 10 kontonummern, 10 pin-nummern und 10 guthaben in einem array speichern.wie stelle ich das am besten an?
danke im voraus!
-
Erstell dir ein Zweidimensionales Array.
z.B.:int Konto[10][10]; //kannst ja auch char, double und float verwenden
und so sprichst du die einzelnen Felder an
Kontonummern PIN Guthaben Konto[0][0] Konto[0][1] Konto[0][2] Konto[1][0] Konto[1][1] Konto[1][2] Konto[2][0] Konto[2][1] Konto[2][2] . . . Konto[9][0] Konto[9][1] Konto[9][2]
Mfg hohesC
-
hi!
ich würds mit einem struct array machen, weil ja zB pin = int, aber kontostand eher double oder so:
*ungetestet*typedef struct konto { int kontonummer; char *inhaber; double kontostand; ........ } konto a[10]; usw.... speicher für struct reservieren nicht vergessen...
hth,
ciao
-
-
sorry. ver/überlesen.
-
danke für eure schnelle hilfe!
gibt es jetzt auch noch eine möglichkeit, allen konten einen kontostand von 2000 zuzuweisen?
mit einer for-schleife vielleicht?gruß
-
NP
,trotzdem gute lösung!
-
Mit for-Schleife
for(x=0;x<=9;x++) { Konto[x][2]=2000; }
mfg hohesC
-
die Variante funktioniert nur wenn dus wie oben in meinem Beispiel machst!
-
hohesC schrieb:
Mit for-Schleife
for(x=0;x<=9;x++) { Konto[x][2]=2000; }
mfg hohesC
ha, genauso hab ich es gemacht! dann ist ja doch noch nicht alles verloren
vielen dank für die hilfe!
-
wenn ich jetzt einzelne elemente des arrays ansprechen oder vergleichen will, wie muss ich das machen?
nehmen wir an, ich habe eine eingabe, bei der ich eine kontonummer eintippen muss:scanf("%lf", kontonummer); if (kontonummer == konto[?][?]) { printf("Ihr aktuelles Guthaben betraegt %lf EUR.", konto[?][?]); }
ich hoffe meine formulierung war verständlich. was muss ich für die fragezeichen einsetzen, bzw. ist mein ansatz überhaupt richtig?
-
hi,
ohne einer schleife wirds nicht gehen...
int i; for ( i=0; i<ROWS; i++ ) { if ( kontonummer == konto[i][KONTONUMMERNSPALTE] ){ /* to was wahnsinnig wichtiges */ break; } }
wobei ROWS für deine anzahl an konten steht...
und KONTONUMMERNSPALTE für deine spalte, in der du kontonummern speicherst (wenn du es, wie HohesC vorgeschlagen, gemacht hast, dann müsste das Index 0 sein)...hth,
ciao