自己改成键盘输入数组,其他都正常,就是min无论怎样都输出0,大神能否解答一下谢谢
/**
*
*/
package en.hh;
import java.util.Scanner;
/**
* @author 88888888笔
*要求:
*1、 定义一个整型数组,并赋初值 61, 23, 4, 74, 13, 148, 20
*2、 定义变量分别保存最大值、最小值、累加值和平均值,并假设数
* 组中的第一个元素既为最大值又为最小值
*3、 使用 for 循环遍历数组中的元素,分别与假定的最大值和最小值
* 比较。如果比假定的最大值要大,则替换当前的最大值;如果比假
* 定的最小值要小,则替换当前的最小值
*4、 循环执行过程中对数组中的元素进行累加求和
*5、 循环结束根据累加值计算平均值,并打印输出相关内容
*777、改进:数组数据由键盘输入
*/
public class mooc3 {
public static void main(String[] args) {
//int[] nums= {61,23,4,74,13,148,20};
Scanner input=new Scanner(System.in);//创建Scanner对象
int[] nums=new int[7]; //声明7位数组
int max=nums[0]; //初始最大值位第一位数据
int min=nums[0]; //初始最小值为第一位数据
int sum=0; //初始总和为0
double avg=0; //初始平均值为0
System.out.println("请输入七个数据:");
for(int j=0;j<7;j++){
nums[j]=input.nextInt(); //输入数组数据
}
for(int i=0;i<nums.length;i++) {
sum=sum+nums[i];//求和
if(nums[i]<min) //替换最小值
min=nums[i];
if(nums[i]>max) //替换最大值
max=nums[i];
}
avg=sum/nums.length; //求平均值
System.out.println("最大值:"+max+'\n'+"最小值:"+min+'\n'+"平均值:"+avg);
}
}
最大值,平均数都能正确显示,但是最小值一直都输出是0