有些问题?

来源:6-6 编程练习

何不二

2016-04-14 09:32

   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){
         max=nums[i];  
        }if(nums[i]<min){
         min=nums[i];   
        }
        sum+=nums[i];
        }
        avg=sum/i;

        System.out.println("数组中的最大值:" + max);
        System.out.println("数组中的最小值:" + min);
        System.out.println("数组中的平均值:" + avg);
    }
}

为什么不能除以i呢?

int i=0;

for (; i < nums.length; i++)

而先定义i就可以除了呢?

写回答 关注

2回答

  • 慕粉9956222
    2016-04-14 10:51:45
    已采纳

    for中定义的变量,生命周期也就是作用域只在for的一对大括号间。所以要在外面定义,才对for以外的有效。开发环境不同for中定义的变量的生命周期也不太一样,vc6中作用域就不止是for的部分。

    何不二

    了解 谢谢

    2016-04-14 11:56:42

    共 1 条回复 >

  • 戚风web
    2016-04-14 10:46:44

    你除以i干嘛,直接除以nums.length不就好了吗,你i的初始值为0,0不能做除数,你不知道吗??????

Java入门第一季(IDEA工具)升级版

0基础萌新入门第一课,从Java环境搭建、工具使用、基础语法开始

1167379 学习 · 18748 问题

查看课程

相似问题