В каждой строке матрицы выбрать элемент с наименьшим значением - C (СИ)
Формулировка задачи:
Дана действительная матрица размера N x M, все элементы которой различны. В каждой строке выбирается элемент с наименьшим значением, затем среди этих чисел выбирается наибольшее
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[])
{
int x[10][10],i,j,min,max,P[j];
for(i=0;i<10;i++)
for(j=0;j<10;j++)
{
printf("x[%d][%d]=",i+1,j+1);
scanf("%f",&x[i][j]);
}
for(j=0;j<10;j++)
{
P[j]=1;
if(x[i][j]=min) }
P[j]*=x[i][j];
}
printf("\n %f",P[j]);
{
if(P[j]=max)
printf("\n %f\t",P[j]);
}
system("PAUSE");
return 0;
}Решение задачи: «В каждой строке матрицы выбрать элемент с наименьшим значением»
textual
Листинг программы
#include <stdio.h>
#include <stdlib.h>
#define N 10
#define M 10
int main(int argc, char *argv[])
{
int x[N][M], i,j, min,max,P[N];
for(i=0;i<N;i++)
for(j=0;j<M;j++)
{
printf("x[%d][%d]=",i+1,j+1);
scanf("%d",&x[i][j]);
}
for(i=0;i<N;i++)
{
P[i]=x[i][0];
for(j=0;j<M;j++)
{
if(x[i][j]< P[i])
P[i] = x[i][j];
}
printf("\n%d",P[i]);
}
max = P[0];
for(i=0;i<N;i++)
if (P[i] > max)
max = P[i];
system("PAUSE");
return 0;
}
Объяснение кода листинга программы
В этом коде выполняется следующая последовательность действий:
- Объявление переменных:
x[N][M]- массив-матрица целых чисел, гдеN- количество строк, аM- количество столбцов.i,j,min,max,P[N]- вспомогательные переменные для выполнения задачи.
- Заполнение матрицы
xс помощью циклаfor:- Первый вложенный цикл перебирает строки матрицы от
0доN-1. - Второй вложенный цикл перебирает столбцы матрицы от
0доM-1. - Значение элемента матрицы
x[i][j]вводится с клавиатуры с помощью функцииscanf.
- Первый вложенный цикл перебирает строки матрицы от
- Поиск в каждой строке элемента с наименьшим значением и его сохранение в переменной
P[i]. - Вывод на экран значений
P[i]с помощью циклаfor. - Поиск максимального значения среди
P[i]. - Вывод на экран значения
max. - Ожидание нажатия клавиши с помощью функции
PAUSEи завершение работы программы с возвратом0.