Сумму каждой строки матрицы записать в отдельный динамический массив (указатели) - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Я ввожу динамический двумерный массив через указатели. Потом мне нужно сумму каждой строки записать в отдельный динамический массив. У меня считает только последнюю строчку, как суммы записывать в разных адресах? Сумма у меня в *nw считается.
#include <stdio.h>
#include <malloc.h>
#include <locale.h> 
 
int main()
{   setlocale (LC_ALL, "Russian"); 
    int n, m, i, j, *mp, *nw, ;
scanf("%d%d", &n, &m);
mp = (int*)calloc(n*m,sizeof(int));
for(i = 0; i < n; i++){
    nw = (int*)calloc(i,sizeof(int));
    for(j = 0; j < m; j++){
        scanf("%d", mp+i*m+j);
        *nw = *(mp+i*m+j) + *nw; 
    }
}
for(i = 0; i < n; i++){
    for(j = 0; j < m; j++)
        printf("%d ", *(mp+i*m+j));     
    printf("%d \n", *nw);
}
}

Решение задачи: «Сумму каждой строки матрицы записать в отдельный динамический массив (указатели)»

textual
Листинг программы
//...
nw = (int*) calloc(n, sizeof(int));
for (i = 0; i < n; i++) {
    for (j = 0; j < m; j++) {
        scanf("%d", mp + i * m + j);
        *(nw+i) += *(mp + i * m + j);
    }
}
for (i = 0; i < n; i++) {
    for (j = 0; j < m; j++)
        printf("%d ", *(mp + i * m + j));
    printf("(sum = %d)\n", *(nw+i));
}
//...

Объяснение кода листинга программы

В этом коде используется язык программирования C. Код решает задачу суммирования каждой строки матрицы и сохранения результатов в отдельный динамический массив (указатели). Список действий в коде:

  1. Выделяется память под динамический массив nw для хранения суммы каждой строки матрицы с помощью функции calloc.
  2. В цикле for происходит чтение значений из матрицы mp и суммирование в соответствующих позициях массива nw.
  3. В цикле for происходит вывод значений матрицы mp и соответствующих сумм из массива nw. Переменные в коде:
  4. n - количество строк в матрице.
  5. m - количество столбцов в матрице.
  6. mp - адрес начала матрицы.
  7. nw - адрес начала динамического массива для хранения сумм строк.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

9   голосов , оценка 4.222 из 5
Похожие ответы