javaif分支学生成绩
⑴ 用java学生成绩统计
importjava.util.Scanner;
publicclassTest{
ooleanend_flag=true;
publicstaticvoidmain(String[]args){
Studentsstudent=newStudents();
student.InputData();//输入学生数据
Stringorder;
while(end_flag){
System.out.println("请输入数字1-5:");
Scanners=newScanner(System.in);
order=s.nextLine();
student.Operator(order);
}
}
}
Students类:
importjava.util.ArrayList;
importjava.util.Scanner;
publicclassStudents{
privateintSTUDENTS_NUM=5;//学生的人数
privateintSUBJECTS_NUM=3;//课程数
privateString[][]data=newString[STUDENTS_NUM][SUBJECTS_NUM+2];
privateStringname;
privateintChinese_score;
privateintMath_score;
privateintEnglish_score;
publicvoidSearchHighestScore(String[][]original){//查找最高成绩
intflag=Integer.parseInt(original[0][4]),position=0;
for(inti=1;i<original.length;i++){
if(Integer.parseInt(original[i][4])>flag){
flag=Integer.parseInt(original[i][4]);
position=i;
}
}
System.out.print("最高分同学的姓名和总分为:");
System.out.println(original[position][0]+""+original[position][4]);
}
publicvoidSearchLowestScore(String[][]original){
intflag=Integer.parseInt(original[0][4]),position=0;
for(inti=1;i<original.length;i++){
if(Integer.parseInt(original[i][4])<flag){
flag=Integer.parseInt(original[i][4]);
position=i;
}
}
System.out.print("最低分同学的姓名和总分为:");
System.out.println(original[position][0]+""+original[position][4]);
}
publicvoidOrderStudents(String[][]original){
String[][]result=original;
Stringtemp;
for(inti=1;i<result.length;i++){
for(intj=0;j<result.length-i;j++){
if(Integer.parseInt(result[j][4])<Integer
.parseInt(result[j+1][4])){
temp=result[j][4];
result[j][4]=result[j+1][4];
result[j+1][4]=temp;
temp=result[j][0];
result[j][0]=result[j+1][0];
result[j+1][0]=temp;
}
}
}
System.out.println("排名 "+"姓名 "+"总分 ");
for(inti=0;i<STUDENTS_NUM;i++){
System.out.println(i+1+" "+result[i][0]+" "
+result[i][4]);
}
}
publicvoidScoreUnder60(String[][]original){
System.out.println("平均分在60以下的学生的姓名为:");
ArrayListtemp=newArrayList();
for(inti=0;i<original.length;i++){
if(Integer.parseInt(original[i][4])/SUBJECTS_NUM<60){
temp.add(original[i][0]);
}
}
System.out.print(temp+"");
System.out.println(" "+"平均分在60以下的学生的人数为:"
+temp.size());
}
publicIntegerSearchScore(Stringstudent_name){
intposition=-1;
for(inti=0;i<data.length;i++){
if(student_name.equals(data[i][0])){
position=i;
}
}
if(position!=-1)
returnInteger.valueOf(data[position][4]);
else
returnnull;
}
publicvoidOperator(Stringorder){
if("1".equals(order)){
SearchHighestScore(data);
SearchLowestScore(data);
}elseif("2".equals(order)){
OrderStudents(data);
}elseif("3".equals(order)){
ScoreUnder60(data);
}elseif("4".equals(order)){
Stringname;
System.out.println("请输入学生的姓名:");
Scanners=newScanner(System.in);
name=s.nextLine();
if(SearchScore(name)!=null)
System.out.println(name+"的总分为:"+SearchScore(name));
else
System.out.println("查无此人");
}elseif("5".equals(order)){
Testobj=newTest();
obj.end_flag=false;
System.out.println("退出");
}else{
System.out.println("输入有误!");
}
}
publicvoidInputData(){
for(inti=1;i<=STUDENTS_NUM;i++){
System.out.print("请输入第"+i+"个人的姓名"+":");
Scanners1=newScanner(System.in);
name=s1.nextLine();
data[i-1][0]=name;
System.out.print("请输入第"+i+"个人的语文成绩"+":");
Scanners2=newScanner(System.in);
Chinese_score=s2.nextInt();
data[i-1][1]=String.valueOf(Chinese_score);
System.out.print("请输入第"+i+"个人的数学成绩"+":");
Scanners3=newScanner(System.in);
Math_score=s3.nextInt();
data[i-1][2]=String.valueOf(Math_score);
System.out.print("请输入第"+i+"个人的英语成绩"+":");
Scanners4=newScanner(System.in);
English_score=s4.nextInt();
data[i-1][3]=String.valueOf(English_score);
data[i-1][4]=String.valueOf(Chinese_score+Math_score
+English_score);
System.out.println(data[i-1][4]);
}
}
}
⑵ 编写一个java程序来计算学生考试成绩的平均分和他们的分数等级。你可以假设以下数据:
publicclassScore{
//记录学生的姓名
privateString[] name;
//记录分数
privateint[][] ;
//记录分数等级
privatechar[] grade;
//存储数据
privatevoidsaveData(){
this.name=newString[]{"Johnson","Aniston","Cooper","Gupta","Blair"};
this.fraction=newint[][]{{85,83,77,91,76},{80,90,95,93,48},{78,81,11,90,73},{92,83,30,69,87},{23,45,96,38,59}};
this.grade=newchar[this.name.length];
}
publicScore(){
//在构造函数中调用saveData存储数据。
this.saveData();
}
//计算分数等级。传入一个分数,返回该分数的评分等级。
privatechargetGrade(intfraction){
if(fraction>100){
//100分的考卷分数居然超过了100,肯定和老师有交易,给你个X!
return'X';
}
elseif(fraction>=85){
return'A';
}
elseif(fraction>=75){
return'B';
}
elseif(fraction>=65){
return'C';
}
elseif(fraction>=50){
return'D';
}
return'F';
}
//输出成绩/平均分/评分/班级平均分/班级评分
publicvoidprintScore(){
intaverage=0;//存储班级的平均分
for(inti=0;i<this.fraction.length;i++){
System.out.print(this.name[i]+" ");//输入学生的名字( 是输出制表符,相当于按一下Tab的效果)
inttemp=0;//临时存储数据的变量
for(intx=0;x<this.fraction[i].length;x++){
temp+=this.fraction[i][x];
System.out.print(this.fraction[i][x]+" ");
}
temp=temp/this.fraction[i].length;//此时temp的值就是该学生的平均分
this.grade[i]=this.getGrade(temp);//存入平均分
System.out.println("平均分:"+temp+" 评价"+this.grade[i]);//输出该学生的平均分和评价
average+=temp;
}
average=average/this.name.length;
System.out.println("班级平均分:"+average+" 班级评价"+this.getGrade(average));
}
publicstaticvoidmain(String[]args){
newScore().printScore();
}
}
运行结果:
Johnson 85 83 77 91 76 平均分:82 评价B
Aniston 80 90 95 93 48 平均分:81 评价B
Cooper 78 81 11 90 73 平均分:66 评价C
Gupta 92 83 30 69 87 平均分:72 评价C
Blair 23 45 96 38 59 平均分:52 评价D
班级平均分:70 班级评价C
⑶ java中compareto实现学生成绩排列
这里很好的回答了你:http://..com
/link?url=_s83-IKIyEABYwOnZzLrqq
步骤:
1、主要是实现Comparable接口
2、重写compareTo方法
照着这:
publicintcompareTo(Studentarg){
if(id>arg.id)
return1;
elseif(id==arg.id)
return0;
else
return-1;
}
这写,放到集合TreeSet里面的时候会自动比较,然后有序存储的!
⑷ 如何用Java实现“学生成绩输入”问题
import java.util.Scanner;
public class Student{
public static void main(String[] args){
Scanner sc = new Scanner(System.in);
System.out.println("请输入学生的人数....");
int num = sc.nextInt();
int[] arr = new int[num];
double[] chengji_arr = new double[num]; //存放成绩的
String[] String_arr = new String[num]; //存放姓名的
String chengjis = "";
String names = "";
for(int i = 0; i < arr.length && i < String_arr.length && i < chengji_arr.length; i++){
arr[i] = i;
int s = 0;
Students st = new Students();
System.out.println("请输入第"+(arr[i]+1)+"个学生的序号!");
st.setId(sc.nextInt());
System.out.println("请输入第"+(arr[i]+1)+"个学生的姓名!");
st.setName(sc.next());
System.out.println("请输入第"+(arr[i]+1)+"个学生的成绩!");
st.setChengji(sc.nextDouble());
String_arr[i] = st.getName(); //保存成绩
chengji_arr[i] = st.getChengji();
}
int max = 0;
int tmp = 0;
for (int i = 0; i < chengji_arr.length; i++) {
max = i;
for (int j = i + 1; j < chengji_arr.length; j++) {
if (chengji_arr[max] < chengji_arr[j])
max = j;// 记下较大数位置,再次比较,直到最大
}
if (i != max) {
tmp = (int)chengji_arr[i];
chengji_arr[i] = chengji_arr[max];
chengji_arr[max] = tmp;
}
}
for (int i = 0; i < chengji_arr.length; i++)
System.out.print("成绩为:"+chengji_arr[i] + " ");
}
}
class Students{
private int id;
private String name;
private double chengji;
public void setId(int id){
this.id = id;
}
public int getId(){
return id;
}
public void setName(String name){
this.name = name;
}
public String getName(){
return name;
}
public void setChengji(double chengji){
this.chengji = chengji;
}
public double getChengji(){
return chengji;
}
}
//代码没有交换学生数组下标,麻烦提问者再修改一下吧,真的要睡了,明天继续上班,抱歉,只能帮你到这里了。
⑸ java编程,用which语句编写一个学生成绩等级评定,学生成绩为百分制,而成绩分为ABCDE五个
你可以不要最后一位,得到前面的,然后比较,7.8.9.10,得到的是这种格式
⑹ JAVA编程:试利用if语句将学生成绩依下列的分类方式分级:00~59:e级,60~69:d级,70~
以下代码可直接运行
import java.util.Scanner;
class student{
public static void main(String[] args){
in=new Scanner(System.in);
String answer;
do{
System.out.print("请分别输入学生的成绩:");
int score=in.nextInt();
System.out.println();
if(score<60&&score>=0){
System.out.println("该学生的成绩为e级");
}else if(score<70){
System.out.println("该学生的成绩为d级");
}else if(score<80){
System.out.println("该学生的成绩为c级");
}else if(score<90){
System.out.println("该学生的成绩为b级");
}else{
System.out.println("该学生的成绩为a级");
}
System.out.print("是否继续(y/n):");
answer=in.next();
}while(answer.equals("y"));
System.out.println("程序结束");
}
}
⑺ java学生成绩分等级
最简单的输入输出了,键盘获取分数输入,程序判断分数登记,输出成绩与等级情况即可
源码很容易的
⑻ JAVA利用分支语句对于学生的成绩进行判断输出是否及格
看一下是否能帮助到你,你也可以到他们官网上免费学习这写基础知识。希望你早日学有所成!天天进步
⑼ java写一个学生成绩统计
循环给对象复制就好了,不会可以s我
⑽ java编程,用switch语句编写一个学生成绩等级评定
如图:输入大于100或者小于0得数会提示错误
importjava.util.Scanner;
publicclassTest{
publicstaticvoidmain(String[]args){
Scannerinput=newScanner(System.in);
System.out.println("请输入成绩:");
intscore=input.nextInt();
if(score>=0&&score<=100){
switch(score/10){
case10:case9:System.out.println("A");
break;case8:System.out.println("B");
break;case7:System.out.println("C");
break;case6:System.out.println("D");
break;
default:
case5:case4:case3:case2:case1:case0:
System.out.println("E");break;}}
else{System.out.println("数据错误!");}
}
}