首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

矩阵旋转 疑惑。该如何解决

2012-04-01 
矩阵旋转 疑惑。。。#includestdio.h#includestdlib.hints[2][3][3]intc1,i,a0,b1,m,h1[3],jmain(){

矩阵旋转 疑惑。。。
#include   <stdio.h>
#include   <stdlib.h>

int   s[2][3][3];
int   c=1,i,a=0,b=1,m,h1[3],j;  
main()
{
for(i=0;i <=2;i++)
            for(j=0;j <=2;j++)
                s[0][i][j]=c++;
 
for(i=0;i <=4;i++)
{  
h1[1]=h1[2]=h1[0]=2;
for(j=0;j <=2;j++)
{
for(m=0;m <=2;m++)
{
printf( "%d\t ",s[a][j][m]);
                                    s[b][m][h1[m]]=s[a][j][m];
                                    h1[m]-=1;
}
        printf( "\n ");
}

                  a=!a;
b=!b;
printf( "\n ");
}

        system( "pause ");
}
矩阵旋转:
m=1时,我觉得这句   s[b][m][h1[m]]=s[a][j][m];     不大理解,但结果输出正确,
h1[m]-=1;这句放到数组中,我觉得数据也不对。。。望大虾解释下。。

[解决办法]
矩阵算法写这么乱怎么看啊?怎么还有4维数组?
程序尽量简化,否则不但你看不懂,而且还容易错
[解决办法]
二维数组Amn可视为由m个行向量组成的向量,或由n个列向量组成的向量。
三维数组Amnp可视为以二维数组为数据元素的向量。四维数组可视为以三维数组为数据元素的向量……
三维数组中的每个元素aijk都属于三个向量。四维数组中的每个元素都属于四个向量……

[解决办法]
s[b][m][h1[m]]
这种的还是第一次见到~

MARK & 学习~
[解决办法]
取那里的值..应该可以吧...
自己没写过,但见过..
[解决办法]
写复杂了
int s1[3][3];
int s2[3][3];
这样写就好理解了

热点排行