為什么運行對了,輸出結果不對
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的值
?? ??? ?do {
?? ??? ???? max=nums[i];
?? ??? ?}while(nums[i]>max);
?? ??? ??? ?
?? ??? ?
?????? ?
?????? ?
??????? // 如果當前值小于min,則替換min的值
??????? do{
??????????? min=nums[i];
??????? }while(nums[i]<min);
?????? ?
?????? ?
??????? // 累加求和
??????? sum=nums[0]+nums[1]+nums[2]+nums[3]+nums[4]+nums[5]+nums[6];
?????? ?
?? ??? ?}
?????? ?
??????? // 求平均值
????? ?
??????? avg=sum/7;
?? ??? ?System.out.println("數組中的最大值:" + max);
?? ??? ?System.out.println("數組中的最小值:" + min);
?? ??? ?System.out.println("數組中的平均值:" + avg);
?? ?}
}
2019-05-11
別用do。。while,do...while時先執行后檢查判斷,你每次遍歷時,都把遍歷的值賦給了max和min,一開始就錯了