构建一个java应用程序,要求用户输入0-100

时间:2016-10-07 04:18:31

标签: java arrays if-statement

我非常擅长Java编程,我的教授要求我们编写一个程序:

通过信件显示每个年级。 (例如:A,B,C,D,F) 显示最低&班级的平均成绩 显示通过考试的人数(70+正在通过)

我一直在尝试使用数组和if else语句来解决这个问题,但我没有取得多大进展。你能帮帮我吗?

我知道我不擅长编码,但这是我正在努力的事情。

我还想在我的代码中加入if else语句以简化操作。

提前非常感谢你。

import java.util.Scanner;

public class HelloWorld
{

  public static void main (String[] args)
  {
    double[] grades = new double[10];
    int sum

    Scanner scan = new Scanner (System.in);
    System.out.println ("Number of students: " + grades.length);

    for (int index = 0; index < grades.length; index++)
    {
      System.out.print ("Enter number " + (index+1) + ": ");
      grades[index] = scan.nextDouble();
    }
  }
}

2 个答案:

答案 0 :(得分:0)

使用ofstream ofs; ofs.open("output.ppm", ofstream::out); ofs<<"P6\n"<<img_wd<<" "<<img_ht<<"\n"<<max_val<<"\n"; for(int j=0; j <img_ht;j++) { for (int i=0; i<img_wd;i++) { ofs<<static_cast<unsigned char>(Pixel_tmp[j][i].r)<<static_cast<unsigned char>(Pixel_tmp[j][i].g)<<static_cast<unsigned char>(Pixel_tmp[j][i].b); //write as ascii } } ofs.close(); 循环查找最小值,就像当前循环一样并使用:

for

只需找到循环中的总和即可找到平均值:

min = Math.min(min, grades[index]);

然后除以值的数量。

在循环中使用sum += grades[index]; 语句可以找到70+等级的数量:

if

这些操作中的每一个也可以使用Java 8中的DoubleStream完成:

if (grades[index] >= 70) {
    numPassing++;
}

答案 1 :(得分:0)

好的我修改了一下代码,加上我没有使用java中提供的任何功能,这样你就可以理解流控制和逻辑是java的新手。

import java.util.Scanner;

public class HelloWorld
{

  public static void main (String[] args)
  {
    double[] marks = new double[10];
    char[] grades=new char[10];
    int[] numGradeStudent={0,0,0,0,0};
    int min=0,avg=0,minIndex=0;

Scanner scan = new Scanner (System.in);
System.out.println ("Number of students: " + grades.length);

for (int index = 0; index < grades.length; index++)
{
    //Taking  marks then applying grades and counting no.  of students 
  System.out.print ("Enter number " + (index+1) + ": ");
  marks[index] = scan.nextDouble();
  if(marks[index]>90)
     grades[index]='A';
  if(marks[index]>75 && marks[index]<=90)
     grades[index]='B';  
  if(marks[index]>65 && marks[index]<=75)
     grades[index]='C';  
  if(marks[index]>55 && marks[index]<=64)
     grades[index]='D'; 
  else
     grades[index]='E';

 //Setting up graded students down from here
 if(grades[index]=='A')
     numGradeStudent[0]++;
 if(grades[index]=='B')
     numGradeStudent[1]++;
 if(grades[index]=='C')
     numGradeStudent[2]++;
 if(grades[index]=='D')
     numGradeStudent[3]++;
 if(grades[index]=='E')
     numGradeStudent[4]++;
}
min=numGradeStudent[0];
for(int i=0;i<5;i++){
    if(numGradeStudent[i]<min){
        min=numGradeStudent[i];
        minIndex=i;
    }

}
System.out.println("Min grade of class is:"+ grades[minIndex]);
for(int i=0;i<10;i++){
    if(marks[i]>70)
        System.out.println("Student "+(i+1)+" passed.");
}

} }