若把nums[i]和min/max調(diào)換位置衛(wèi)生結(jié)果就是錯的
public class HelloWorld {
? ??
? ? public static void main(String[] args) {
? ? ? ??
// 定義一個整型數(shù)組,并賦初值
int[] nums = new int[] { 61, 23, 4, 74, 13, 148, 20 };
? ? ? ??
int max = nums[0]; // 假定最大值為數(shù)組中的第一個元素
int min = nums[0]; // 假定最小值為數(shù)組中的第一個元素
double sum = 0;// 累加值
double avg = 0;// 平均值
? ? ? ??
for (int i = 0; i < nums.length; i++) { // 循環(huán)遍歷數(shù)組中的元素
? ? ? ? // 如果當前值大于max,則替換max的值
? ? ? ? if(nums[i]>max)
? ? ? ? {max=nums[i];}
? ? ? ? // 如果當前值小于min,則替換min的值
? ? ? ? if(nums[i]<min)
? ? ? ? {min=nums[i];}
? ? ? ??
? ? ? ? // 累加求和
? ? ? ? sum=nums[i]+sum;
? ? ? ??
}
? ? ? ??
? ? ? ? // 求平均值
? ? ? ?avg=sum/nums.length;
? ? ? ? System.out.println("數(shù)組中的總和:" + sum);
System.out.println("數(shù)組中的最大值:" + max);
System.out.println("數(shù)組中的最小值:" + min);
System.out.println("數(shù)組中的平均值:" + avg);
}
}
{min=nums[i];}
{max=nums[i];}
把nums[i]和min、max調(diào)換位置結(jié)果為什么是錯的
2016-07-17
if(max>nums[i])
? ? ? ? {max=nums[i];} ? //max取得是最小值 max=nums[0] nums[0]>nums[i] ?取得是比初始值還小的值 一直比較最后得到最小值 ;下面同理
? ? ? ? // 如果當前值小于min,則替換min的值
if(min<nums[i])
? ? ? ? {min=nums[i];}
2016-07-17
if(max<nums[i])
? ? ? ? {max=nums[i];}
? ? ? ? // 如果當前值小于min,則替換min的值
if(min>nums[i])
? ? ? ? {min=nums[i];}
并沒有錯呀 max和min初始都等于nums[0] 要把每一個值都和nums[i]比較 要不大于max要不小于min
2016-07-17
數(shù)字串字符會掩蓋除61的其他字符,導致所有數(shù)字一樣