diff options
| author | Richard Qin <richard.qin.001@gmail.com> | 2026-09-15 08:16:43 +0800 |
|---|---|---|
| committer | Richard Qin <richard.qin.001@gmail.com> | 2026-09-15 08:16:43 +0800 |
| commit | 4022e5c95210631e4aceb08eaf9d9071aa5aefc4 (patch) | |
| tree | a5922559836e45fb3459a3d070367912e1035b1a /tests/sysy_lvX/077_matrix_tran.sy | |
| download | rcc-master.tar.gz rcc-master.tar.xz | |
Diffstat (limited to 'tests/sysy_lvX/077_matrix_tran.sy')
| -rw-r--r-- | tests/sysy_lvX/077_matrix_tran.sy | 74 |
1 files changed, 74 insertions, 0 deletions
diff --git a/tests/sysy_lvX/077_matrix_tran.sy b/tests/sysy_lvX/077_matrix_tran.sy new file mode 100644 index 0000000..154fd76 --- /dev/null +++ b/tests/sysy_lvX/077_matrix_tran.sy @@ -0,0 +1,74 @@ +int M; +int L; +int N; + +int tran(int a0[],int a1[], int a2[],int b0[],int b1[],int b2[],int c0[],int c1[],int c2[]) +{ + int i; + i=0; + c1[2]=a2[1]; + c2[1]=a1[2]; + c0[1]=a1[0]; + c0[2]=a2[0]; + c1[0]=a0[1]; + c2[0]=a0[2]; + c1[1]=a1[1]; + c2[2]=a2[2]; + c0[0]=a0[0]; + + return 0; + +} + +int main() +{ + N=3; + M=3; + L=3; + int a0[3];int a1[3]; int a2[3];int b0[3];int b1[3];int b2[3];int c0[6];int c1[3];int c2[3]; + int i; + i=0; + while(i<M) + { + a0[i]=i; + a1[i]=i; + a2[i]=i; + b0[i]=i; + b1[i]=i; + b2[i]=i; + i=i+1; + } + i=tran( a0, a1, a2, b0, b1, b2, c0, c1, c2); + int x; + while(i<N) + { + x = c0[i]; + putint(x); + + i=i+1; + } + x = 10; + putch(x); + i=0; + while(i<N) + { + x = c1[i]; + putint(x); + + i=i+1; + } + x = 10; + i=0; + putch(x); + while(i<N) + { + x = c2[i]; + putint(x); + + i=i+1; + } + x = 10; + putch(x); + + return 0; +} |
