Исправить код транспонирования матрицы - C (СИ)

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

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

помогите пожалуйста исправить программу вот я написал но она не работает
Листинг программы
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <time.h>
  4. #include <locale.h>
  5.  
  6. int main()
  7. {
  8. setlocale(LC_ALL,"Rus");
  9. int i, j,a,b;
  10. int st1,st2;
  11. int M,N;
  12. srand(time(NULL));
  13. printf("введите количество строк и столбцов\n");
  14. scanf("%i",&M);
  15. scanf("%i",&N);
  16. int **mas = (int**) malloc(M * sizeof(int*));
  17. for(i = 0; i<M;i++)
  18. mas[i] = (int*) malloc(N*sizeof(int));
  19. int **mas2 = (int**) malloc(N * sizeof(int*));
  20. for(i = 0; i<N;i++)
  21. mas[i] = (int*) malloc(M*sizeof(int));
  22. printf("Введенный массив:\n");
  23. for (i=0;i<M;i++)
  24. { for(j=0;j<N;j++)
  25. { mas[i][j] = rand()%10-5;
  26. printf("%4d", mas[i][j]);
  27. }
  28. printf("\n");
  29. }
  30. for (a=0;a<M;a++)
  31. {
  32. for(b=0;b<N;b++)
  33. {
  34. for(i=0;i<N;i++)
  35. {
  36. for(j=0;j=M;j++)
  37. {
  38. mas2[i][j]=mas[a][b];
  39. }
  40. }
  41. }
  42. }
  43.  
  44. printf("\n\nAfter swap:\n");
  45. for (i=0;i<N;i++)
  46. { for(j=0;j<M;j++)
  47. printf("%4d", mas2[i][j]);
  48. printf("\n");
  49. }
  50. system("PAUSE");
  51. return 0;
  52. }
помогите это исправить

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

textual
Листинг программы
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <time.h>
  4. #include <locale.h>
  5.  
  6. int main()
  7. {
  8.     setlocale(LC_ALL, "Rus");
  9.     int i, j;
  10.     int M, N;
  11.     srand(time(NULL));
  12.     printf("введите количество строк и столбцов\n");
  13.     scanf("%d %d", &M, &N);
  14.  
  15.     int mas[M][N], mas2[N][M];
  16.  
  17.     printf("Введенный массив:\n");
  18.     for (i = 0; i < M; i++)
  19.     {
  20.         for (j = 0; j < N; j++)
  21.         {
  22.             mas[i][j] = rand() % 10 - 5;
  23.             printf("%4d", mas[i][j]);
  24.         }
  25.         printf("\n");
  26.     }
  27.  
  28.     for (i = 0; i < N; i++)
  29.     {
  30.         for (j = 0; j < M; j++)
  31.         {
  32.             mas2[i][j] = mas[j][i];
  33.         }
  34.     }
  35.  
  36.     printf("\n\nAfter swap:\n");
  37.     for (i = 0; i < N; i++)
  38.     {
  39.         for (j = 0; j < M; j++)
  40.         {
  41.             printf("%4d", mas2[i][j]);
  42.         }
  43.         printf("\n");
  44.     }
  45.  
  46.     system("pause");
  47.  
  48.     return 0;
  49. }

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

  1. Подключение необходимых библиотек
  2. Установка русской локали
  3. Объявление переменных i, j, M, N
  4. Инициализация генератора случайных чисел
  5. Вывод сообщения с просьбой ввести количество строк и столбцов
  6. Считывание количества строк и столбцов с помощью функции scanf
  7. Выделение памяти под матрицу mas и mas2
  8. Вывод введенной матрицы mas с помощью двух вложенных циклов и функции printf
  9. Транспонирование матрицы с помощью двух вложенных циклов и функции scanf
  10. Вывод транспонированной матрицы mas2 с помощью двух вложенных циклов и функции printf
  11. Ожидание нажатия клавиши с помощью функции system
  12. Завершение программы с возвратом 0

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


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

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

6   голосов , оценка 3.833 из 5

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

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

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