如何在Java中使用循环和平均

如何在Java中使用循环和平均,java,loops,Java,Loops,我的程序应该是找出学生的平均成绩,包括女性、男性和总平均成绩。以及所有女性、男性和所有学生。首先,它询问学生是男性还是女性。如果选择“男性”,则会执行循环,但在循环结束后。我想让我的程序直接进入下一个选项。例如,如果选择男性,则输入女性,反之亦然 import java.util.Scanner; public class practice { public static void main(String [] args) { Scanner keyboard = new Scann

我的程序应该是找出学生的平均成绩,包括女性、男性和总平均成绩。以及所有女性、男性和所有学生。首先,它询问学生是男性还是女性。如果选择“男性”,则会执行循环,但在循环结束后。我想让我的程序直接进入下一个选项。例如,如果选择男性,则输入女性,反之亦然

import java.util.Scanner;
public class practice {
  public static void main(String [] args) {
    Scanner keyboard = new Scanner (System.in);
    int maleCount=0, femaleCount=0, totalStudents;
    double GPA, mTotal = 0, mAverage, fTotal = 0, fAverage, allAverage;

    System.out.println("Is the student Male or Female?");
    System.out.println("Enter M for male or F for female.");
    String student = keyboard.next().toUpperCase();
    System.out.println("Enter GPA");
    GPA = keyboard.nextDouble();


    if (student.equals("M")) {
      while (GPA >=0) {
        mTotal = mTotal + GPA;
        maleCount++;
        GPA = keyboard.nextDouble();
      }
    }

    if (student.equals("F")) {
      while (GPA >=0) {
        fTotal = fTotal + GPA;
        femaleCount++;
        GPA = keyboard.nextDouble();
      }
    }

    mAverage = mTotal/maleCount;
    fAverage = fTotal/femaleCount;
    allAverage = mTotal + fTotal;
    totalStudents = maleCount + femaleCount;

    System.out.println("Total MALE students: " + maleCount);
    System.out.println("Total FEMALE students: " + femaleCount);
    System.out.println("Total STUDENTS: " + totalStudents);
    System.out.println("Total MALE GPA: " + mTotal);
    System.out.println("Total FEMALE GPA: " + fTotal);
    System.out.println("Total MALE Average GPA: " + mAverage);
    System.out.println("Total average: " + allAverage);
  }
}
如何在Java中使用循环和平均值

我想说,就像你问题中的代码一样。只需在需要循环的零件周围添加一个循环,并确定如何结束循环

我突然想到的其他问题是:

  • 您似乎以一种奇怪的顺序接受输入

  • 您计算的平均值不正确。再看一遍代码。问题应该是显而易见的


实际上,回答这个问题的困难之一是根本不清楚编写的程序应该如何运行。我们不能从你给我们看的东西中推断出来。”因为你写的东西显然不管用。。。从可用性的角度来看


如果您不理解并且不能正确解释需求,那么您就不太可能正确地实现它们。

修复了我的代码,很抱歉不清楚

import java.util.Scanner;
public class practice 
{
public static void main(String [] args)
{
Scanner keyboard = new Scanner (System.in);
int maleCount=0, femaleCount=0, totalStudents, count = 0;
double GPA, mTotal = 0, mAverage, fTotal = 0, fAverage, allAverage;

System.out.println("Is the student Male or Female?");
System.out.println("Enter M for male or F for female.");
String student = keyboard.next().toUpperCase();


do{
  System.out.println("Enter GPA " + student);
  GPA = keyboard.nextDouble();
if (student.equals("M"))
{
while (GPA >=0)
{
    mTotal = mTotal + GPA;
    maleCount++;
    GPA = keyboard.nextDouble();
}
student = "F";
}


else if (student.equals("F"))
{
    while (GPA >=0)
    {
        fTotal = fTotal + GPA;
        femaleCount++;
        GPA = keyboard.nextDouble();
    }
    student = "M";
}
}
while (++count < 2);


mAverage = mTotal/maleCount;
fAverage = fTotal/femaleCount;
totalStudents = maleCount + femaleCount;
allAverage = (mTotal + fTotal)/totalStudents;



System.out.println("Total MALE students: " + maleCount);
System.out.println("Total FEMALE students: " + femaleCount);
System.out.println("Total STUDENTS: " + totalStudents);
System.out.println("Total MALE GPA: " + mTotal);
System.out.println("Total FEMALE GPA: " + fTotal);
System.out.println("Total average: " + allAverage);
import java.util.Scanner;
公共课堂实践
{
公共静态void main(字符串[]args)
{
扫描仪键盘=新扫描仪(System.in);
int maleCount=0,femaleCount=0,totalStudents,count=0;
双GPA,总平均值=0,平均值,总平均值=0,平均值,平均值;
System.out.println(“学生是男性还是女性?”);
System.out.println(“输入M表示男性,输入F表示女性”);
字符串student=keyboard.next().toUpperCase();
做{
System.out.println(“输入GPA”+学生);
GPA=keyboard.nextDouble();
如果(学生等于(“M”))
{
而(GPA>=0)
{
mTotal=mTotal+GPA;
maleCount++;
GPA=keyboard.nextDouble();
}
学生=“F”;
}
else如果(学生等于(“F”))
{
而(GPA>=0)
{
fTotal=fTotal+GPA;
femaleCount++;
GPA=keyboard.nextDouble();
}
student=“M”;
}
}
而(++计数<2);
mAverage=总人数/男性人数;
F平均数=F总人数/女性人数;
学生总数=男性人数+女性人数;
平均人数=(总人数+总人数)/学生总数;
System.out.println(“男生总数:+malecont”);
System.out.println(“女生总数:+femalecont”);
System.out.println(“学生总数:+totalStudents”);
系统输出打印项次(“男性总平均成绩:+mTotal”);
System.out.println(“女性总平均成绩:+fTotal”);
System.out.println(“总平均值:+allAverage”);

}

1)对代码块使用一致的逻辑缩进。代码缩进旨在帮助人们理解程序流程。2)最好形成一个明确的问题(并在末尾添加“?”。你的问题是什么?哦,我刚刚在标题中发现了这个问题。同样,请确保添加“?”。