编写一个程序,根据CSE 1341课程大纲计算当前成绩 . 该程序应提示用户输入姓名 . 然后它将这些名称作为字符串传递给CSE1341Grade类的第二个方法 . 第二种方法的名称是calcGrade . 该方法将提示用户计算考试分数,测验分数和用户输入的实验室分数 .
然后,它将利用重复结构根据输入的先前计数提示考试成绩,测验成绩和实验室成绩 . 例如,如果用户输入的考试分数为2;然后程序将循环2次输入两个考试成绩;并且类似于测验和计数实验室成绩的计数 .
假设您有100%的出勤记录,您将获得所有出勤等级的5% . 使用教学大纲确定每个类别的权重,例如考试,测验和实验 . 因为你有完美的出勤率,所以总分增加5% . 假设:所有考试,实验和测验分数均超过100分 . 样品运行:
java CSE1341Grade名字:詹姆斯姓氏:邦德你有多少考试成绩? 1你有多少个测验成绩? 2你有多少实验室成绩? 2输入考试1分数:90输入测验1分数:80输入测验2分数:80输入实验室1分数:90输入实验室2分数:90总分:84.55詹姆斯邦德你的分数是:B
这是我的家庭作业,这就是我到目前为止所做的
import java.util.Scanner;
public class CSE1341Grade
{
public static void main(String [] args)
{
//set up Scanner for user input, prompt for first name, define variable, and print response
Scanner s = new Scanner(System.in);
System.out.print("First name: ");
String first = s.nextLine();
System.out.printf(" %s\n", first);
//prompt user for last name, define variable, and print response
System.out.print("Last name: ");
String last = s.nextLine();
System.out.printf(" %s\n", last);
}
public static void calcGrade(String first, String last)
{
//prompt user for number of exam grades, define exam variable, print response
System.out.print("How many exam grades do you have? ");
String exam = s.nextLine();
System.out.printf(" %s\n", exam);
//prompt user for number of quiz grades, define quiz variable, print response
System.out.print("How many quiz grades do you have? ");
String quiz = s.nextLine();
System.out.printf(" %s\n", quiz);
//prompt user for number of lab grades, define lab variable, print response
System.out.print("How many lab grades do you have? ");
String lab = s.nextLine();
System.out.printf(" %s\n", lab);
while (exam != -1)
{
System.out.print("Enter " exam 1 " score: ", ++exam)
//define variables for computations
int score = 0;
int grade = 0;
//if statement to determine the final letter grade
if(score >= 90 && score <=100){
grade = 'A'; }
else if(score >=80 && score < 90){
grade = 'B'; }
else if(score >= 70 && score < 80){
grade = 'C'; }
else if(score >=60 && score < 70){
grade = 'D'; }
else {
grade = 'F'; }
}
}
我的问题是弄清楚如何创建一个循环,提示用户需要多少考试成绩 .
4 回答
我在评论中对您的代码进行了一些更改 .
在这里你可以看到差异
http://www.mergely.com/LIckVifT/
注意:它仍然没有完成你的作业:-)
更新:由于foor循环中的索引并不重要,您可以使用它:
代替
我喜欢做一个循环并继续询问用户输入,直到我得到我想要的结果:
这是一种相对“结构化”的方式来进行交互循环,并且只要用户需要,就可以反复继续运行程序 .
-- UPDATE --
要做一些你提前知道的迭代,只需将它输入你的循环计数器:
伪代码:
这应该让你大致了解如何做到这一点,即获取金额,并从中减去1直到你达到0,每次获取数据并做它需要做的事情 . 不要忘记确保
n
永远不等于小于零(无效),并且n
是一个整数 . 否则,您希望函数只是提示用户输入金额,然后将该金额传递给实际使用它的函数 . 或者,创建一个迭代n
次的函数,并多次调用作为参数传递给它的函数(更难以正确地执行) .这样的事情对你有用 .