000
17.11.2009, 13:45 Uhr
~Manda
Gast
|
Hallo zusammen! Ich versuche einfach nur ein 2D-Array an eine (oder mehrere) Funktionen zu übergeben und anschließend auszugeben. Leider kommen die Werte nicht richtig herraus.
C++: |
#include<stdio.h> #include<stdlib.h>
#define ZEILE 9 #define SPALTE 9
int main(void) { int matrix[ZEILE][SPALTE] ={ {5,3,0,0,7,0,0,0,0}, {6,0,0,1,9,5,3,0,0}, {0,9,8,0,0,0,0,6,0}, {8,0,0,0,6,0,0,0,3}, {4,0,0,8,0,3,0,0,1}, {7,0,0,0,2,0,0,0,6}, {0,6,0,0,0,0,2,8,0}, {0,0,0,4,1,9,0,0,5}, {0,0,0,0,8,0,0,7,9} }; menu(matrix);//aufruf return 0; }
void menu(int (*matrix)[SPALTE]) { //hier nur eine Weitergabe ausgabe(matrix); }
void ausgabe(int (*matrix)[SPALTE]) { int i = 0; int j = 0; int *mat[SPALTE]; for(i=0; i<SPALTE; i++) { mat[i] = *matrix; matrix += ZEILE; } system("cls"); printf("Ausgabe :\n"); printf("========\n"); printf("\n"); printf("+---------------------------------+\n"); for(i=0; i<ZEILE; i++) { if( (i > 0) && (i % 3 == 0) ) { printf("+---------------------------------+\n"); } printf("|"); for(j=0; j<SPALTE; j++) { if( (j > 0) && (j % 3 == 0) ) { printf(" + "); } printf(" %d ", mat[i][j]); } printf("|\n"); } printf("+---------------------------------+\n"); printf("\n"); system("pause"); }
|
Ich hoffe ihr könnt mir helfen. Nur die Werte der 1.Zeile sind richtig, der Rest passt nicht mehr. Bin schon am verzweifeln. Danke.
Gruß Manda |