-3
public class Multiply {

    public static void main(String[] args) {
        int M[][]=new int [3][3];
        int M1[][]=new int[3][3];

        int B=0;
        //int B[][]=new int [3][3];
        //Multiply Matrix 1 by Matrix 2
        //Matrix 1
        //Matrix 2
        //Multiplication
        {
            for(int l=0;l<3;l++)
                for(int i=0;i<3;i++)
                    for(int j=0;j<3;j++)
                    {
                        for(int k=0;k<3;k++)
                        {   
                            B=(M[i][j]*M1[k][l])+B;

                            while(i==2)
                            {
                                System.out.print(B+" ");
                            }
                        }
                    }
            System.out.println("");
        }
    }
}

我的程序陷入了无限循环,谁能告诉我哪里出错了。该程序将两个矩阵相乘。

4

2 回答 2

7

这里:

while(i==2)
        {
    System.out.print(B+" ");
      }

这个循环一旦开始,将永远不会结束,因为i变量的值在上面的循环中永远不会改变。

于 2013-06-05T09:29:50.010 回答
3

while 循环不会终止。因此做一个

if(i==2){

 System.out.print(B+" ")

}
于 2013-06-05T09:32:34.593 回答