Ввод матрицы с клавиатуры - C (СИ)

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

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

Листинг программы
  1. #include <stdio.h>
  2. #include <conio.h>
  3. #include <math.h>
  4. #define Max 100
  5. #define N 5
  6. int main ()
  7. {float min;
  8. int i,j,C[N][N]=
  9. {{0,100,2,1,2},
  10. {2,0,100,8,1},
  11. {100,1,0,1,3},
  12. {1,100,2,0,1},
  13. {100,2,5,5,0}},A[N][N],B[N][N],B_new[N][N],k,fl;
  14. for (i=0;i<N;++i)
  15. for (j=0;j<N;++j)
  16. A[i][j]=B[i][j]=C[i][j];
  17. for (int i=0; i<N; i++)
  18. for (int j=0; j<N; j++)
  19. //if ((i==j || i==N-j) && C[i][i]>0) //замена диагональных элементов матрицы на 0
  20. C[i][i]= A[i][i] =B[i][i]=0;
  21. //B_new[i][j]
  22. do{fl=0;
  23. for (i=0;i<N;++i)
  24. for (j=0;j<N;++j){
  25. min = A[i][0]+B[0][j];
  26. for (k=1;k<N;++k){
  27. B_new[i][j]=A[i][k]+B[k][j];
  28. if( min >(A[i][k]+B[k][j]))
  29. min = A[i][k]+B[k][j];
  30. B_new[i][j]= min;
  31. }
  32. }
  33. for(i=0;i<N;i++){
  34. for(j=0;j<N;j++){
  35. if(B[i][j]!=B_new[i][j])
  36. {fl=1;
  37. for (i=0;i<N;++i)
  38. for (j=0;j<N;++j)
  39. B[i][j]=B_new[i][j];
  40.  
  41. break;
  42. }}}
  43. if(fl) break;
  44. }while(fl);
  45.  
  46. //exit
  47. printf("Matrix B\n");
  48. for ( i = 0; i < N; i ++ ) {
  49. for ( j = 0; j < N; j ++ )
  50. printf ( "\t%d" ,B[i][j] );
  51. printf("\n");
  52. }
  53. return 0;
  54. }
Как задать значения с клавиатуры??

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

textual
Листинг программы
  1. for (int i = 0; i<n; i++){
  2.     for (int j = 0; j<m; j++){
  3.          scanf_s("%i", &matrica[i][j]);
  4. }
  5. }

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

  1. Переменная n содержит количество строк в матрице.
  2. Переменная m содержит количество столбцов в матрице.
  3. Матрица matrica представляет собой двумерный массив, в котором хранятся значения, введенные пользователем.
  4. Ввод значений матрицы осуществляется с помощью функции scanf_s, которая считывает целочисленное значение и записывает его в соответствующую ячейку матрицы.
  5. Внешний цикл for выполняется n раз, перебирая строки матрицы.
  6. Внутренний цикл for выполняется m раз, перебирая столбцы матрицы.
  7. В каждой итерации внутреннего цикла происходит считывание значения из стандартного ввода с помощью функции scanf_s и запись его в соответствующую ячейку матрицы.

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


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

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

8   голосов , оценка 4.375 из 5

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

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

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