Đề bài - Mã đề C

Sinh bảng điểm và thống kê theo lớp

Đề bài: C - Công cụ sinh bảng điểm và thống kê theo lớp

Nhập sĩ số lớp, chương trình tổ chức thành nhiều hàm để phát sinh điểm ngẫu nhiên, sinh bảng điểm, xếp loại từng học sinh và tính thống kê điểm trung bình cả lớp.

Yêu cầu kỹ thuật chung (áp dụng cho cả 8 mã đề của lần giao này):

  1. Toàn bộ chương trình tổ chức thành tối thiểu 5 hàm, mỗi hàm chỉ làm một nhiệm vụ, không viết mã rời rạc ngoài hàm trừ phần gắn sự kiện.
  2. Mỗi hàm phải có ít nhất 1 tham số, và có ít nhất 1 hàm nhận từ 2 tham số trở lên.
  3. Có ít nhất 1 hàm được gọi lại nhiều lần với các tham số khác nhau để tạo ra kết quả khác nhau.
  4. Có ít nhất 1 hàm gọi hàm khác bên trong nó.
  5. Nộp kèm bảng mô tả: tên hàm, tham số, nhiệm vụ, được gọi ở đâu (xem bảng bên dưới).

File khởi tạo: goc.html. Tham khảo kết quả mong muốn ở ảnh chụp bên dưới.

Bảng mô tả hàm

Tên hàmTham sốNhiệm vụĐược gọi ở đâu
taoDiemNgauNhien()0Sinh 1 điểm số ngẫu nhiên từ 0 đến 10Gọi lại nhiều lần trong taoDanhSachHocSinh(), mỗi lần cho 1 học sinh
taoDanhSachHocSinh(siSo)1Dùng vòng lặp for tạo mảng học sinh kèm điểm ngẫu nhiênTrong xuLyBangDiem(); gọi taoDiemNgauNhien() bên trong
xepLoai(diem)1Xếp loại học lực theo điểm bằng switch (Giỏi/Khá/Trung bình/Yếu)Trong renderBangDiem() cho từng học sinh
tinhDiemTrungBinh(danhSach)1 (mảng)Dùng vòng lặp for cộng dồn và tính điểm trung bình cả lớpTrong xuLyBangDiem(), sau khi có danh sách học sinh
renderBangDiem(danhSach)1Sinh bảng điểm ra giao diện, gọi xepLoai() cho từng dòngTrong xuLyBangDiem()
xuLyBangDiem()0Hàm điều phối chínhGắn vào sự kiện click nút "Tạo bảng điểm"

Kết quả mong muốn (đáp án tham khảo)

Ràng buộc cấu trúc riêng cho mã đề C

Section có header riêng: Dùng một section có header con riêng, trong đó header chứa tiêu đề ngắn và đoạn mô tả. Không thay ràng buộc này bằng cấu trúc của mã đề khác.

Ảnh chụp màn hình kết quả đáp án mã đề C - Sinh bảng điểm và thống kê theo lớp
Ảnh chụp trang dapan.html sau khi chạy với dữ liệu mẫu