オファーを受賞(Javaバージョン)第二十四質問:時計回りのマトリックスを印刷

/ *
時計回りプリントマトリックス
* /
publicクラスClass24 {

公共ボイドprintMatrix(INT [] []行列){
IF(matrix.lengthマトリックス== NULL || <= 0){
リターン;
}そうでなければ{
printMatrixCircle(マトリックス、0 );
}
}
プリントの範囲を制御するための制御シンボルの//インデックス代表
公共ボイドprintMatrixCircle(INT [] []マトリックス、INTインデックス){
行= matrix.length INTを、
INT COL =行列[0] .LENGTH;
INT COL = ENDX、 -索引- 1;
INT ENDY =ロウ-索引- 1;
IF(ENDX、<|| ENDYインデックス<インデックス){
リターン;
}
//唯一の
IF(== ENDX、インデックス){
ため(INT I =指標; I <= ENDY; I ++){
System.out.print(行列[I] [インデックス] + "")の;
}
戻り、
}
//仅一行
(ENDY ==インデックス)であれば{
ため(INT iはインデックスを=; I <= ENDX; I ++){
System.out.print(行列[インデックス] [I] + "「)。
}
を返します。
}
//开始打印边界
//步骤一
ため(INT iはインデックスを=; I <= ENDX; I ++){
System.out.print(行列[インデックス] [I] + "「)。
}
//步骤二
のために(INT I =インデックス+ 1; I <= ENDY; I ++){
System.out.print(行列[I] [ENDX] + "「)。
}
//步骤三
用(INT I = ENDX - 1; I> =指数; I - ){
System.out.print(行列[ENDY] [I] + "「)。
}
//步骤四
のための(INT I = ENDY - 1; I> =指数+ 1; I - ){
System.out.print(行列[I] [インデックス] + "「)。


}

公共ボイド試験(INT [] []行列){
printMatrix(マトリックス)
}

パブリック静的無効メイン(文字列[] args){
// TODO自動生成方法スタブ
Class24 C =新しいClass24()。
INT [] [] = {{1,2,3,4}、{5,6,7,8}、{9,10,11,12}、{13,14,15,16}}。
c.printMatrix(A)。
}

}

おすすめ

転載: www.cnblogs.com/zhuozige/p/12507121.html