Quản lý Sinh viên

, ,

Đề bài

Viết một chương trình quản lý sinh viên bao gồm các lớp sau:

Lớp SinhVien:

Thuộc tính:
hoTen: họ và tên của sinh viên.
maSinhVien: mã số sinh viên.
diem: điểm của sinh viên.
Phương thức:
hienThiThongTin(): hiển thị thông tin của sinh viên.
Lớp DanhSachSinhVien:

Thuộc tính:
danhSach: danh sách sinh viên.
Phương thức:
themSinhVien(SinhVien sinhVien): thêm một sinh viên vào danh sách.
xoaSinhVienTheoMa(string maSinhVien): xóa sinh viên khỏi danh sách dựa trên mã sinh viên.
timSinhVienTheoTen(string hoTen): tìm sinh viên theo tên và trả về danh sách các sinh viên có tên tương tự.
hienThiTatCaSinhVien(): hiển thị thông tin tất cả sinh viên trong danh sách.
Yêu cầu:

Viết chương trình chính để thử nghiệm các phương thức trên.
Hiển thị menu cho người dùng lựa chọn các chức năng: thêm sinh viên, xóa sinh viên, tìm kiếm sinh viên, và hiển thị tất cả sinh viên.

Cách làm

using System;
using System.Collections.Generic;

// Lop SinhVien
public class SinhVien
{
    public string hoTen { get; set; }
    public string maSinhVien { get; set; }
    public double diem { get; set; }

    // Hien thi thong tin sinh vien
    public void hienThiThongTin()
    {
        Console.WriteLine($"Ho Ten: {hoTen}");
        Console.WriteLine($"Ma Sinh Vien: {maSinhVien}");
        Console.WriteLine($"Diem: {diem}");
    }
}

// Lop DanhSachSinhVien
public class DanhSachSinhVien
{
    private List<SinhVien> danhSach = new List<SinhVien>();

    // Them sinh vien vao danh sach
    public void themSinhVien(SinhVien sinhVien)
    {
        danhSach.Add(sinhVien);
    }

    // Xoa sinh vien theo ma
    public void xoaSinhVienTheoMa(string maSinhVien)
    {
        SinhVien sinhVienCanXoa = danhSach.Find(s => s.maSinhVien == maSinhVien);
        if (sinhVienCanXoa != null)
        {
            danhSach.Remove(sinhVienCanXoa);
        }
    }

    // Tim sinh vien theo ten
    public List<SinhVien> timSinhVienTheoTen(string hoTen)
    {
        return danhSach.FindAll(s => s.hoTen.Contains(hoTen));
    }

    // Hien thi thong tin tat ca sinh vien
    public void hienThiTatCaSinhVien()
    {
        foreach (SinhVien sinhVien in danhSach)
        {
            sinhVien.hienThiThongTin();
            Console.WriteLine();
        }
    }
}

class Program
{
    static void Main()
    {
        DanhSachSinhVien danhSachSinhVien = new DanhSachSinhVien();

        // Them sinh vien vao danh sach
        danhSachSinhVien.themSinhVien(new SinhVien { hoTen = "Nguyen Van A", maSinhVien = "SV001", diem = 8.5 });
        danhSachSinhVien.themSinhVien(new SinhVien { hoTen = "Tran Thi B", maSinhVien = "SV002", diem = 7.0 });

        // Hien thi tat ca sinh vien
        Console.WriteLine("Danh sach sinh vien:");
        danhSachSinhVien.hienThiTatCaSinhVien();

        // Tim sinh vien theo ten
        Console.WriteLine("Tim sinh vien theo ten 'Nguyen Van A':");
        List<SinhVien> sinhVienTimDuoc = danhSachSinhVien.timSinhVienTheoTen("Nguyen Van A");
        foreach (SinhVien sinhVien in sinhVienTimDuoc)
        {
            sinhVien.hienThiThongTin();
            Console.WriteLine();
        }

        // Xoa sinh vien theo ma
        danhSachSinhVien.xoaSinhVienTheoMa("SV001");

        // Hien thi tat ca sinh vien sau khi xoa
        Console.WriteLine("Danh sach sinh vien sau khi xoa:");
        danhSachSinhVien.hienThiTatCaSinhVien();
    }
}

Bình luận