本题要求编写程序,找出给定的n个数中的最大值及其对应的最小下标(下标从0开始)。
输入格式:
输入在第一行中给出一个正整数n(1<n≤10)。第二行输入n个整数,用空格分开。
输出格式:
在一行中输出最大值及最大值的最小下标,中间用一个空格分开。
输入样例:
6
2 8 10 1 9 10
输出样例:
10 2
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner s=new Scanner(System.in);
int n=s.nextInt();
int num[]=new int[n];
int i,index=0;
for(i=0;i<n;i++)
num[i]=s.nextInt();
int max=num[0];
for(i=0;i<n;i++)
{if(num[i]>max)
{
max=num[i];
}}
for(i=0;i<n;i++)
{
if(num[i]==max)
{ index=i;
break;}
}
System.out.printf("%d %d",max,index);
s.close();
}}
应该有更简单的方法,其实如果只求最大值可以直接调用Arrays.sort()函数,但是这题里面还要求最小下标,所以不能使用。
思路是先找出最大值,然后遍历数组,得到最小下标。
新手入门写的不好请多指教。