主要思想:對於二維陣列順時針列印,相當於迴圈列印圈,不過圈是越來越小的。列印的起始位置橫縱座標相同(start,start),開始列印,分四個方向列印(左->右,上->下,右->左,下->上),但要注意邊界判斷條件,例如:當該二維陣列為一行時,就只需要進行第一步列印,即第二步的前提條件是終止行號大於其實行號,而第三步的前提條件是該二維陣列至少是兩行兩列的,
即第三步的前提條件是除了要滿足第二步的條件外,還要滿足終止列號大於起始列號;第四步的前提條件是該二維陣列至少是三行兩列的,即終止列號比起始行號至少大2,且終止列號大於起始列號。而整個迴圈繼續的條件為y>start*2&&x>start*2。
public static void printarray(int arr,int start)
if(start=start;j--)
} if(start=start+1;i--)
} } public static void main(string args) ,,,};
int start = 0;
while(arr[0].length > start*2 && arr.length >start*2)
}
遊戲規則:迴圈報數遊戲,有n個人,每乙個人編號從1開始,依次編號到n。從1到3報數,報3的退出遊戲,得出最後獲勝人的編號。
主要思想:在陣列中形成乙個環,開始遍歷(1,2,3),將每個淘汰的編號標記為-1,接下來,跳過標記為-1的,繼續報數,同時size自減,迴圈直至size=1,輸出最後的編號。
/**
* 迴圈報數遊戲:編號為1——n,迴圈報數1,2,3,報到3的淘汰,返回最後一人的編號,為 勝利者。
* 一、在陣列中,形成乙個環(採用取模形成);
* 二、將淘汰的編號賦值為-1;
* 三、,若arr[i]不為-1,則繼續報數,直到報到3,將相應編號賦值為-1,同時size--,直到size為1,即可
*/public static int countnumgame(int arr)
if(count==3)
}} return -1;//
} public static void main(string args)
int n=countnumgame(arr);
system.out.println(n);
}
二維陣列練習
1 建立乙個稱作array2d 的類,在main 方法中宣告乙個稱作twod的變 量,型別為int二維陣列,第一維長度為4。2 建立乙個元素型別為int的陣列,該陣列應包括4 個元素並被賦值到變數twod 0 3 編寫兩個巢狀for 迴圈語句以列印twod 的全部值,以矩陣的格式輸出。4 編譯並執行...
C 之二維陣列
在第七單元中,程式清單7.10 strgback.cpp,部分如下 include char buildstr char c,int n prototype int main 輸出如下 enter a character l enter an integer 5 lllll done 請按任意鍵繼續...
java二維陣列
定義二維陣列寫法1class numthree public static void main string args float numthree 定義乙個float型別的2維陣列 numthree new float 5 5 為它分配5行5列的空間大小 numthree 0 0 1.1f 通過下...