Найти минимальный элемент матрицы - C (СИ) (70560)

Узнай цену своей работы

Формулировка задачи:

Будьте добры нужна помощь. Найти минимальный элемент матрицы С (размер m*n), и поменять его местами с первым элементом.
вот все что есть, и то матрицу в конце не выводит
вот все что есть, и то матрицу в конце не выводит
Листинг программы
  1. #include "stdafx.h"
  2. #include <stdio.h>
  3. #include <conio.h>
  4. #include <stdlib.h>
  5. #include <malloc.h>
  6. #include <math.h>
  7. #include <Windows.h>
  8. #include <locale.h>
  9. #include <iostream>
  10. #include <iomanip>
  11.  
  12. using namespace std;
  13. int main()
  14. {
  15. setlocale(LC_ALL, "RUS");
  16. int i, j, N, M, с[20][20];
  17. printf ("N="); //ввод количества строк
  18. scanf_s("%d" ,& N);
  19. printf( "M="); //ввод количества столбцов
  20. scanf_s("%d",& M);
  21. printf( "Input matrix С \n");
  22. //цикл по переменной i, в которой перебираем строки матрицы
  23. for (i = 0; i<N; i++)
  24. //цикл по переменной j, в котором перебираем элементы внутри строки
  25. for (j = 0; j<M; j++)
  26. scanf_s("%i",& с[i][j]); //ввод очередного элемента матрицы
  27. printf( "matrix С \n");
  28. for (i = 0; i<N; i++)
  29. {
  30. //цикл по переменной i, в котором перебираем строки матрицы
  31. for (j = 0; j < M; j++)
  32. printf("\t",&с[i][j]); //вывод очередного элемента матрицы
  33. printf("\n"); //переход на новую строку после вывода всех элементов строки
  34. }
  35. system("pause");
  36. return 0;
  37. }

Решение задачи: «Найти минимальный элемент матрицы»

textual
Листинг программы
  1. #include "stdafx.h"
  2. #include <stdio.h>
  3. #include <conio.h>
  4. #include <stdlib.h>
  5. #include <malloc.h>
  6. #include <math.h>
  7. #include <Windows.h>
  8. #include <locale.h>
  9. #include <iostream>
  10. #include <iomanip>
  11.  
  12.  
  13. using namespace std;
  14. int main()
  15. {
  16.     setlocale(LC_ALL, "RUS");
  17.     int i, j, N, M, с[20][20],min ;
  18.     printf("N="); //ввод количества строк
  19.     scanf_s("%d", &N);
  20.     printf("M="); //ввод количества столбцов
  21.     scanf_s("%d", &M);
  22.     printf("Input matrix С \n");
  23.     //цикл по переменной i, в которой перебираем строки матрицы
  24.     for (i = 0; i<N; i++)
  25.         //цикл по переменной j, в котором перебираем элементы внутри строки
  26.         for (j = 0; j<M; j++)
  27.             scanf_s("%i", &с[i][j]); //ввод очередного элемента матрицы
  28.     printf("matrix С \n");
  29.     for (i = 0; i<N; i++)
  30.     {
  31.         //цикл по переменной i, в котором перебираем строки матрицы
  32.         for (j = 0; j < M; j++)
  33.             printf("%d\t", с[i][j]); //вывод очередного элемента матрицы
  34.         printf("\n"); //переход на новую строку после вывода всех элементов строки
  35.     }
  36.     //нахождение минимального
  37.     min =c[0][0];
  38.     for (int i = 0; i < N; i++)
  39.     {
  40.         for (int j = 0; j < M; j++)
  41.  
  42.         {
  43.             if (c[i][j] < min) { min = c[i][j]; }
  44.  
  45.         }
  46.  
  47.     }
  48.  
  49.     for (int i = 0; i < N; i++)
  50.  
  51.     {
  52.  
  53.         for (int j = 0; j < M; j++)
  54.  
  55.         {
  56.  
  57.             if (c[i][j] = min) { c[i][j] = c[0][0]; }
  58.  
  59.         }
  60.  
  61.     }
  62.  
  63.     c[0][0] = min;
  64.     system("pause");
  65.     return 0;
  66. }

Объяснение кода листинга программы

В этом коде выполняются следующие действия:

  1. Ввод количества строк и столбцов матрицы с помощью функции scanf_s.
  2. Ввод элементов матрицы с помощью цикла двойной вложенности.
  3. Вывод матрицы на экран с помощью цикла двойной вложенности и функции printf.
  4. Инициализация переменной min значением первого элемента первой строки матрицы.
  5. Поиск минимального элемента матрицы с помощью двух циклов двойной вложенности и условного оператора if.
  6. Замена всех найденных минимальных элементов на значение первого элемента первой строки матрицы с помощью двух циклов двойной вложенности и оператора присваивания =.
  7. Вывод матрицы на экран с помощью цикла двойной вложенности и функции printf.
  8. Ожидание нажатия клавиши с помощью функции system(pause).
  9. Возврат 0, что означает успешный конец работы программы.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

9   голосов , оценка 4.556 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы