Деление элементов массива С

У меня есть задача. Дана матрица А размером 8х8. Разделить каждый элемент столбца на элемент столбца, который находится на главной диагонали, если этот элемент не равен нулю. Также можно найти максимальный элемент матрицы А. На печать выводите входную матрицу А и максимальный элемент. Не знаю как правильно сделать деление на диагональ.

#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main() {
  srand(time(NULL));
  int A[8][8];
  int arrMax;
  int arrMin;
  printf("Massiv А\n");  
  for (int i = 0; i < 8; i++) {
    for (int j = 0; j < 8; j++) {
      A[i][j] = rand() % 100;
      printf("%i\t", A[i][j]);
    }
    printf("\n");
  }
  arrMax = A[0][0];
  for (int i = 0; i < 8; i++) {
    for (int j = 0; j < 8; j++) {
      if (arrMax < A[i][j]) {
        arrMax = A[i][j];
      }
    }
  }
  printf("\nmax = %d", arrMax);

  printf("\nMassiv А\n");
  for (int i = 0; i < 8; i++) {
    for (int j = 0; j < 8; j++) {
      int Diagonal = A[j][j];
      if (Diagonal == A[j][j])
        for (int i = 0; i < 8; i++) A[i][j] /= Diagonal;
      printf("%i\t", A[i][j]);
    }
    printf("\n");
  }
}

Ответы (1 шт):

Автор решения: MBo

В последнем блоке кода уберите внешний цикл по i.

В ифе проверьте, что диагональный элемент не равен нулю - об этом же явно написано а задании, внутренний цикл по i у вас правильный, и принты для вывода матрицы вынесите в отдельные циклы

→ Ссылка