Поменять местами строки матрицы с номерами K1 и K2 - C (СИ)

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

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

Дана матрица размера M х N и целые числа K1 и K2(1<K1<K2<M). Поменять местами строки матрицы с номерами K1 и K2. на Си

Решение задачи: «Поменять местами строки матрицы с номерами K1 и K2»

textual
Листинг программы
int i, j, M, N, K1, K2, iBuf;
int  A[50][50];
 
M = 10;
N = 5;
K1 = 3;
K2 = 5;
 
// Заполнение матрицы
for(i = 0; i < M; i++)
{
    for(j = 0; j < N; j++)
    {
        A[i][j] = i + j;
        printf("A[%d][%d] = %d   ", i, j, A[i][j]);
    }
    printf("\r\n");
}
 
// Замена строк
for(j = 0; j < N; j++)
{
    iBuf = A[K1-1][j];
    A[K1-1][j] = A[K2-1][j];
    A[K2-1][j] = iBuf;
}
 
printf("\r\n\r\n\r\n");
// Вывод результата
for(i = 0; i < M; i++)
{
    for(j = 0; j < N; j++)
    {
        printf("A[%d][%d] = %d   ", i, j, A[i][j]);
    }
    printf("\r\n");
}

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

  1. Объявлены переменные:
    • i, j, M, N, K1, K2, iBuf, A[50][50]
  2. Задаются значения переменных:
    • M = 10, N = 5, K1 = 3, K2 = 5
  3. Заполняется матрица A значениями i + j
  4. Выводится на экран содержимое матрицы A
  5. Происходит замена строк в матрице A:
    • Для каждой строки j от 0 до N-1
      • Перемещается значение iBuf в переменную iBuf
      • Значение A[K1-1][j] заменяется на значение A[K2-1][j]
      • Значение A[K2-1][j] заменяется на значение iBuf
  6. Выводится на экран обновленное содержимое матрицы A

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


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

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

6   голосов , оценка 4.5 из 5
Похожие ответы