Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // 2-dimensionale Arrays
- /*
- Allgemein ist ein 2-dimensionales Array ein Array aus Arrays. So wie wir bei einem 1-dimensionalen Array die Felder zählen,
- so können wir natürlich auch bei einer ganzen Ansammlung von Arrays die einzelnen Arrays durchnummerieren.
- Diese Art der Interpretation ist allgemeingültig, wir werden aber auch im Einzelfall folgende Anwendungen betrachten können:
- "Matrix", oder "Rechenblatt" oder "Schachbrett"
- Oder Bei Strings: eine Liste von (durchnummerierten) Texten, denn jeder Text its eine Ansammlung von durchnummerierten Zeichen
- (1. Dimension) und nun werden auch die Texte durchnummeriert (2. Dimension)
- */
- #include<stdio.h>
- char nenneInhaltVon(char brett[8][9],int a,int b)
- {
- return brett[a][b];
- }
- main()
- {
- system("chcp 1252");
- system("cls");
- // DEKLARSTION und DEFINITION --------------------------------------------------------------------------------------------
- // [Anzahl der Arrays][Länge jedes einzelnen Arrays]
- int arr[3][4]; // ein leeres 2-dimensionales Array. Genauer gilt 3 Arrays mit jeweils 4 Feldern
- // INITIALISIERUNG --------------------------------------------------------------------------------------------------------
- // a) OHNE syntactical sugar
- // Das erste Feld des ersten Arrays mit 25 zu füllen:
- arr[0][0]=25;
- // Das 3. Feld des 2.Arrays soll mit 100 gefüllt werden:
- arr[1][2]=100;
- // Das letzte Feld im letzten Array mit 22 füllen:
- arr[2][3]=22;
- // b) MIT syntactical sugar
- int brr[3][4]={
- {1,2,3,4}, // das ERSTE Array, also die Felder array[0][0] bis array[0][3]
- {10,20,30,40}, // das ZWEITE Array, also die Felder array[1][0] bis array[1][3]
- {100,200,300,400} // das DRITTE Array, also die Felder array[2][0] bis array[2][3]
- };
- // AUSLESEN eines 2-dimensionalen Arrays ------------------------------------------------------------------------------------
- int i,j; // Die beiden benötigten Zählvariablen
- for(i=0;i<3;i++) // Diese äußere Schleife läuft die einzelnen Arrays ab
- {
- printf("Die Werte des %i-ten Arrays:\n",i);
- for(j=0;j<4;j++) // Diese innere Schleife läuft alle Felder (des jeweils aktuellen Arrays) ab
- {
- printf("brr[%i][%i]=%i ",i,j,brr[i][j]);
- }
- printf("\n\n");
- }
- // --------------------------------------------------------------------------------------------------------------------------
- // --------------------------------------------------------------------------------------------------------------------------
- // 2-dimensionale Character-Arrays
- // Deklaration und Definition und Initialisierung
- char text[4][100]={
- "Ein erster Text", "Ein zweiter Text", "Ein dritter ...", "und noch einer"
- };
- // Ein einzelnes Zeichen aus unserem 2-dimensionalen Character Array
- printf("Kontrollausgabe (1 Zeichen): text[1][2]=%c\n",text[1][2]);
- // Ein String aus unserem 2-dimensionalen Character Array
- printf("Kontrollausgabe (1 String): text[1]=%s\n",text[1]); // text[i]=Startadresse des i-ten Strings
- // text[i]=&text[i][0]
- // ----------------------------------------------------------------------------------------------------------------------
- // Aufruf von Funktionen (Call by Reference) mit dem Übergabewert (Startadresse) eines 2-dimensionalen Arrays
- // [8 Strings] mit [8 Zeichen + 1 Stoppzeichen]
- char schachbrett[8][9]={
- "tsldklst",
- "bbbbbbbb",
- "........",
- "........",
- "........",
- "........",
- "BBBBBBBB",
- "TSLDKLST"
- };
- char figur=nenneInhaltVon(schachbrett,0,0); // Rückgabewert ist der Character des übergebenen Feldes
- printf("Kontrollausgabe: Inhalt von schachbrett[0][0]=%c",figur);
- printf("\n\n\n\n");
- system("pause");
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement