Java黑皮书课后题第8章:*8.10(最大的行和列)编写一个程序,在一个4*4的矩阵中随机填入0和1,打印该矩阵,分别找到第一个具有最多1的行和列
生活随笔
收集整理的這篇文章主要介紹了
Java黑皮书课后题第8章:*8.10(最大的行和列)编写一个程序,在一个4*4的矩阵中随机填入0和1,打印该矩阵,分别找到第一个具有最多1的行和列
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
*8.10(最大的行和列)編寫一個程序,在一個4*4的矩陣中隨機填入0和1,打印該矩陣,分別找到第一個具有最多1的行和列
- 題目
- 題目描述與運行示例
- 破題
- 代碼
題目
題目描述與運行示例
8.10(最大的行和列)編寫一個程序,在一個44的矩陣中隨機填入0和1,打印該矩陣,分別找到第一個具有最多1的行和列。下面是一個運行示例:
1111 0101 1101 1001 The largest row index: 0 The largest column index: 3破題
代碼
public class Test8_10 {public static void main(String[] args) {//1. 聲明一個4*4矩陣int[][] array = new int[4][4];//2. 使用雙層循環給矩陣賦隨機值0和1((int)(Math.random()*2))并打印(如遇到列結束則換行,最后一行不換)for (int i = 0 ; i < 4 ; i++){for (int j = 0 ; j < 4; j++){array[i][j] = (int)(Math.random()*2);System.out.print(array[i][j]);}System.out.println();}//3. 初始化兩個int型對象,分別保存1最多的行下標和1的個數;再初始化1個int型對象,用于臨時保存1的個數int largest_row = 0;int count_row = 0;int temp_row = 0;//4. 使用循環找1最多的行(雙層循環)for (int i = 0 ; i < 4 ; i++){temp_row = 0;for (int j = 0 ; j < 4; j++){if (array[i][j] == 1){++temp_row;}}if (count_row < temp_row){count_row = temp_row;largest_row = i;}}//5. 找1最多的列與3~4步相似,只需要修改循環即可int largest_col = 0;int count_col = 0;int temp_col = 0;for (int j = 0 ; j < 4 ; j++){temp_col = 0;for (int i = 0 ; i < 4; i++){if (array[i][j] == 1){++temp_col;}}if (count_col < temp_col){count_col = temp_col;largest_col = j;}}//6. 輸出最多1的行、列System.out.println("The largest row index: " + largest_row);System.out.println("The largest column index: " + largest_col);} }總結
以上是生活随笔為你收集整理的Java黑皮书课后题第8章:*8.10(最大的行和列)编写一个程序,在一个4*4的矩阵中随机填入0和1,打印该矩阵,分别找到第一个具有最多1的行和列的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Java黑皮书课后题第8章:8.9(井字
- 下一篇: Java黑皮书课后题第8章:**8.11