吃藕丑3
2017-11-24 15:25
public class HelloWorld {
public static void main(String[] args) {
// 定义一个整型数组,并赋初值
int[] nums = new int[] { 61, 23, 4, 74, 13, 148, 20 };
int max = nums[0]; // 假定最大值为数组中的第一个元素
int min = nums[0]; // 假定最小值为数组中的第一个元素
double sum = 0;// 累加值
double avg = 0;// 平均值
for (int i = 0; i < nums.length; i++) { // 循环遍历数组中的元素
// 如果当前值大于max,则替换max的值
if(nums[i]>max){
nums[i]=max;
}else{
// 如果当前值小于min,则替换min的值
nums[i]=min;
}
// 累加求和
sum=sum+nums[i];
}
// 求平均值
avg=sum/nums.length;
System.out.println("数组中的最大值:" + max);
System.out.println("数组中的最小值:" + min);
System.out.println("数组中的平均值:" + avg);
}
}
数组的最大值为:148
数组的最小值为:4
数组的和为:343
数组的平均值为:49.0
关于所有值都是61的问题,你把nums[i]=max改为max=nums[i]
nums[i]=min改为min=nums[i]
nums[i]=max 与max=nums[i]不一样
假设nums[i]为a,max为b。
第一个式子是将nums[i]转变为b
第二个式子是将max转变为a
“=”的意思是将左边的值给右边,不是两边相等。
你没发现你的最小值都没有判断就给它赋值了吗,建议你的else改为else if(min>nums[i])
数组中的最大值:61
数组中的最小值:61
数组中的平均值:61.0
Java入门第一季(IDEA工具)升级版
1167144 学习 · 17927 问题
相似问题