fork download
  1. #include <stdio.h>
  2.  
  3. const int N = 1000;
  4.  
  5. // TODO: implement this function
  6. void rotate_ccw(int n, int a[N][N]) {
  7. // your code here
  8. int temp[N][N];
  9. for (int i = 0; i < n; i++) {
  10. for (int j = 0; j < n; j++) {
  11. temp[i][j] = a[i][j];
  12. printf("a[%d][%d]:%d ", i, j, temp[i][j]);
  13. }
  14. printf("\n");
  15. }
  16. printf("\n");
  17. for (int i = 0; i < n; i++) {
  18. for (int j = 0; j < n; j++) {
  19. a[i][j] = temp[j][n - i - 1];
  20. printf("a[%d][%d]:%d ", j, n - i - 1, temp[j][n - i - 1]);
  21. }
  22. printf("\n");
  23. }
  24. }
  25.  
  26. int main(void) {
  27. int n;
  28. int a[N][N];
  29.  
  30. scanf("%d", &n);
  31. for (int i = 0; i < n; ++i) {
  32. for (int j = 0; j < n; ++j) {
  33. scanf("%d", &a[i][j]);
  34. }
  35. }
  36.  
  37. rotate_ccw(n, a);
  38. /*
  39.   for (int i = 0; i < n; ++i) {
  40.   for (int j = 0; j < n; ++j) {
  41.   printf("a[%d][%d]:%d ", i, j, a[i][j]);
  42.   }
  43.   printf("\n");
  44.   }
  45. */
  46. }
  47.  
Success #stdin #stdout 0.01s 5292KB
stdin
3
1 2 3
4 5 6
7 8 9
stdout
a[0][0]:1 a[0][1]:2 a[0][2]:3 
a[1][0]:4 a[1][1]:5 a[1][2]:6 
a[2][0]:7 a[2][1]:8 a[2][2]:9 

a[0][2]:3 a[1][2]:6 a[2][2]:9 
a[0][1]:2 a[1][1]:5 a[2][1]:8 
a[0][0]:1 a[1][0]:4 a[2][0]:7