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

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

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

Подскажите пожалуйста, как в двухмерном массиве, заданном рандомно числами n(строки) и m(столбцы), поменть в каждой строке первый элемент с последним. (именно эта часть кода) Очень надеюсь на вашу помощь!) начло кода такое:
#include <stdio.h>
#include <stdlib.h>
#include <malloc.h>

int main(void) {
    setvbuf(stdout,NULL,_IONBF,0);
    int n,i,m,j;
    int**A;
 
    printf("\n Введите N= ");
    scanf("%d",&n);
    printf("\n Введите M= ");
        scanf("%d",&m);
    A=(int**)malloc(n*sizeof(int*));
    for(i=0;i<n;i++) {
        A[i]=(int*)malloc(m*sizeof(int));
    }
    for(i=0;i<n;i++) {
        for(j=0;j<m;j++) {
            A[i][j]=(float)rand();
            printf("%d ",A[i][j]);
        }
        printf("\n");
    }
А да и вот такое работает только для квадратных матриц(
#include <stdio.h>
#include <stdlib.h>
#include <malloc.h>

int main(void) {
    setvbuf(stdout,NULL,_IONBF,0);
    int n,i,m,j;
 
    int**A;
 
    printf("\n Введите N= ");
    scanf("%d",&n);
    printf("\n Введите M= ");
        scanf("%d",&m);
    A=(int**)malloc(n*sizeof(int*));
    for(i=0;i<n;i++) {
        A[i]=(int*)malloc(m*sizeof(int));
    }
    for(i=0;i<n;i++) {
        for(j=0;j<m;j++) {
            A[i][j]=(float)rand();
            printf("%d ",A[i][j]);
        }
        printf("\n");
    }
    printf("\n");
    for (i = 0; i < n; ++i) {
 
        int tmp = A[i][0];
        A[i][0] = A[i][m-1];
        A[i][m-1] = tmp;
 
    }
      /* вывод результата */
 
      for (i = 0; i < n; i++) {
        for (j = 0; j < n; j++) {
          printf("%d ", A[i][j]);
        }
        printf("\n");
      }
    free(A);
    return EXIT_SUCCESS;
}

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

textual
Листинг программы
A[i][j]=rand() % 10;

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

  1. Создается двумерный массив (матрица) с именем A размером i x j.
  2. В каждой строке матрицы первый элемент заменяется на случайное число от 0 до 9, полученное с помощью функции rand().
  3. Функция rand() возвращает случайное целое число в диапазоне от 0 до RAND_MAX.
  4. Используется оператор модуля (%) для получения остатка от деления случайного числа на 10, что гарантирует получение числа от 0 до 9.
  5. Номер строки i и номер столбца j передаются в качестве аргументов в функцию, которая выполняет замену первого элемента каждой строки.
  6. Значение переменной A[i][j] после выполнения замены будет содержать случайное число от 0 до 9.

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


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

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

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