 
		慕粉2007447340
2017-02-21 20:10
package com.max_min;
/*
* 创建一个容量为7的数组,从键盘获取数据61,23,4,74,13,148,20
* 寻找出最大值和最小值并计算累加值和平均值
* 要求假设最大值和最小值是同一个
*/
import java.util.Scanner;
public class decide_m {
public static void main(String[] args) {
int max,min,sum;
double avr;
System.out.println("请输入数据");
Scanner input=new Scanner(System.in);
int[] nums=new int[7];
for(int i=0;i<nums.length;i++){
int num[i]=input.nextInt();
}
}
}
 
				num[i]在数组中已经得到了,不能再定义赋值了
 
				import java.util.*;
public class HelloWorld {
    public static void main(String[] agr) {
        int sum =0;
        int avg =0;
        Scanner scan = new Scanner(System.in);
        int []nums = new int[7];//定义长度为7的数组
        for(int i=0;i<nums.length;i++){
            System.out.print("请输入第"+(i+1)+"个数字:");
            nums[i] = scan.nextInt();
            sum = sum+nums[i];
        }
        Arrays.sort(nums);//把数组中的数字从小到大排序
        avg = sum/nums.length;
        System.out.println("累加值:"+sum);
        System.out.println("平均值:"+avg);
        
        System.out.println("最大值:"+nums[0]);
        System.out.println("最小值:"+nums[nums.length-1]);
    }
}
 
				请参考如下代码:
import java.util.Scanner;
public class HelloWorld {
 public static void main(String[] args) {
  int max,min,sum=0;
  double avr;
  System.out.println("请输入数据:");
  Scanner input = new Scanner(System.in);
  int[] nums = new int[7];
  for (int i = 0;i < nums.length;i++) {
   nums[i] = input.nextInt();
  }
  max=nums[0];   //初始化最大值
  min=nums[0];   //初始化最小值
  for (int i = 0;i < nums.length;i++) {
   if(nums[i]>max){
    max=nums[i];   //比较最大值
   }
   if(nums[i]<min){
    min=nums[i];   //计算最小值
   }
   sum=sum+nums[i];   //计算和
  }
  avr=sum/nums.length;   //计算平均值
  System.out.println(max);   //输出最大值
  System.out.println(min);   //输出最小值
  System.out.println(avr);   //输出平均值
 }
}
 
				最后你为什么要重新定义一个数组?如果是想输入到之前的nums数组里就直接改成
nums[i]=input.nextInt();
如果是想新定义的话 你的写法也错了 ,改成
int[] num = new int[7];
num[i] = input.nextInt();
 
				最后一行的正确写法为:nums[i]=input.nextInt();
Java入门第一季(IDEA工具)
1168090 学习 · 18754 问题
相似问题