关于求最小值的问题!
package com.LianXi; import java.util.Scanner; public class Lianxi1 { public static void main(String[] args) { Scanner sc=new Scanner(System.in); System.out.println("请输入10个整数:"); int[] n=new int[10]; int max=n[0]; int min=n[0]; float sum=0; for(int i=0;i<n.length;i++){ n[i]=sc.nextInt(); if(max<n[i]){ max=n[i]; } if(min>n[i]){ min=n[i]; } sum+=n[i]; } System.out.println("最大值:"+max); System.out.println("最小值:"+min); System.out.println("平均值:"+sum/n.length); } }
为什么输出最小值总是0??
19
收起
正在回答
1回答
不是最小值总是0。是你给min赋的初值为0,如果输入的10个数中没有比0小的数时,if(min>n[i])永远都判断为假,所以最后min的值仍为最初赋值的0。只有当你输入的10个数中有比0小的数时,你的代码才能得到正确的结果。
建议先向数组中输入10个数,然后定义max 和min,并且将这两个变量初始化为数组的第一个元素,然后遍历数组按你原来的代码找最大值赋值给max,最小值赋值给min。祝学习愉快~
Java零基础入门18
- 参与学习 人
- 提交作业 7317 份
- 解答问题 14452 个
想要入门学编程?多年一直活跃在编程语言排行版前列的Java是一个很好的选择。本路径将从Java基础语法、面向对象、常用工具类三部分,为你开启软件开发的大门!
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星