Rema Thomas Ответов: 1

Мне нужна помощь с 2D arraays в C


Мне нужно иметь возможность создать массив с выходным форматом, отображаемым как на рисунке ниже. Я застрял на том, как это сделать.
j=    1  2  3  4  5
----+----------------
I=1 |-1 -2 -3 -4 -5
2   |-6
3   |-11
4   |-16


Что я уже пробовал:

Это код который у меня есть до сих пор но я не знаю куда идти дальше:
#include <stdio.h>
int main()
{
    int A[4][5] =
    {
        { -1, -2, -3, -4, -5 },
        { -6 },
        { -11 },
        { -16 }
    };
    int I,j;
    for( I=0; I<4; I++ )
    {
        for( j=0; j<5; j++ )
        {
             /* this is where I am stuck*/
        }
    }
    return 0;
}

1 Ответов

Рейтинг:
8

Rick York

Я не собираюсь делать ВСЮ работу за вас, но я дам вам подсказку. Я думаю, что ваши for-петли немного не в порядке.

#include <stdio.h>

#define Rows  4
#define Cols  5

int main()
{
    int A[Rows][Cols] =
    {
        { -1, -2, -3, -4, -5 },
        { -6 },
        { -11 },
        { -16 }
    };
    int i,j;

    // display top row - the column indexes

    printf( "j=   " );
    for( j = 0; j < Cols; j++ )
        printf( " %d", j + 1 );
    printf( "\n" );

    // display second row - the dashes

    printf( "----+----------------\n" );

    // display third row, the first row of data

    // display subsequent rows

    for( i = 1; i < Rows; i++ )
    {
    }
    return 0;
}
Этот код будет отображать первые две строки. Остальное я оставлю тебе. Прочтите документацию по функции printf и ее спецификаторам формата, и вы сможете понять все остальное.