Bài tập quản lý sinh viên trong C++ (Phần 1)
Bài tập
Viết chương trình C++ để giữ các bản ghi và thực hiện các trình phân tích thống kê cho một lớp gồm 20 sinh viên. Thông tin của mỗi sinh viên gồm id, tên, tuổi, điểm kiểm tra (hai điểm kiểm tra mỗi kỳ), điểm chuyên cần, điểm thi giữa kỳ, điểm thi cuối kỳ, và tổng điểm.
Chương trình của bạn sẽ nhắc người dùng lựa chọn các hành động có thể thực hiện trên các bản ghi từ menu có dạng sau:
==========================================================
==========================================================
1. Them ban ghi sinh vien
2. Xoa ban ghi sinh vien
3. Cap nhat ban ghi sinh vien
4. Quan sat tat ca ban ghi sinh vien
5. Tinh diem trung binh cua mot sinh vien da chon
6. Hien thi sinh vien co tong diem cao nhat
7. Hien thi sinh vien co tong diem thap nhat
8. Tim sinh vien boi ID
9. Sap xep cac ban ghi boi tong diem thi cua sinh vien
Nhap lua chon cua ban: 1
Ghi chú: Tất cả các bản ghi được lưu trữ trong một mảng.
Lời giải
Dưới đây là chương trình C++ để giải bài tập trên. Đây là một bài tập lớn và phức tạp, do đó chúng tôi chia lời giải thành các phần nhỏ và giải thích chi tiết từng phần một để giúp bạn dễ dàng theo dõi và hiểu nhanh hơn. Bạn theo dõi các bước sau:
Bước 1: Khai báo một Structure
Khai báo một Structure gọi là sinhvien để lưu trữ các bản ghi. Structure này gồm 9 thành viên, đó là:
mssv(string) để lưu trữ id của sinh viên
tensv(mảng ký tự) để lưu trữ tên sinh viên
sex(char) để lưu trữ giới tính
diemkt1(float) để lưu trữ điểm kiểm tra đầu tiên
diemkt2(float) để lưu trữ điểm kiểm tra thứ hai
diemcc(float) để lưu trữ điểm chuyên cần
diemgk(float) để lưu trữ điểm thi giữa kỳ
diemck(float) để lưu trữ điểm thi cuối kỳ
tongdiem(float) để lưu trữ tổng điểm
Dưới đây là code cho bước 1:
typedef struct sinhvien {string mssv; char tensv[20]; char sex; float diemkt1; float diemkt2; float diemcc; float diemgk; float diemck; float tongdiem;};
Bước 2: Hiển thị menu
Định nghĩa phương thức displaymenu() để hiển thị menu. Menu đơn giản này cung cấp 9 lựa chọn từ 1 tới 9 để làm việc với các bản ghi.
Dưới đây là code cho bước 2:
//Xay dung menu void displaymenu(){ cout<<"===========================================<<"\n"; cout<<" MENU "<<"\n"; cout<<"==========================================="<<"\n"; cout<<" 1. Them ban ghi sinh vien"<<"\n"; cout<<" 2. Xoa ban ghi sinh vien"<<"\n"; cout<<" 3. Cap nhat ban ghi sinh vien"<<"\n"; cout<<" 4. Quan sat tat ca ban ghi sinh vien"<<"\n"; cout<<" 5. Tinh diem trung binh cua mot sinh vien da chon"<<"\n"; cout<<" 6. Hien thi sinh vien co tong diem cao nhat"<<"\n"; cout<<" 7. Hien thi sinh vien co tong diem thap nhat"<<"\n"; cout<<" 8. Tim sinh vien boi ID"<<"\n"; cout<<" 9. Sap xep cac ban ghi boi tong diem thi cua sinh vien"<<"\n"; }
Bạn trở lại trang cha để tìm hiểu tiếp các bước.
Bài học Bài tập C++ phổ biến tại hoconline.club: