Поменять местами 2 строки матрицы, указанные по запросу пользователя - C (СИ)

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

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

Написать функцию, меняющую местами 2 строки матрицы указанные по запросу пользователя. Вот мой исходник для матрицы.
#include<stdio.h>
#include<locale.h>
#include<time.h>
#include<windows.h>
#define N 4
#define M 5
 
int main()
{
    setlocale(0,"");
    int a[N][M], i, j;
    srand(time(NULL));
    
    for(i=0;i<N;i++)
    {
        for(j=0;j<M;j++)
        {
            a[i][j]=rand()%100;
            printf("\t%4d",a[i][j]);
        }
        puts("\n");
    }
    
    return 0;
}

Решение задачи: «Поменять местами 2 строки матрицы, указанные по запросу пользователя»

textual
Листинг программы
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#include <windows.h>
#include <time.h>
int main()
{
srand(time(NULL));
SetConsoleCP(1251);
SetConsoleOutputCP(1251);
    int m,n;
printf("Введите размер матрицы: ");
    scanf("%d%d",&m,&n);
    int mtr[m][n];
    int i=0,j=0, k1, k2, c;
    for(i=0; i<m; i++)
    for(j=0; j<n; j++)
    mtr[i][j]=rand()%10;
printf("\nПолученная матрица:");
for (i=0;i<m;i++)
{
    printf("\n");
    for (j=0;j<n;j++)
        printf("%d ",mtr[i][j]);
}
printf("\nВведите k1 и k2)");
    scanf("%d%d",&k1,&k2);
for(i=0;i<m;i++)
{
  c=mtr[i][k1-1];
  mtr[i][k1-1]=mtr[i][k2-1];
  mtr[i][k2-1]=c;
}
printf("\nПолученная матрица:");
for (i=0;i<m;i++)
{
    printf("\n");
    for (j=0;j<n;j++)
        printf("%d ",mtr[i][j]);
}
 
    return 0;
}

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

  1. Включаем необходимые заголовочные файлы для работы с консолью, числами, строками и матрицами, а также для работы с Windows и временем.
  2. Задаем размер матрицы с помощью функции scanf, сохраняем его в переменные m и n.
  3. Создаем двумерный массив mtr размером m на n и заполняем его случайными числами от 0 до 9 с помощью цикла for и функции rand().
  4. Выводим полученную матрицу на экран с помощью цикла for и функции printf.
  5. Просим пользователя ввести номера k1 и k2 строк, которые нужно поменять местами.
  6. Используем цикл for для перебора строк матрицы и обмена значениями в соответствии с введенными номерами k1 и k2.
  7. Выводим полученную матрицу на экран с помощью цикла for и функции printf.
  8. Завершаем программу и возвращаем 0.

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


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

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

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