控制台程序,输入若干个学生的英语和数学成绩,求出总分,从高到低排序控制台程序,输入若干个学生的英语和数学成绩,求出总分,从高到低排序
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ConsoleApplication1
{
public class Student
{
private string name; //姓名
private int eng, math, sum; //英语,数学,总成绩
public i...
控制台程序,输入若干个学生的英语和数学成绩,求出总分,从高到低排序
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ConsoleApplication1
{
public class Student
{
private string name; //姓名
private int eng, math, sum; //英语,数学,总成绩
public int psum
{
get { return sum; } //get访问
}
public void inscore()
{
Console.Write("姓名:");
name = Console.ReadLine();
Console.Write("英语:");
eng = int.Parse(Console.ReadLine());
Console.Write("数学:");
math = int.Parse(Console.ReadLine());
sum = eng + math;
}
public void display()
{
Console.WriteLine("\t{0}\t{1}\t{2}\t{3}", name, eng, math, sum);
}
}
class Program
{
const int Max = 100;
static void sort(int n, params Student[] p) //采用冒泡排序法排序
{
int i, j; bool A; Student tmp;
for (i = 0; i < n - 1; i++)
{
A = false;
for (j = n - 2; j >= i; j--)
if (p[j + 1].psum > p[j].psum)
{
tmp = p[j + 1]; //p[j+1]<->p[j]
p[j + 1] = p[j];
p[j] = tmp;
A = true;
}
if (A == false)
break;
}
}
static void Main(string[] args)
{
int n, i;
Student[] p = new Student[Max]; //定义对象引用数组
Console.Write("输入n个学生:"); n = int.Parse(Console.ReadLine()); for
(i = 0; i < n; i++) //创建对象引用的实例
p[i] = new Student();
for (i = 0; i < n; i++)
{
Console.WriteLine("输入第{0}个学生数据:", i + 1);
p[i].inscore();
}
Console.WriteLine("排序前:"); Console.WriteLine("\t姓名\t英语\t数学\t总分");
for (i = 0; i < n; i++)
{
Console.Write("序号{0}:", i + 1);
p[i].display();
}
sort(n, p); //按总降序排序
Console.WriteLine("排序后:");
Console.WriteLine("\t姓名\t英语\t数学\t总分");
for (i = 0; i < n; i++)
{
Console.Write("第{0}名:", i + 1);
p[i].display();
}
}
}
}
本文档为【控制台程序,输入若干个学生的英语和数学成绩,求出总分,从高到低排序】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑,
图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。