-
Notifications
You must be signed in to change notification settings - Fork 378
/
数组旋转问题.c
38 lines (34 loc) · 1.16 KB
/
数组旋转问题.c
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
//下面程序的功能是将一个 4×4 的数组进行逆时针旋转 90 度后输出,要求原始数组的数据随机输入,新数组以 4 行 4 列的方式输出。
//主要涉及知识点:二维数组的输入及输出、循环嵌套与二维数组的结合、输出的格式控制。
#include <stdio.h>
int main(){
int a[4][4],b[4][4],i,j; /*a 存放原始数组数据,b 存放旋转后数组数据*/
printf("input 16 numbers: ");
/*输入一组数据存放到数组 a 中,然后旋转存放到 b 数组中*/
for(i=0;i<4;i++){
for(j=0;j<4;j++){
scanf("%d",&a[i][j]);
printf("%6d",a[i][j]);
b[3-j][i]=a[i][j];
}
printf("\n");
}
printf("array b:\n");
for(i=0;i<4;i++){
for(j=0;j<4;j++)
printf("%6d",b[i][j]);
printf("\n");
}
return 0;
}
//运行结果:
//input 16 numbers: 1 34 6 4 56 2 5 6 9 12 23 23 46 77 12 34
// 1 34 6 4
// 56 2 5 6
// 9 12 23 23
// 46 77 12 34
//array b:
// 4 6 23 34
// 6 5 23 12
// 34 2 12 77
// 1 56 9 46