Advertisement
Lisaveta777

100.2 (2D array)

Nov 20th, 2018
217
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.73 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <math.h>
  3. #define ROWS 2
  4. #define COLS 5
  5. //100.PASSING 1D ARRAY INTO FUNCTION - BETTER then TO PASS 2D ARRAY INSTEAD!
  6. //PLUS – REPLACED SIZE,SIZE2 WITH ROWS & COLS FOR EASIER READING
  7. //С помощью функции заполнить матрицу случайными числами. Написать функцию,
  8. // выполняющую сортировку строк матрицы по возрастанию.
  9. //Вывести на экран две матрицы: до и после сортировки (используя функцию).
  10.  
  11. void pop_ar(int s,int s2,int a[s][s2])
  12. {
  13.     int i,j;
  14.     for(i=0;i<ROWS;i++)
  15.     {
  16.         for(j=0;j<COLS;j++)
  17.         {
  18.             a[i][j] = rand()%20+1;
  19.         }
  20.     }
  21. }
  22. void pr_ar(int s,int s2,int a[s][s2])
  23. {
  24.     int i,j;
  25.     for(i=0;i<ROWS;i++)
  26.     {
  27.         for(j=0;j<COLS;j++)
  28.         {
  29.             printf("%d\t",a[i][j] );
  30.         }
  31.         printf("\n");
  32.     }
  33. }
  34. void sort_ar(int s2,int a[s2])
  35. {
  36.     int i,j,k,temp;
  37.  
  38.         //printf("\ni %d\t",i);
  39.         for(j=0;j<COLS-1;j++)
  40.         {
  41.             //printf("\nj %d\t",j);
  42.             for(k=j+1;k<COLS;k++)
  43.             {
  44.                 //printf("k is %d\t",k);
  45.                 if(a[k]<a[j])
  46.                 {//swaps them
  47.                     printf("a[k] is %d, a[j] is %d\n",a[k],a[j]);
  48.                     temp = a[k];
  49.                     a[k] = a[j];
  50.                     a[j] = temp;
  51.  
  52.                 }
  53.             }
  54.         }
  55.  
  56. }
  57.  
  58. int main()
  59. {
  60.     int arr[ROWS][COLS];
  61.     pop_ar(ROWS,COLS,arr);
  62.     pr_ar(ROWS,COLS,arr);
  63.     sort_ar(COLS,arr[1]);//sort first line
  64.     sort_ar(COLS,arr[0]);//sort zero line
  65.     pr_ar(ROWS,COLS,arr);
  66.  
  67.     return 0;
  68. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement