我有一个矩阵3x3 = {{1,2,3},{4,5,6},{7,8,9}},我需要将此矩阵消除为2x2:{{5,6},{8, 9}}(仅通过剪切)。所以我写了这段代码:
#include <stdio.h>
#include <stdlib.h>
int main()
{
int matrix2[1][1],m,n;
int matrix[2][2]={{1,2,3},{4,5,6},{7,8,9}};
for(m=0;m<2;m++){
for(n=0;n<2;n++){
matrix2[m][n]=matrix[m+1][n+1];
printf("element on %i m and %i n is %i\n",m,n,matrix2[m][n]);
}
}
return 0;
}
但我无法得到正确的结果。你有想法吗?
尽管数组的索引从零开始,但是您可以使用数组中元素的数量声明它们。尝试:
#include <stdio.h>
#include <stdlib.h>
int main()
{
int matrix2[2][2],m,n;
int matrix[3][3]={{1,2,3},{4,5,6},{7,8,9}};
for(m=0;m<2;m++){
for(n=0;n<2;n++){
matrix2[m][n]=matrix[m+1][n+1];
printf("element on %i m and %i n is %i\n",m,n,matrix2[m][n]);
}
}
return 0;
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句