找出最小值与位置问题 求助

weixin_44558311 2019-01-17 04:57:38
题目描述

找出一行数字中的最小元素以及位置.

输入
数据只有一行数字,每个数字有空格间隔。
输出
输出最小值与其位置

样例输入

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);
}
}


...全文
167 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
wangjie916 2019-01-18
  • 打赏
  • 举报
回复
查找最小数的同时记录一下下标
叶遮沉阳 2019-01-17
  • 打赏
  • 举报
回复
升级版

    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);
    }
叶遮沉阳 2019-01-17
  • 打赏
  • 举报
回复
参考代码:

    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:4

Process finished with exit code 0
騘騘 2019-01-17
  • 打赏
  • 举报
回复
main>a时main的下表是1,你j=i+1=2了

67,515

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧