Получить две новые матрицы С и D, такие, что в С будут элементы матриц А и В, которые больше заданного числа - C (СИ)
Формулировка задачи:
Даны две матрицы - А и B. C клавиатуры вводится число P.
Мы должны получить две новые матрицы С и D, такие, что в С будут элементы матриц А и В, которые больше заданного числа Р. А в матрице D будут все отрицательные элементы матриц А и B.
После запуска программа вылетает. Подскажите, почему?
#include <stdio.h> int main() { int a[3][3]; int b[3][3]; int c[3][3]; int d[3][3]; int p; int j,i,k,k1,g,g1; for (i = 0; i < 3; i = i + 1) { // ввод массива А for (j = 0; j < 3; j = j + 1) { a[i][j]=-20 + random(41); } } for (i = 0; i < 3; i = i + 1) { // вывод массива А printf("\n"); for (j = 0; j < 3; j = j + 1) { printf("%d\t",a[i][j]); } } for (i = 0; i < 3; i = i + 1) { // ввод массива В for (j = 0; j < 3; j = j + 1) { b[i][j]=-20 + random(41); } } for (i = 0; i < 3; i = i + 1) { // вывод массива В printf("\n"); for (j = 0; j < 3; j = j + 1) { printf("%d\t",b[i][j]); } } for (i = 0; i < 3; i = i + 1) { for (j = 0; j < 3; j = j + 1) { // условие для вывода матрицы С - где k-новый счетчик if (a[i][j]>p) {c[i][j]==a[i][j]; k++;} } } for (i = 0; i < 3; i = i + 1) { for (j = 0; j < 3; j = j + 1) { if (b[i][j]>p) {c[i][j]==b[i][j]; k1++;} } } for (i = 0; i < (k1+k); i = i + 1) { // вывод массива C, где k1+k - новая размерность printf("\n"); for (j = 0; j < (k1+k); j = j + 1) { printf("%d\t",c[i][j]); } } }
Решение задачи: «Получить две новые матрицы С и D, такие, что в С будут элементы матриц А и В, которые больше заданного числа»
textual
Листинг программы
for (i = 0; i < 3; i = i + 1) { // вывод массива C, где k1+k - новая размерность printf("\n"); for (j = 0; j < 3; j = j + 1) { printf("%d\t",c[i][j]); } }
Объяснение кода листинга программы
В данном коде на языке C выполняется следующая последовательность действий:
- Создается цикл for, который выполняет три итерации (так как начальное значение i равно 0, а i = i + 1 происходит после каждой итерации, то количество итераций равно 3).
- Внутри цикла выводится строка новой размерности массива C с помощью функции printf.
- В каждой итерации цикла выводятся элементы массива C с помощью функции printf.
- Значение i не равно 3, поэтому цикл продолжается.
- После выполнения цикла выводится символ
\n
для перехода на новую строку. - Значение i равно 3, поэтому цикл завершается. В результате выполнения данного кода на экран будет выведена новая размерность массива C и его элементы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д