В заданной матрице переставить строки с минимальным и максимальным элементом - C (СИ)

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

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

Ребята, написал код а он не работает, хотя вроде все правильно, помогите подредактировать: В заданном двухмерном массиве целых чисел, состоящего с n рядков и m строк, переставить рядки с минимальным и максимальным элементом.
Листинг программы
  1. #include <stdio.h>
  2. main()
  3. {
  4. const int n=2, m=3;
  5. int A[n][m], i, j, min, max, buf, nmax, nmin;
  6. for(i=0,i<n,i++)
  7. for(j=0,j<m,j++)
  8. scanf("%d %d", &A[n][m]);
  9. max A[0][0];//ïðèГ*ГЁГ¬Г*ГҐГ¬ Г§Г* Г¬Г*ГЄГ± 1-Г© ýëåìåГ*ГІ
  10. nmax=0;
  11. min A[0][0];//ïðèГ*ГЁГ¬Г*ГҐГ¬ Г§Г* ìèГ* ïåðâûé ýëåìåГ*ГІ
  12. nmin=0;
  13. for(i=0,i<n,i++)
  14. {
  15. if(A[i]>max)
  16. {
  17. max A[i];
  18. nmax=i;
  19. }
  20. if(A[i]<min)
  21. {
  22. min A[i];
  23. nmin=i;
  24. }
  25. for(j=0,j<m,j++)
  26. {
  27. buf=A[nmax][j];
  28. A[nmax][j]=A[nmin][j];
  29. A[nmin][j]=buf;
  30. }
  31. printf("A[&d]%[d]=%9d",i,j,A[i][j]);
  32. getchar(); getchar();
  33. }

Решение задачи: «В заданной матрице переставить строки с минимальным и максимальным элементом»

textual
Листинг программы
  1. #include <stdio.h>
  2.  
  3. int main(){
  4.     const int n=2, m=3;
  5.     int A[n][m], i, j, min, max, buf, nmax, nmin;
  6.     for(i=0;i<n;i++)
  7.         for(j=0;j<m;j++)
  8.            scanf("%d", &A[i][j]);
  9.     max=A[0][0];
  10.     nmax=0;
  11.     min=A[0][0];
  12.     nmin=0;
  13.     for(i=0;i<n;i++)
  14.         for(j=0;j<m;j++){
  15.             if(A[i][j]>max){
  16.                 max=A[i][j];
  17.                 nmax=i;
  18.             }
  19.             if(A[i][j]<min){
  20.                 min=A[i][j];
  21.                 nmin=i;
  22.             }
  23.         }
  24.     for(j=0;j<m;j++){
  25.         buf=A[nmax][j];
  26.         A[nmax][j]=A[nmin][j];
  27.         A[nmin][j]=buf;
  28.     }
  29.     for (i=0;i<n;i++){
  30.         for(j=0;j<m;j++)
  31.             printf("%3d", A[i][j]);
  32.         printf("\n");
  33.     }
  34. return(0);
  35. }

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

  1. Подключение стандартной библиотеки для работы с вводом/выводом (stdio.h).
  2. Объявление констант n=2 и m=3, которые представляют собой размеры матрицы.
  3. Объявление двумерного массива A типа int размером n на m.
  4. Считывание элементов матрицы с помощью функции scanf.
  5. Инициализация переменных max, nmax, min и nmin значениями первого элемента первой строки матрицы.
  6. Перебор всех элементов матрицы для нахождения максимального и минимального значения, а также их индексов.
  7. Обмен значениями строк с минимальным и максимальным элементом.
  8. Вывод полученной матрицы на экран с помощью функции printf.
  9. Возврат значения 0, что означает успешный конец работы программы.

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


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

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

10   голосов , оценка 4.1 из 5

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

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

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