ldg
2007-03-31 16:05:03 UTC
我想做一個小練習
就是讓矩陣轉置
1 2 3 1 4 7
4 5 6 => 2 5 8
7 8 9 3 6 9
所以我寫了這個程式
public class transit{
static void printMatrix(int[][] M){
int i,j;
for(i=0;i<3;i++){
for(j=0;j<3;j++)
System.out.print(M[i][j]+" ");
System.out.println("");
}
}
public static void main(String[] args){
int[][] Matrix=new int[3][3];
int i,j;
for(i=0;i<3;i++)
for(j=0;j<3;j++)
Matrix[i][j]=3*i+j+1;
printMatrix(Matrix);
System.out.println("");
for(i=0;i<3;i++)
for(j=0;j<3;j++)
if(i!=j){
[1;31mint temp=Matrix[i][j];[m
[1;31mMatrix[i][j]=Matrix[j][i];[m
[1;31mMatrix[j][i]=temp;[m
}
printMatrix(Matrix);
}
}
但是結果如下
1 2 3
4 5 6
7 8 9
1 2 3
4 5 6
7 8 9
請問是紅色那個交換區出了問題嗎?
還有因為只是小練習
所以不太OO
如果傷到各位的眼睛
先說聲抱歉 <(_ _)>
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 210.192.211.93
就是讓矩陣轉置
1 2 3 1 4 7
4 5 6 => 2 5 8
7 8 9 3 6 9
所以我寫了這個程式
public class transit{
static void printMatrix(int[][] M){
int i,j;
for(i=0;i<3;i++){
for(j=0;j<3;j++)
System.out.print(M[i][j]+" ");
System.out.println("");
}
}
public static void main(String[] args){
int[][] Matrix=new int[3][3];
int i,j;
for(i=0;i<3;i++)
for(j=0;j<3;j++)
Matrix[i][j]=3*i+j+1;
printMatrix(Matrix);
System.out.println("");
for(i=0;i<3;i++)
for(j=0;j<3;j++)
if(i!=j){
[1;31mint temp=Matrix[i][j];[m
[1;31mMatrix[i][j]=Matrix[j][i];[m
[1;31mMatrix[j][i]=temp;[m
}
printMatrix(Matrix);
}
}
但是結果如下
1 2 3
4 5 6
7 8 9
1 2 3
4 5 6
7 8 9
請問是紅色那個交換區出了問題嗎?
還有因為只是小練習
所以不太OO
如果傷到各位的眼睛
先說聲抱歉 <(_ _)>
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 210.192.211.93