输入n个学生,并且输入成绩,判断是否偏科

Posted 蔡小菜i

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了输入n个学生,并且输入成绩,判断是否偏科相关的知识,希望对你有一定的参考价值。

       H学校的领导主任决定分析一下今年所有N名学生的考试成绩,从中找出偏科的学生,考试成绩包含语文,数学,英语三门课程的分数,已知偏科的定义是:某一门课程的分数大于等于90,并且另外两门的分数小于等于70。

请你求出一共有多少名偏科的学生。

输入第一行包含一个整数N。

以下N行每行包含三个整数,Ai,Bi,Ci,依次是语文,数学,英语的分数。

1<=N<=10000

0<=Ai,Bi,Ci<=100

输出

一个整数代表答案

 

首先应该先写出学生类:

public class StudentDemo {
    private int lanGrade;//语文成绩
    private int mathGrade;//数学成绩
    private int engGrade;//英语成绩
    public StudentDemo(int lanGrade,int mathGrade,int engGrade){
        this.lanGrade = lanGrade;
        this.engGrade = engGrade;
        this.mathGrade = mathGrade;
    }

    public int getLanGrade() {
        return lanGrade;
    }

    public void setLanGrade(int lanGrade) {
        this.lanGrade = lanGrade;
    }

    public int getMathGrade() {
        return mathGrade;
    }

    public void setMathGrade(int mathGrade) {
        this.mathGrade = mathGrade;
    }

    public int getEngGrade() {
        return engGrade;
    }

    public void setEngGrade(int engGrade) {
        this.engGrade = engGrade;
    }

    @Override
    public String toString() {
        return "StudentDemo{" +
                "lanGrade=" + lanGrade +
                ", mathGrade=" + mathGrade +
                ", engGrade=" + engGrade +
                ‘}‘;
    }
}

创建成绩类:(判断)

import java.util.Scanner;

public class GradeTest {
    private StudentDemo[] studentDemos;
    private int studentNum;
    private Scanner sc;
    public GradeTest(){
        this.sc = new Scanner(System.in);
        this.studentNum = 0;
        this.studentDemos = new StudentDemo[1000];
        this.studentDemos[this.studentNum++] = new StudentDemo(0,0,0);
    }


    public static void main(String[] args) {
        GradeTest gd = new GradeTest();
        gd.setGrade();
        int num = gd.search();
        System.out.println("偏科人数:"+num);

    }

    private void setGrade() {
            System.out.println("请输入学生个数:");
            int num = sc.nextInt();
            System.out.println("请输入学生成绩(成绩大于等于0小于等于100):");
               int i = 1;
               while (i <= num) {
                   int lanGrade = sc.nextInt();
                   int mathGrade = sc.nextInt();
                   int engGrade = sc.nextInt();
                   if (i == studentNum) {
                       studentDemos[this.studentNum++] = new StudentDemo(lanGrade, mathGrade, engGrade);
                   }
                   i++;
               }

    }

    public int search() {
        int count = 0;
            for (int i = 0; i < this.studentNum; i++) {
                if ((studentDemos[i].getEngGrade() >= 90 && studentDemos[i].getLanGrade() <= 70 && studentDemos[i].getMathGrade() <= 70) ||
                        (studentDemos[i].getLanGrade() >= 90 && studentDemos[i].getEngGrade() <= 70 && studentDemos[i].getMathGrade() <= 70) ||
                        (studentDemos[i].getMathGrade() >= 90 && studentDemos[i].getLanGrade() <= 70 && studentDemos[i].getEngGrade() <= 70)) {
                    count++;
                }
            }
            return count;
        }
}

运行结果:

技术图片

 

以上是关于输入n个学生,并且输入成绩,判断是否偏科的主要内容,如果未能解决你的问题,请参考以下文章

怎么样用“C语言”判断输入的学生成绩的等级?

Python至少输入五个成绩怎么编程?

python中输入若干同学成绩(用输入-1表示输入结束)如何用循环语句求及格学生的平均成绩

编一个程序,首先输入一个成绩(0-100),然后用if else语句判断该成绩是优、良、中、及格还是不及格。

c语言:输入10个学生的成绩,求学生的平均成绩,并统计超过平均分数的学生人数。

初学C语言,编一个成绩判断的程序,有点问题