• Also habe folgende Aufgaben: 1.Schreiben Sie eine C-Funktion, die für eine 5×5-Matrix das größte Element zurück liefert.Welche
    Typdeklaration ist dazu notwendig? 2.Wie ist die Funktion zu verändern, wenn neben dem Wert des Elementes auch dessen Position
    in der Matrix ermittelt werden soll?

    Meine Lösung zu 1.:

    #include <stdio.h>

    int matrixc(int input[5][5]);

    int main() {
    int output;

    int matrix[5][5] = {
    {1,2,3,4,5},
    {5,6,7,8,9},
    {4,3,2,1,9},
    {1,2,3,4,5},
    {0,0,0,0,2}};

    // Aufruf der Funktion, die du schreiben sollst
    // Dabei wird die Matrix übergeben
    output = matrixc(matrix);

    // Kann man auch noch ausgeben, um besser zu kontrollieren
    printf("%d\n", output);
    }

    // Und die schreibst du dann:
    int matrixc(int input[5][5]) {
    // lokale Variablen
    int i,z;
    int high = input[0][0]; // Anfangswert ist der erste Wert

    /**
    * Nun für jede Zeile und Spalte durchlaufen
    * und dabei immer das Element speichern, welches
    * größer ist, als das aktuelle Element.
    */
    for (i=0; i < 5; i++) {
    for(z=0; z < 5; z++) {

    if (input[i][z] > high) {
    high = input[i][z];
    }
    }
    }

    return high;
    }


    und 2. weiß ich nicht was ich verändern soll bzw dazukommt[Blockierte Grafik: http://www.informatikforum.de/images/smilies/smile.gif]

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!