Ich bin ein neuer CS-Student und habe es schwer, zweidimensionale Arrays zu verstehen. Im Moment versuche ich es nur 1 Reihe hintereinander zu drucken.Ausdruck von 2-dimensionalen Arrays in C
Dies ist mein Code
#include <stdio.h>
#define N 3
int main(void)
{
int array[N][N], i, j, rows[N], cols[N];
for(i=0;i<N;i++)
{
printf("Enter row %d: ", i+1);
for(j=0;j<N;j++)
scanf("%d", &array[i][j]);
}
printf("The 5 rows you entered are: \n");
for(i=0;i<N;i++)
{
for(j=0;j<N;j++)
{
printf("%d", array[i][j]);
printf("\n");
}
}
printf("\n");
return 0;
}
Ich mag würde das Programm Druck haben aus:
1 2 3
1 2 3
1 2 3
Wenn ich die \n
es hinzufügen ausdruckt:
1\n
2\n
3\n
1\n
2\n
3\n
1\n
2\n
3\n
Stellen Sie sich die \ ns als das vor, was der Bildschirm ausdruckt, ich bin tr ying zu repräsentieren, was der Code ausgibt. Ich habe Schwierigkeiten, diese Box zu bekommen, um genau auszudrucken, was ich eintippe. Es lässt mich nicht immer wieder hereintreten, um darzustellen, was tatsächlich auf dem Befehlsbildschirm ist.
ohne /n
es ausdruckt
123123123
ich auch hinzufügen Zeilen und Spalten versuche. Es gelang mir, einen Code zu finden und das meiste zu verstehen, bis auf eine Zeile. Dies ist der Code.
#include <stdio.h>
int main(void)
{
int i, j, array[5][5], rows[5],cols[5];
for(i=0;i<5;i++)
{
printf("Enter row %d: ", i+1);
for(j=0;j<5;j++)
scanf("%d", &array[i][j]);
}
**for(i=0;i<5;rows[i]=cols[i]=0,i++);**
for(i=0;i<5;i++)
{
for(j=0;j<5;j++)
{
rows[i]=rows[i]+array[i][j];
cols[j]=cols[j]+array[i][j];
}
}
printf("\nRow Totals: ");
for(i=0;i<5;i++)
printf("%d\t", rows[i]);
printf("\nColumn Totals: ");
for(i=0;i<5;i++)
printf("%d\t", cols[i]);
printf("\n");
return 0;
}
for(i=0;i<5;rows[i]=cols[i]=0,i++);
ist die Linie, die ich nicht verstehe. Zunächst einmal verstehe ich die rows[i]=cols[i]=0,i++
nicht wirklich. Und zweitens verstehe ich nicht, warum es ein Semikolon gibt. Ich dachte für Anweisungen nicht Semikolons, aber das Programm funktioniert nicht korrekt ohne diese Zeile oder ohne Semikolon. Wenn ich versuche, es ohne diese Codezeile zu verwenden, gibt es mir verrückte Antworten, ich nehme an, weil die Elemente im Array nicht auf 0 gesetzt sind und diese Codezeile die Elemente der Arrays auf 0 setzt. Kann mir jemand geben eine andere Codezeile, die für jemanden, der relativ neu in C ist, verständlicher sein könnte? Und vielleicht erklären Sie mir, warum es ein Semikolon verwendet?
Sie werden trhe Antworten einfachsten durch ein C Buch zu lesen, nicht durch besondere und möglicherweise nicht verwandte Fragen zu stellen. – Olaf