hilfe bei mehrdim. array
-
Hallo, ich habe folgendes porblem:
#include <stdio.h> #include <stdlib.h> #define MAX=12 int main(int argc, char **argv){ int i,j; int breite = MAX; int hoehe = MAX; int mitte = MAX char arr[MAX][MAX]; for(i=0;i<breite;i++){ for(j=0;j<hoehe;j++){ printf("#", arr[i][j]); if(arr[i][j] >= arr_[10][0] && arr[i][j] =< arr[10][MAX]){ printf("-"); } } printf("\n"); } }
folgendes:
Ziel sollte es sein, dass es so ausschaut
########### ########### ########### ########### ########### ########### ########### ########### ########### ########### ----------- ###########
ich bekomme es jedoch einfach nicht hin
egal was ich umtue...
wo ist der hacken, dass es so nicht funktioniert? .. es muss mit den for schleifen und if gelöst werden bzw while oder sonst halt was
Lg
-
edit: bei define das = weggegeben und das arr_ korrigiert in zeile 20..
-
Hallo,
int mitte = MAX;
Wozu? Wird doch eh nicht verwendet.
for(i=0;i<breite;i++){ for(j=0;j<hoehe;j++){
Ich würde 'breite' und 'hoehe' vertauschen. Hier ist nämlich 'breite' eigentlich die Höhe und 'hoehe' eigentlich die Breite. Kann verwirrend werden, wenn hoehe != breite sein sollte.
printf ("#", arr[i][j]);
Ich schätze mal, du willst die Raute dem Array-Element zuweisen. Richtig wäre
arr[i][j] = '#';
if(arr[i][j] >= arr_[10][0] && arr[i][j] =< arr[10][MAX])
In der 11. Zeile sollen anscheinend, anstatt der Rauten, Bindestriche auftauschen. Ich hab das einfach mal so gelöst:
if (i == 10)
Meine Komplettlösung:
#include <stdio.h> #define MAX 12 int main(int argc, char **argv) { int i,j; int breite = MAX; int hoehe = MAX; char arr[MAX][MAX]; for (i = 0; i < hoehe; i++) { for (j = 0; j < breite; j++) { if (i == 10) { arr[i][j] = '-'; printf ("-"); } else { arr[i][j] = '#'; printf ("#"); } } printf ("\n"); } return 0; }
Hoffe, man konnte dir damit helfen.
Gez. monstermunchkin