### Chú ý khi xoay ma trận thì hàng thành cột còn cột thì thành hàng
**Gọi $a$ là mảng 2 chiều lưu ma trận**
Thực hiện nhập dữ liệu ma trận (trong hướng dẫn thì cột và hàng bất đầu từ $0$ đến $n-1$).
Tiến hành xoay theo chiều kim đồng hồ:
cho một vòng for từ $0$ đến $n-1$ và lồng thêm một vòng for chạy ngược từ $n-1$ đến $0$: ghi ra từng $a[j][i]$. Khi kết thúc vòng for lồng bên trong thì nhớ xuống dòng.
Code mẫu C++
```
#include <bits/stdc++.h>
using namespace std;
int a[1000][1000];
int n;
int main()
{
ios_base::sync_with_stdio(false);
cin.tie(0);cout.tie(0);
cin>>n;
for(int i=0;i<n;++i){
for(int j=0;j<n;++j)cin>>a[i][j];
}for(int i=0;i<n;++i){
for(int j=n-1;j>=0;--j)cout<<a[j][i]<<' ';
cout<<'\n';
}
}
```