当前位置:编程学习 > JAVA >>

求助,JAVA,帮忙检查一下。

程序填空,不要改变与输入输出有关的语句。 输入一个正整数repeat (0<repeat<10),做repeat次下列运算: 读入 2 个正整数 m和n(1≤m,n≤6), 再读入1个 m×n 阶矩阵 a , 计算该矩阵元素的最大值。 要求:编写max(),返回矩阵元素的最大值。 例:括号内是说明 输入: 1 (repeat=1) 3 2 (m=3,n=2) 23 465 567 78 89 4 输出: max=567 import java.util.Scanner; public class Test60032{ public static void main(String []args){ int ri, repeat; int a[][],i,j,m,n; Scanner in=new Scanner(System.in); repeat=in.nextInt(); for(ri=1; ri<=repeat; ri++){ m=in.nextInt();n=in.nextInt(); a=new int[m][n]; for(i=0; i<m; i++) for(j=0;j<n;j++) a[i][j]=in.nextInt(); System.out.println("max="+max(a)); } } /*---------*/ } 我的答案: import java.util.Scanner; public class Test60032{ public static void main(String []args){ int ri, repeat; int a[][],i,j,m,n; Scanner in=new Scanner(System.in); repeat=in.nextInt(); for(ri=1; ri<=repeat; ri++){ m=in.nextInt();n=in.nextInt(); a=new int[m][n]; for(i=0; i<m; i++) for(j=0;j<n;j++) a[i][j]=in.nextInt(); System.out.println("max="+max(a)); } } static int max(int a[][]){ int i ,j,t; t=a[0][0]; for(i=0;i<a[i].length;i++) for(j=0;j<a[j].length;j++) if(a[i][j]>t) t=a[i][j]; return t; } } 输入: 1 3 2 23 4 5 21 35 2 输出:23 为什么???帮忙检查一下哪里错了。。。
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,