Задана матрица размером N*N. Заполнить элементы главной и побочной диагонали нулями - C (СИ)

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

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

#include <stdio.h> 
#include <conio.h> 
#include <windows.h>
#include <math.h>
#include <locale.h>
#include <time.h>
#include <stdlib.h>
 
int main (){
setlocale (LC_ALL, "RUS");
int i,j;
int N;
scanf ("%d",&N);
int x[N][N];
for (i=1;i<=N;i++)
    {
    for (j=1;j<=N;j++)
        {
        x[i][j]=NULL;// rand()%100;
        printf ("%d ",x[i][j]);
        }
    printf ("\n");
    }
}
У меня всё нулями выводит. А надо же только главную и побочную.

Решение задачи: «Задана матрица размером N*N. Заполнить элементы главной и побочной диагонали нулями»

textual
Листинг программы
for(i=0; i<N; i++) {
  x[i][i] = x[i][N-i-1] = 0;
}

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

  1. В цикле for перебираются все элементы матрицы размером N*N от i=0 до i=N-1
  2. Внутри цикла присваивается значение 0 элементам главной и побочной диагонали матрицы
    • x[i][i] - элемент главной диагонали
    • x[i][N-i-1] - элемент побочной диагонали
  3. Значение N-i-1 используется для обращения порядка элементов в побочной диагонали матрицы
  4. Результатом выполнения кода будет заполнение элементов главной и побочной диагонали матрицы нулями

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


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

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

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