Найти минимальный элемент матрицы - C (СИ) (70560)
Формулировка задачи:
Будьте добры нужна помощь.
Найти минимальный элемент матрицы С (размер m*n), и поменять его местами с первым элементом.
вот все что есть, и то матрицу в конце не выводит
вот все что есть, и то матрицу в конце не выводит
Листинг программы
- #include "stdafx.h"
- #include <stdio.h>
- #include <conio.h>
- #include <stdlib.h>
- #include <malloc.h>
- #include <math.h>
- #include <Windows.h>
- #include <locale.h>
- #include <iostream>
- #include <iomanip>
- using namespace std;
- int main()
- {
- setlocale(LC_ALL, "RUS");
- int i, j, N, M, с[20][20];
- printf ("N="); //ввод количества строк
- scanf_s("%d" ,& N);
- printf( "M="); //ввод количества столбцов
- scanf_s("%d",& M);
- printf( "Input matrix С \n");
- //цикл по переменной i, в которой перебираем строки матрицы
- for (i = 0; i<N; i++)
- //цикл по переменной j, в котором перебираем элементы внутри строки
- for (j = 0; j<M; j++)
- scanf_s("%i",& с[i][j]); //ввод очередного элемента матрицы
- printf( "matrix С \n");
- for (i = 0; i<N; i++)
- {
- //цикл по переменной i, в котором перебираем строки матрицы
- for (j = 0; j < M; j++)
- printf("\t",&с[i][j]); //вывод очередного элемента матрицы
- printf("\n"); //переход на новую строку после вывода всех элементов строки
- }
- system("pause");
- return 0;
- }
Решение задачи: «Найти минимальный элемент матрицы»
textual
Листинг программы
- #include "stdafx.h"
- #include <stdio.h>
- #include <conio.h>
- #include <stdlib.h>
- #include <malloc.h>
- #include <math.h>
- #include <Windows.h>
- #include <locale.h>
- #include <iostream>
- #include <iomanip>
- using namespace std;
- int main()
- {
- setlocale(LC_ALL, "RUS");
- int i, j, N, M, с[20][20],min ;
- printf("N="); //ввод количества строк
- scanf_s("%d", &N);
- printf("M="); //ввод количества столбцов
- scanf_s("%d", &M);
- printf("Input matrix С \n");
- //цикл по переменной i, в которой перебираем строки матрицы
- for (i = 0; i<N; i++)
- //цикл по переменной j, в котором перебираем элементы внутри строки
- for (j = 0; j<M; j++)
- scanf_s("%i", &с[i][j]); //ввод очередного элемента матрицы
- printf("matrix С \n");
- for (i = 0; i<N; i++)
- {
- //цикл по переменной i, в котором перебираем строки матрицы
- for (j = 0; j < M; j++)
- printf("%d\t", с[i][j]); //вывод очередного элемента матрицы
- printf("\n"); //переход на новую строку после вывода всех элементов строки
- }
- //нахождение минимального
- min =c[0][0];
- for (int i = 0; i < N; i++)
- {
- for (int j = 0; j < M; j++)
- {
- if (c[i][j] < min) { min = c[i][j]; }
- }
- }
- for (int i = 0; i < N; i++)
- {
- for (int j = 0; j < M; j++)
- {
- if (c[i][j] = min) { c[i][j] = c[0][0]; }
- }
- }
- c[0][0] = min;
- system("pause");
- return 0;
- }
Объяснение кода листинга программы
В этом коде выполняются следующие действия:
- Ввод количества строк и столбцов матрицы с помощью функции scanf_s.
- Ввод элементов матрицы с помощью цикла двойной вложенности.
- Вывод матрицы на экран с помощью цикла двойной вложенности и функции printf.
- Инициализация переменной min значением первого элемента первой строки матрицы.
- Поиск минимального элемента матрицы с помощью двух циклов двойной вложенности и условного оператора if.
- Замена всех найденных минимальных элементов на значение первого элемента первой строки матрицы с помощью двух циклов двойной вложенности и оператора присваивания =.
- Вывод матрицы на экран с помощью цикла двойной вложенности и функции printf.
- Ожидание нажатия клавиши с помощью функции system(
pause
). - Возврат 0, что означает успешный конец работы программы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д