用C#写一个成绩管理系统
时间: 2023-08-02 15:38:24 浏览: 149
好的,一个简单的成绩管理系统可以包括以下功能:
1. 添加学生信息和成绩
2. 删除学生信息和成绩
3. 修改学生信息和成绩
4. 查询学生信息和成绩
5. 统计学生总分和平均分
以下是一个用C#编写的成绩管理系统的示例代码:
```csharp
using System;
using System.Collections.Generic;
namespace ScoreManagementSystem
{
class Program
{
static void Main(string[] args)
{
List<Student> students = new List<Student>();
while (true)
{
Console.WriteLine("请选择操作:");
Console.WriteLine("1. 添加学生信息");
Console.WriteLine("2. 删除学生信息");
Console.WriteLine("3. 修改学生信息");
Console.WriteLine("4. 查询学生信息");
Console.WriteLine("5. 统计学生总分和平均分");
Console.WriteLine("6. 退出");
string choice = Console.ReadLine();
switch (choice)
{
case "1":
Console.WriteLine("请输入学生姓名:");
string name = Console.ReadLine();
Console.WriteLine("请输入学生学号:");
string id = Console.ReadLine();
Console.WriteLine("请输入学生语文成绩:");
double chinese = double.Parse(Console.ReadLine());
Console.WriteLine("请输入学生数学成绩:");
double math = double.Parse(Console.ReadLine());
Console.WriteLine("请输入学生英语成绩:");
double english = double.Parse(Console.ReadLine());
Student student = new Student(name, id, chinese, math, english);
students.Add(student);
Console.WriteLine("添加学生信息成功!");
break;
case "2":
Console.WriteLine("请输入要删除的学生学号:");
string deleteId = Console.ReadLine();
Student deleteStudent = students.Find(s => s.Id == deleteId);
if (deleteStudent != null)
{
students.Remove(deleteStudent);
Console.WriteLine("删除学生信息成功!");
}
else
{
Console.WriteLine("没有找到该学生!");
}
break;
case "3":
Console.WriteLine("请输入要修改的学生学号:");
string modifyId = Console.ReadLine();
Student modifyStudent = students.Find(s => s.Id == modifyId);
if (modifyStudent != null)
{
Console.WriteLine("请输入修改后的学生姓名:");
modifyStudent.Name = Console.ReadLine();
Console.WriteLine("请输入修改后的学生语文成绩:");
modifyStudent.Chinese = double.Parse(Console.ReadLine());
Console.WriteLine("请输入修改后的学生数学成绩:");
modifyStudent.Math = double.Parse(Console.ReadLine());
Console.WriteLine("请输入修改后的学生英语成绩:");
modifyStudent.English = double.Parse(Console.ReadLine());
Console.WriteLine("修改学生信息成功!");
}
else
{
Console.WriteLine("没有找到该学生!");
}
break;
case "4":
Console.WriteLine("请输入要查询的学生学号:");
string queryId = Console.ReadLine();
Student queryStudent = students.Find(s => s.Id == queryId);
if (queryStudent != null)
{
Console.WriteLine("学生姓名:" + queryStudent.Name);
Console.WriteLine("学生学号:" + queryStudent.Id);
Console.WriteLine("学生语文成绩:" + queryStudent.Chinese);
Console.WriteLine("学生数学成绩:" + queryStudent.Math);
Console.WriteLine("学生英语成绩:" + queryStudent.English);
Console.WriteLine("学生总分:" + queryStudent.TotalScore());
Console.WriteLine("学生平均分:" + queryStudent.AverageScore());
}
else
{
Console.WriteLine("没有找到该学生!");
}
break;
case "5":
double totalScore = 0;
double averageScore = 0;
foreach (Student s in students)
{
totalScore += s.TotalScore();
}
averageScore = totalScore / students.Count;
Console.WriteLine("学生总分:" + totalScore);
Console.WriteLine("学生平均分:" + averageScore);
break;
case "6":
Console.WriteLine("成绩管理系统已退出!");
return;
default:
Console.WriteLine("请输入正确的操作编号!");
break;
}
}
}
}
class Student
{
public string Name { get; set; }
public string Id { get; set; }
public double Chinese { get; set; }
public double Math { get; set; }
public double English { get; set; }
public Student(string name, string id, double chinese, double math, double english)
{
Name = name;
Id = id;
Chinese = chinese;
Math = math;
English = english;
}
public double TotalScore()
{
return Chinese + Math + English;
}
public double AverageScore()
{
return TotalScore() / 3;
}
}
}
```
这个程序使用了一个 `List<Student>` 来保存所有学生的信息,通过不同的操作来实现对学生信息的增删改查以及统计总分和平均分的功能。