慕姐0350497
2016-09-03 15:14
我的代码为什么只循环一次
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;
}
// 如果当前值小于min,则替换min的值
if(nums[i]<min){
nums[i]=min;}
// 累加求和
sum+=nums[i];
// 求平均值
avg=sum/nums.length;
}
System.out.println("数组中的最大值:" + max);
System.out.println("数组中的最小值:" + min);
System.out.println("数组中的平均值:" + avg);
结果是61.61.61,想问问哪里出了问题。
nums[i]=max; nums[i]=min;写反了,max=nums[i]; min = nums[i];这样才对
不是执行了一次,而是第一次执行后,数组中其它的值都被重新赋值了61:nums[i]=max; nums[i]=min;
你的max 和min 的赋值语句写反了
应该是max=nums【i】 min=nums【i】
Java入门第一季(IDEA工具)升级版
1167347 学习 · 18629 问题
相似问题