一、题目:寻找数组中最大值
- 问题描述
对于给定整数数组a[],寻找其中最大值,并返回下标。
输入格式
整数数组a[],数组元素个数小于1等于100。输出数据分作两行:第一行只有一个数,表示数组元素个数;第二行为数
组的各个元素。
输出格式
输出最大值,及其下标
样例输入
3
3 2 1
样例输出
3 0
二、代码和思路
1、代码
/*寻找数组中最大值*/
import java.util.Scanner;
/**
* @author GBL
*
*/
public class Main {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
int MAX;//用于存储最大值
int index;//用于存储最大值的下标
int n = input.nextInt();//输入数组的长度
int str[] = new int[n];//创建一个数组
for (int i = 0; i < n; i++)
str[i] = input.nextInt();//用循环对数组进行赋值
MAX = str[0];//是最大值等于数组的第一个数
index = 0;//下标也是的一个数的下标
for (int i = 0; i < n; i++) {//使用循环对数组进行遍历
if (str[i] >= MAX) {//如果有新的数大于被已经存储的最大值
MAX = str[i]; //更新最大值
index = i;//更新最大值下标
}
}
System.out.println(MAX + " " + index);//输出最大值和下标
}
}
2、思路
- 本题很简单,用for循环的到的数与已知的最大值进行比较,如果有大于已经最大值的就更新MAX和index。
三、个人总结
-
这个代码能够实现要求的功能,而且有多种解法,目前只写了一种解法,在以后会更换更多的解法。
-
System.out.println(),快速生成的方法:写Sysout,然后alt+"/";
-
public static void main(String[] args),快速生成的方法:写main,然后alt+"/";