fork(1) download
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <stddef.h>
  4.  
  5. void arr_fill(unsigned rows, unsigned cols, int array[][cols]) {
  6. unsigned i,j;
  7. for(i=0;i<rows;i++)
  8. for(j=0;j<cols;j++)
  9. scanf("%d",&array[i][j]);
  10. }
  11.  
  12. void arr_print(unsigned rows, unsigned cols, int array[][cols]) {
  13. unsigned i,j;
  14. for(i=0;i<rows;i++) {
  15. for(j=0;j<cols;j++)
  16. printf("%d ",array[i][j]);
  17. printf("\n");
  18. }
  19. }
  20.  
  21. void arr_rev_cols(unsigned rows, unsigned cols, int array[][cols]) {
  22. unsigned i,j;
  23. int tmp;
  24. for(j=0;j<cols;j++) {
  25. for(i=0;i<rows/2;i++) {
  26. tmp=array[i][j];
  27. array[i][j] = array[rows-1-i][j];
  28. array[rows-1-i][j]=tmp;
  29. }
  30. }
  31. }
  32.  
  33. #define ARR_ROWS 4
  34. #define ARR_COLS 4
  35.  
  36. int main(void) {
  37. int array[ARR_ROWS][ARR_COLS];
  38. arr_fill(ARR_ROWS,ARR_COLS,array);
  39. arr_print(ARR_ROWS,ARR_COLS,array);
  40. arr_rev_cols(ARR_ROWS,ARR_COLS,array);
  41. printf("\n");
  42. arr_print(ARR_ROWS,ARR_COLS,array);
  43. return 0;
  44. }
Success #stdin #stdout 0s 2296KB
stdin
1
2
3
4
5
6
7
8
9
0
9
8
7
6
5
4
stdout
1 2 3 4 
5 6 7 8 
9 0 9 8 
7 6 5 4 

7 6 5 4 
9 0 9 8 
5 6 7 8 
1 2 3 4