sắp xếp
Câu 2:
Hãy tạo lập một danh sách học sinh rồi sắp xếp danh sách đó theo thứ tự tăng dần của điểm trung bình. Giả sử ta có hai điểm để tính điểm trung bình là điểm toán và điểm văn.
Struct HocSinh {
char HoTen[30];
float Toan;
float Van;
float TrungBinh;
};
struct Nut {
Nut* KeTiep;
HocSinh Key;
};
Struct DanhSach {
Nut* Dau;
Nut* Cuoi;
};
HocSinh NhapThongTinHocSinh()
{ HocSinh q;
cout << "Ho ten: ";
flushall();
cin.getline(q.HoTen,30,'
');
cout<<"Diem toan: ";
cin >> q.Toan;
cout << "Diem van: ";
cin >> q.Van;
q.TrungBinh = (q.Toan + q.Van)/2.0;
return q;
}
Void SapXepGiamTheoTrungBinh(DanhSach &a) {
Nut* q =a.Dau;
while (q->KeTiep != NULL) {
Nut* r = q->KeTiep;
while (r != NULL) {
if (q->Key.TrungBinh < r->Key.TrungBinh) {
HocSinh Tam = q->Key;
q->Key = r->Key;
r->Key = Tam;
}
r = r->KeTiep;
}
q = q->KeTiep;
}
}
Bạn đang đọc truyện trên: Truyen247.Pro