黑马程序员技术交流社区
标题:
最小值一直为0,什么原因?
[打印本页]
作者:
李前进
时间:
2014-3-18 23:31
标题:
最小值一直为0,什么原因?
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.IOException;
public class Compare
{
public static void main(String[] args)
{
BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
int []a=new int[3];
int min=a[0],max=a[0];
for(int i=0;i<a.length;i++)
{
try
{
System.out.print("请输入第"+(i+1)+"个数:");
a[i]=Integer.parseInt(br.readLine());
}
catch (IOException e)
{
e.printStackTrace();
}
}
for(int i=0;i<a.length;i++)
{
if(a[i]>max)
{
max=a[i];
}
if(a[i]<min)
{
min=a[i];
}
}
System.out.println("最大值为:"+max+"\n最小值为:"+min);
}
}
复制代码
作者:
李前进
时间:
2014-3-18 23:44
应该加max=arr[0]; min=arr[0];可是为什么呢?谁给解释一下?
作者:
乔钰博
时间:
2014-3-18 23:46
因为数组在初始化的时候全是0,所以你的min = a[0]一开始的值就是0,如果输入的数没有比0小的,最小值就是0.
作者:
李前进
时间:
2014-3-18 23:50
乔钰博 发表于 2014-3-18 23:46
因为数组在初始化的时候全是0,所以你的min = a[0]一开始的值就是0,如果输入的数没有比0小的,最小值就是0 ...
明白了。
作者:
戒爱
时间:
2014-3-19 00:45
如果,你输入一堆负数,那么你又会问为什么最大值怎么一直是0
应该把max、min的初始化值的位置放在数组已经有值的地方,放到下面就好了
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2