题目描述找出一行数字中的最小元素以及位置.输入
数据只有一行数字,每个数字有空格间隔。
输出
输出最小值与其位置样例输入9 10 2 7 12 1 6 9 3 5样例输出1
6写好的代码,已经找到最小值以及位置,但无法输出结果,要怎样才能输出结果?
import java.util.Scanner;public class Test{
public static void main(String[] args) {
Scanner in=new Scanner(System.in);
int min = in.nextInt();
int j = 0,i = 1;
while(in.hasNextInt())
{
int a = in.nextInt();
    if(min>a)
    {
   min=a;
   j=i+1;
   
    }
    i++;
}
System.out.println(min);
        System.out.println(j);
}
}

解决方案 »

  1.   

    main>a时main的下表是1,你j=i+1=2了
      

  2.   

    参考代码:    public static void main(String[] args) {
            Scanner in = new Scanner(System.in);
            String arrStr = in.next();
            String[] arr = arrStr.split(",");
            if(arr.length == 0){
                System.out.println("请输入几个数字,用逗号分隔!!!");
                return;
            }
            int minValue = Integer.valueOf(arr[0]);
            int minPos = 0;
            for(int i = 1;i < arr.length;i++){
                if(Integer.valueOf(arr[i]) < minValue){
                    minValue = Integer.valueOf(arr[i]);
                    minPos = i;
                }
            }
            System.out.println("minValue:"+minValue);
            System.out.println("minPos:"+minPos);
        }输出结果:D:\developTools\jdk1.8.0-64\bin\java ...
    2,14,23,10,1,8,9
    minValue:1
    minPos:4Process finished with exit code 0
      

  3.   

    升级版:    public static void main(String[] args) {
            Scanner in = new Scanner(System.in);
            String arrStr = in.next();
            while(!Pattern.matches("\\d+(,\\d+)*", arrStr)){
                System.out.println("请输入正确的格式!!!如:1,2,3");
                in = new Scanner(System.in);
                arrStr = in.next();
            }
            String[] arr = arrStr.split(",");
            int minValue = Integer.valueOf(arr[0]);
            int minPos = 0;
            for(int i = 1;i < arr.length;i++){
                if(Integer.valueOf(arr[i]) < minValue){
                    minValue = Integer.valueOf(arr[i]);
                    minPos = i;
                }
            }
            System.out.println("minValue:"+minValue);
            System.out.println("minPos:"+minPos);
        }