Java:输入并找出一个数组中最大值及其位置
我们先品一下题目要求:
输入形成并找出4*4矩阵中的最大值,并输出其位置
对于新手来讲似乎并不难,但是如何体现Java是面向对象编程的呢
(没有对象就new 一个,计算机和代码才是程序员心之所向)
下面好好听讲哦~
import java.util.Scanner;
/*说实话刚学完C语言对于Java真的是又爱又恨,输入要记得加上这个包哈
让我们先来看一下main方法
public static void main(String[] args) {
Scanner scan=new Scanner(System.in); //这里记得要加上,输入必备
int [][]a = new int [4][4]; //这里新建立一个数组取名叫a,数据类型为整形,格式4*4
for(int i=0;i<4;i++){
for(int j=0;j<4;j++)
a[i][j]=scan.nextInt(); //输入下一个数据,由于数据少,我这里也没加判断
}
scan.close(); //这里我用的是VScode,所以加上了这个要不有警告,看着挺难受的
print(a); //调用同一类的print方法,这里还是调用
}
接下来是print方法
十分简单易懂不多赘述了,注意调用函数的方式,返回值啥的就行
public static int print(int[][] a) {
int max = -999;
int h = 0,k = 0;
for(int i = 0; i <4; i++ ){
for(int j = 0; j < 4; j++){
if(a[i][j] > max){
max = a[i][j];
h = i; k = j;
}
}
}
System.out.println("max=" + max);
System.out.println("x=" + h +" " + "y=" + k);
return 0;
}
这个时候就有人问了 “ 如果不是规定的规格呢”
问题问的好,我想把你拍墙上没扣都扣不下来的那种
import java.util.Scanner; //???白讲了???
没办法,我还是爱你们的,给你们再敲一下吧
public static void main(String[] args) {
Scanner scan=new Scanner(System.in); //这里记得要加上,输入必备
int m,n;
n=scan.nextInt();
m=scan.nextInt();
int [][]a = new int [m][n]; //这里新建立一个数组取名叫a,数据类型为整形,格式4*4
for(int i=0;i<m;i++){
for(int j=0;j<n;j++)
a[i][j]=scan.nextInt(); //输入下一个数据,由于数据少,我这里也没加判断
}
scan.close(); //这里我用的是VScode,所以加上了这个要不有警告,看着挺难受的
print(a); //调用同一类的print方法,这里还是调用
}
好啦,如果还有啥不对的地方,希望大佬们批评指正。
我是一只爱你们的小萌新,啾咪~