用C#设计控制台应用程序,输入若干学生的英语和数学成绩,求出总分,并按总分从高到低排序。要求设计一个学生类 Student,所有学生对象存放在一个 Student对象数组中,通过一个方法对其按照总分进行降序排序,最后输出排序后的结果

1.题目要求如下:

用C#设计控制台应用程序,输入若干学生的英语和数学成绩,求出总分,并按总分从高到低排序。要求设计一个学生类 Student,所有学生对象存放在一个 Student对象数组中,通过一个方法对其按照总分进行降序排序,最后输出排序后的结果

2.来吧展示,代码如下:

using System;

namespace Unit_3._4
{
    public class student
    {
        private int a;
        private int b;
        private int sum;
        public student(int m, int n)
        {
            a = m; b = n;
            sum = m + n;
        }
        public int Sum()
        { return sum; }
        public student()
        {
            a = 0; b = 0; sum = 0;
        }
    }
    class Program
    {
        static void Main()
        {
            int i, z, x, m;
            Console.WriteLine("请依次输入n个学生的英语数学成绩,输入完成后输入‘n’结束");
            student[] A = new student[100];
            for (i = 0; i <= 99; i++)
            {
                string k;
                k = Console.ReadLine();
                if (k == "n") break;
                z = Convert.ToInt32(k);
                x = Convert.ToInt32(Console.ReadLine());
                A[i] = new student(z, x);
            }
            m = i - 1;
            int[] a = new int[100];
            for (i = 0; i <= m; i++) a[i] = A[i].Sum();
            for (i = 0; i <= m; i++)
            {
                for (x = i; x <= m; x++)
                {
                    if (a[x] <= a[x + 1]) { z = a[x]; a[x] = a[x + 1]; a[x + 1] = z; }
                }
                Console.WriteLine("总成绩排名如下:");
                for (i = 0; i <= m; i++)
                    Console.WriteLine("{0}  ", a[i]);
            }
            Console.ReadLine();
        }
    }
}

3.运行结果如下:

 

 

我是小关,关注我,带你从初级入门编程
希望能帮到大家,问你们要一个赞,你们会给吗,谢谢大家
版权声明:本文版权归作者(@攻城狮小关)和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
大家写文都不容易,请尊重劳动成果~
交流加Q:1909561302
CSDN地址https://blog.csdn.net/Mumaren6/

 

posted @ 2021-01-06 15:49  攻城狮小关  阅读(1571)  评论(0编辑  收藏  举报