机缘
写一个矩阵转置的代码用到了数组
收获
了解到输入数组的大小要在数组前面而不能先定义数组然后再输入
举例
#include <stdio.h>int main()
{int a, b;scanf("%d %d ",&a,&b);int arr[a][b];for(int i = 0;i < a;i++){for(int j = 0;j < b;j++){scanf("%d ",&arr[i][j]);}}for(int i = 0;i < b;i++){for(int j = 0;j < a;j++){printf("%d ",arr[j][i]);}printf("\n");}return 0;
}
上面的scanf只能在定义数组之前出现而不能像下面一样
#include <stdio.h>int main()
{int a, b;int arr[a][b];scanf("%d %d ",&a,&b);for(int i = 0;i < a;i++){for(int j = 0;j < b;j++){scanf("%d ",&arr[i][j]);}}for(int i = 0;i < b;i++){for(int j = 0;j < a;j++){printf("%d ",arr[j][i]);}printf("\n");}return 0;
}
成就
对数组的了解更深了