无限循环 :

时间:2013-06-05 09:28:42

标签: java

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("");
        }
    }
}

我的程序遇到无限循环,有人可以告诉我我犯了什么错误。 该程序将两个矩阵相乘。

2 个答案:

答案 0 :(得分:7)

下面:

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

这个循环一旦启动,永远不会完成,因为i变量的值永远不会在上面的循环中改变。

答案 1 :(得分:3)

while循环未终止。因此做一个

if(i==2){

 System.out.print(B+" ")

}