Java编程,利用数组保存20个学生的成绩,统计输出平均分和高于平均分的人数

import java.util.Scanner;
public class ex4_9
{
public static void main(String args[])
{
Scanner input=new Scanner(System.in);
int a[]=new int[20];
int i,num;
double sum;
num=0;
sum=0;

for(i=0;i<a.length;i++)
{
sum=sum+a[i];
}
System.out.println('平均成绩为:'+sum/20);
}

for(i=0;i<a.length;i++)
{
if(a[i]>sum/20)
num++;
}
System.out.println('成绩在平均分之上的人数为:'+num);

}
}

我这个是哪里的问题呢,为什么好多语法错误。。。。。难道是我的方法不对么,谢谢啦,哪位大神T-T

import java.util.Scanner;
public class ex4_9
{
   public static void main(String args[])
    {
        Scanner input=new Scanner(System.in);
        int a[]=new int[20];
        
        for(int i=0;i<a.length;i++){//初始化数组
         a[i]=input.nextInt();
        }
        
        int i,num;
        double sum;
        num=0;
        sum=0;
    
        for(i=0;i<a.length;i++)
        {
            sum=sum+a[i];
        }
    System.out.println("平均成绩为:"+sum/20);//双引号
    //多了个大括号
    
        for(i=0;i<a.length;i++)
        {
            if(a[i]>sum/20)
            num++;
        }
        System.out.println("成绩在平均分之上的人数为:"+num);//双引号不是单引号
        
    }
}

温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-04-04

而且你还没有输入数据的地方。

第2个回答  2014-04-04
package test;

import java.io.BufferedReader;
import java.io.InputStreamReader;

public class ex4_9 {
public static void main(String args[]) throws Exception {
int i, num;
String aa[] = new String[20];
double sum;
System.out.print("请输入最多20个整数用逗号隔开:");
BufferedReader strin = new BufferedReader(new InputStreamReader(
System.in));
aa = strin.readLine().split(",");

int[] a = new int[aa.length];
for (int j = 0; j < aa.length; j++) {
a[j] = Integer.parseInt(aa[j]);
}
num = 0;
sum = 0;

for (i = 0; i < a.length; i++) {
sum = sum + a[i];
}
System.out.println("平均成绩为:" + sum / a.length);

for (i = 0; i < a.length; i++) {
if (a[i] > sum / a.length)
num++;
}
System.out.println("成绩在平均分之上的人数为:" + num);

}
}

改了下 自己对比下吧追问

谢谢大家!!你们都很棒

第3个回答  2014-04-04
import java.util.Scanner;
public class ex4_9
{
public static void main(String args[])
{
Scanner input=new Scanner(System.in);
int a[]=new int[20];
int i,num;
double sum;
num=0;
sum=0;

for(i=0;i<a.length;i++)
{
sum=sum+a[i];
}
System.out.println("平均成绩为:"+sum/20);

for(i=0;i<a.length;i++)
{
if(a[i]>sum/20)
num++;
}
System.out.println("成绩在平均分之上的人数为:"+num);

}
}

单引号改为双引号多了一个反括号
相似回答