Исправить ошибку - не выводится столбец матрицы - C (СИ)
Формулировка задачи:
// Массив.cpp: определяет точку входа для консольного приложения.
//
#include <stdio.h>
#include <stdlib.h>
#include "stdafx.h"
#include <clocale>
#define SIZE 5
int main(void)
{setlocale(LC_ALL,"Russia");
setlocale(LC_ALL,"rus");
int massiv[SIZE][SIZE];
int i, j, row, col;
for (i = 0; i < SIZE; i++)
for (j = 0; j < SIZE; j++)
{
printf("Заполните массив");
scanf("%d", &massiv[i][j]);
}
printf("Нужная строка ");
scanf("%d", &row);
if (row >= 0 && row < SIZE)
for (i = 0; i < SIZE; i++)
printf("%d ", massiv[row][i]);
printf("\n Нужный столбец ");
scanf("%d", &col);
if (col >= 0 && col < SIZE)
for (i = 0; i < SIZE; i++)
printf("%d ", massiv[i][col]);
if (col >= 0 && col < SIZE && row >= 0 && row < SIZE)
printf("\nCell matrix[%d][%d] = %d\n", row, col, massiv[row][col]);
return 0;
}Решение задачи: «Исправить ошибку - не выводится столбец матрицы»
textual
Листинг программы
int massiv[SIZE][SIZE];
int i, j, row, col;
/* Заполнение матрицы */
for (i = 0; i < SIZE; i++) {
for (j = 0; j < SIZE; j++) {
massiv[i][j] = get_rand((i+1) * (j+1));
}
}
/* Вывод матрицы */
for (i = 0; i < SIZE; ++i) {
for (j = 0; j < SIZE; ++j) {
printf("%-5d", massiv[i][j]);
}
printf("\n");
}
printf("Нужная строка ");
scanf("%d", &row);
--row;
if (row >= 0 && row < SIZE)
for (i = 0; i < SIZE; i++)
printf("%d ", massiv[row][i]);
printf("\n Нужный столбец ");
scanf("%d", &col);
--col;
if (col >= 0 && col < SIZE)
for (i = 0; i < SIZE; i++)
printf("%d ", massiv[i][col]);
if (col >= 0 && col < SIZE && row >= 0 && row < SIZE)
printf("\nCell matrix[%d][%d] = %d\n", row, col, massiv[row][col]);
return 0;
Объяснение кода листинга программы
- Объявляется массив
massivразмеромSIZE x SIZEи переменныеi,j,row,col - С помощью двух вложенных циклов массив заполняется случайными числами
- С помощью двух вложенных циклов и функции
printfматрица выводится на экран - С помощью
scanfсчитывается номер строки, затем с помощьюprintfвыводятся элементы этой строки - С помощью
scanfсчитывается номер столбца, затем с помощьюprintfвыводятся элементы этого столбца - Если номер строки и номер столбца корректны, то выводится значение элемента матрицы по этому номеру
- Код завершается, возвращая 0