Запишите матрицу x, получившуюся после выполнения фрагмента программы. Ошибка в коде - C (СИ)
Формулировка задачи:
Запишите матрицу x, получившуюся после выполнения фрагмента программы, если в начале работы фрагмента матрица x выглядит следующим образом:
5 22 12 8
5 7 9 13
1 10 14 12
11 9 9 3
этот код выдает ошибку. Помогите найти
#include <stdio.h>
#include <stdlib.h>
…
int n = 4;
randomize();
int **x = new int* [n];
for (int i=0;i<n;i++)
x[i] = new int [n];
for (i=0;i<n;i++)
for (int j=0;j<n;j++)
x[i][j] = random(26);
int p = 0;
for (i=0;i<n;i++)
if (x[i][i]==0) {p = 1; break; }
if (p==1)
for(i = 0;i<n;i++)
x[i][i] = x[0][0];#include <stdio.h>
#include <stdlib.h>
#define N 4
int main( void ) {
int i, j;
int p=0;
int x[ 4 ][ 4 ] = { { 5, 22, 12, 8 }, { 5, 7, 9, 13 }, { 1, 10, 14, 12 }, {11, 9, 9, 3} };
for ( i = 0; i < N; i++ )
for ( j = i; j < N; j++ )
if (x[i][i]==0) {p = 1; break; }
if (p==1)
for(i = 0;i<N;i++)
x[i][i] = x[0][0];{
printf( "%d ", x[ i ][ j ] );
}
puts( "" );
}
return EXIT_SUCCESS;Решение задачи: «Запишите матрицу x, получившуюся после выполнения фрагмента программы. Ошибка в коде»
textual
Листинг программы
#include <stdio.h>
#include <stdlib.h>
#define N 4
int main( void ) {
int i, j;
int p=0;
int x[ 4 ][ 4 ] = { { 5, 22, 12, 8 }, { 5, 7, 9, 13 }, { 1, 10, 14, 12 }, {11, 9, 9, 3} };
for ( i = 0; i < N; i++ )
for ( j = i; j < N; j++ )
if (x[i][i]==0) {p = 1; break; }
if (p==1)
for(i = 0;i<N;i++)
x[i][i] = x[0][0];{
printf( "%d ", x[ i ][ j ] );
}
puts( "" );
}
return EXIT_SUCCESS;
Объяснение кода листинга программы
- Включаем необходимые заголовочные файлы для работы с консолью и стандартными функциями
- Определяем переменную N, которая задает размер матрицы
- Инициализируем матрицу x с помощью прямоугольной сетки и значениями внутри
- Используем два вложенных цикла для проверки каждого элемента матрицы x на нулевое значение
- Если элемент матрицы x[i][i] равен нулю, то переменной p присваивается значение 1 и циклы прерываются
- Если переменной p присвоено значение 1, то с помощью внешнего цикла записываем значение x[0][0] в каждый элемент матрицы x
- С помощью функции printf выводим каждый элемент матрицы x на экран, разделенный пробелом
- Выводим пустую строку с помощью функции puts
- Завершаем программу с кодом EXIT_SUCCESS