JAVA简单编程:教师统计学生分数并输出
///: Filename: Teacher.java
创新互联建站服务项目包括囊谦网站建设、囊谦网站制作、囊谦网页制作以及囊谦网络营销策划等。多年来,我们专注于互联网行业,利用自身积累的技术优势、行业经验、深度合作伙伴关系等,向广大中小型企业、政府机构等提供互联网行业的解决方案,囊谦网站推广取得了明显的社会效益与经济效益。目前,我们服务的客户以成都为中心已经辐射到囊谦省份的部分城市,未来相信会继续扩大服务区域并继续获得客户的支持与信任!
//老师类
public class Teacher {
//根据学生成绩的平均分由高到低排序;
private void sortStudents(Student[] s){
Student t;
for(int i=0; is.length-1; i++)
if(s[i+1].getAvgResult()s[i].getAvgResult()){
t=s[i];
s[i]=s[i+1];
s[i+1]=t;
i-=i==0?1:2;
}
}
//公布学生考试成绩
private void printInfo(Student[] s){
for(int i=0; is.length; i++)
System.out.println(s[i].getCls()+": "+s[i].getName()+" 同学,\n 总分: "+s[i].getTotalResult()+", 平均分:"+s[i].getAvgResult()+" " +
" 名列本次考试的第 "+(i+1)+" 名." +
"\n\t数学: "+s[i].getResult()[0]+" 分" +
"\n\t语文: "+s[i].getResult()[1]+" 分"+
"\n\t体育: "+s[i].getResult()[2]+" 分"+"\n");
}
public static void main(String[] args) {
String cls = "三(6)班";
Student 张三 = new Student("张三",cls,new float[]{80,70,90,});
Student 李四 = new Student("李四",cls,new float[]{90,75,65,});
Student 王五 = new Student("王五",cls,new float[]{85,95,70,});
Student[] all = {张三,李四,王五,};//全部学生放入一个数组,以便分析
Teacher th = new Teacher();//创建老师类
th.sortStudents(all);//老师对学生进行排序
th.printInfo(all);//老师公布学生的结果
}
}
//学生类
class Student{
Student(){}
Student(String name,String cls,float[] r){
this.setName(name);
this.setCls(cls);
this.setResult(r);
}
private String name;//姓名
private String cls;//班级
private float[] results;//成绩
//SETTER
public void setName(String s){name=s;}
public void setCls(String s){cls=s;}
public void setResult(float[] f){results=f;}
//GETTER
public String getName(){return name;}
public String getCls(){return cls;}
public float[] getResult(){return results;}
public float getTotalResult(){//获取学生总成绩
float f = 0;
for(int i=0; iresults.length; i++)
f+=results[i];
return f;
}
public float getAvgResult(){//获取学生平均成绩
return getTotalResult()/results.length;
}
}
java编程:输入某个班学生的成绩,输入-1时,表示输入结束。计算该班的学生人数、最高分、最低分和平均分
1、题目描述:
/*java编程:输入某个班学生的成绩,输入-1时,表示输入结束。计算该班的学生人数、最高分、最低分和平均分*/
分析:
根据题目可知,①需要连续输入数据,并将连续输入的数据保存,②记录输入的数据个数③需要有输入数据内容判断,如果输入-1则停止输入,执行计算。
2、代码如下
public static void main(String[] args) {
ArrayListFloat gList=new ArrayList();//定义浮点型动态数组,用作记录成绩,也可以取数组长度作为人数
Scanner input =new Scanner(System.in);
float grade=0;
for ( ;grade!=-1; ) {//当输入-1时结束
System.out.println("请输入学生成绩(-1结束输入):");
grade=input.nextFloat();
if (grade!=-1) {//避免最后一次录入-1
gList.add(grade);
}
}
//当输入-1时停止记录数据
//求最高分
//最低分
float max=0,sum=0,aveg=0;
float min=gList.get(0);//取第一项作为最低分初始值
for (int i = 0; i gList.size(); i++) {
if (maxgList.get(i)) {
max=gList.get(i);
}
if (mingList.get(i)) {
min=gList.get(i);
}
sum+=gList.get(i);//求总分
}
//平均分
aveg=sum/gList.size();
System.out.println("共有 "+gList.size()+"人,"+"最高分:"+max
+",最低分:"+min+",平均分:"+aveg);
}
3、运行效果
求JAVA源代码
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
public class GradeStatistic {
public static void main(String[] args) {
GradeStatistic gs = new GradeStatistic();
ListMark list = new ArrayListMark();
float sum = 0;
while(true){
Scanner sc = new Scanner(System.in);
System.out.print("Please input student name: ");
String name = sc.nextLine();
if(name.equals("end")){
break;
}
System.out.print("Please input student score: ");
float score = sc.nextFloat();
sum += score;
list.add(gs.new Mark(name, score));
}
float max = list.get(0).getScore();
float min = list.get(0).getScore();
for(Mark mark: list){
if(max mark.getScore()){
max = mark.getScore();
}
if(min mark.getScore()){
min = mark.getScore();
}
}
float average = sum / list.size();
System.out.println("Average is: " + average);
System.out.println("Max is: " + max);
System.out.println("Min is: " + min);
}
private class Mark{
private String name;
private float score;
public Mark(String name, float score){
this.name = name;
this.score = score;
}
public String getName() {
return name;
}
public float getScore() {
return score;
}
}
}
----------------------
Please input student name: Zhang san
Please input student score: 100
Please input student name: Li Si
Please input student score: 91
Please input student name: Ec
Please input student score: 35
Please input student name: ma qi
Please input student score: 67
Please input student name: end
Average is: 73.25
Max is: 100.0
Min is: 35.0
java学生成绩管理源代码
现在的大学考试题目果然简单了阿
1,做个循环一次录入10人成绩,存入相应list或者数组
2,计算
3,输入姓名,可以用map实现,或者简单的遍历数组或者list
文章名称:java学分绩计算源代码 分数的源码怎么计算
标题路径:http://scgulin.cn/article/hhcioj.html