📄 program.cs
字号:
using System;
using System.Collections.Generic;
using System.Text;
namespace mwb
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("--------------------------------------\n");
Console.WriteLine("欢迎来到学生成绩管理系统!\n");
Console.WriteLine("作者:计058班 马文斌 20053106\n");
Console.WriteLine("--------------------------------------\n");
Console.WriteLine("请选择所需的操作:\n1.输入学生信息\n2.显示学生的信息\n3.按学号排序\n4.按成绩升序排序\n5.按成绩降序排序\n6.成绩分段\n7.退出");
char oper;
oper = (char)Console.Read();
while (oper != '7')
{
switch (oper)
{
case '1': input(); break;
case '2': display(); Console.ReadLine(); break;
case '3': numsort(); display(); Console.ReadLine(); break;
case '4': ascendsort(); display(); Console.ReadLine(); break;
case '5': decendsort(); display(); Console.ReadLine(); break;
case '6': grading(); display(); Console.ReadLine(); break;
default: error(); break;
}
Console.WriteLine("请选择所需的操作:\n1.输入学生信息\n2.显示学生的信息\n3.按学号排序\n4.按成绩升序排序\n5.按成绩降序排序\n6.成绩分段\n7.退出");
oper = (char)Console.Read();
}
Console.WriteLine("Thank you!\n");
Console.ReadLine();
Console.ReadLine();
}
struct Record
{
public string Name;
public string Num;
public string Class;
public int Result;
public char grade;
}
static Record[] Records = new Record[100];
static int length = 0;
static public void input()
{
if (length > 10)
Console.WriteLine("超过数量限制!");
else
{
Console.ReadLine();
int n;
Console.WriteLine("请输入学生数量:");
n = Int32.Parse(Console.ReadLine());
while (n != 0)
{
Console.WriteLine("请输入学生信息:\n");
Console.Write("姓名:");
Records[length].Name = Console.ReadLine();
Console.Write("学号:");
Records[length].Num = Console.ReadLine();
Console.Write("班级:");
Records[length].Class = Console.ReadLine();
Console.Write("成绩:");
Records[length].Result = Int32.Parse(Console.ReadLine());
Records[length].grade = '?';
n--;
length++;
}
}
}
static public void display()
{
int i;
Console.WriteLine("{0}\t{1}\t\t{2}\t{3}\t{4}\n", "姓名", "学号", "班级", "成绩", "等级");
for (i = 0; i < length; i++)
{
Console.WriteLine("{0}\t{1}\t{2}\t{3}\t{4}\n", Records[i].Name, Records[i].Num, Records[i].Class, Records[i].Result, Records[i].grade);
}
}
static public void numsort()
{
int i, s;
Record holder;
for (i = 0; i < length; i++)
for (s = 0; s < length - i - 1; s++)
if (Int32.Parse(Records[s].Num) > Int32.Parse(Records[s + 1].Num))
{ holder = Records[s]; Records[s] = Records[s + 1]; Records[s + 1] = holder; }
}
static public void ascendsort()
{
int i, s;
Record holder;
for (i = 0; i < length; i++)
for (s = 0; s < length - i - 1; s++)
if (Records[s].Result > Records[s + 1].Result)
{ holder = Records[s]; Records[s] = Records[s + 1]; Records[s + 1] = holder; }
}
static public void decendsort()
{
int i, s;
Record holder;
for (i = 0; i < length; i++)
for (s = 0; s < length - i - 1; s++)
if (Records[s].Result < Records[s + 1].Result)
{ holder = Records[s]; Records[s] = Records[s + 1]; Records[s + 1] = holder; }
}
static public void grading()
{
Console.WriteLine("<60:E\t60--70:D\t70--80:C\t80--90:B\t90--100:A\n");
for (int i = 0; i < length; i++)
{
if (Records[i].Result >= 60 && Records[i].Result < 70) Records[i].grade = 'D';
else if (Records[i].Result >= 70 && Records[i].Result < 80) Records[i].grade = 'C';
else if (Records[i].Result >= 80 && Records[i].Result < 90) Records[i].grade = 'B';
else if (Records[i].Result >= 90 && Records[i].Result <= 100) Records[i].grade = 'A';
else Records[i].grade = 'E';
}
}
static public void error()
{
Console.WriteLine("无此功能.请重新选择:\n");
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -