
KỸ THUẬT LẬP TRÌNH C/C++
BÀI THỰC HÀNH 8
Ghi chú:
Trên máy tính tạo thư mục có tên: Họ tên_KTLTC_BTH8, trong thư mục này lưu các
câu của bài thực hành, ví dụ: MSSV_BTH8_cau1.cpp, MSSV_BTH7_cau2.cpp, …
Sau khi làm bài hực hành xong nén thư mục Họ tên_KTLTC_BTH10 lại thành file:
Họ tên_KTLTC_BTH8.rar hoặc .zip.
Nộp bài thực hành này (file nén .rar hoặc .zip) trên Google Classroom ngay sau buổi
thực hành.
Câu 1. Viết chương trình sử dụng một mảng các cấu trúc để lưu trữ thông tin về nhân
viên. Mỗi cấu trúc phải chứa các trường cho: tên nhân viên, ID nhân viên và tiền lương.
Viết hàm đọc chi tiết nhân viên, tính lương trung bình và hiển thị nhân viên có lương
cao nhất.
Câu 2. Viết chương trình tạo cấu trúc để biểu diễn một ngày (ngày, tháng, năm). Viết
hàm để nhập hai ngày và tính toán khoảng cách về số ngày giữa 2 tham số đầu vào.
Câu 3. Viết chương trình lấy một string làm đầu vào và hiển thị chuỗi theo thứ tự
ngược lại thứ tự ban đầu.
Gợi ý: Lưu từng từ của chuỗi trong một mảng các con trỏ (con trỏ này trỏ tới từng từ).
Ví dụ: Input: “Ha Minh Khue”
Output: “Khue Minh Ha”
Câu 4. Viết chương trình đọc một chuỗi và đếm số lần xuất hiện của từng ký tự trong
chuỗi.
Gợi ý: Sử dụng một mảng để lưu trữ số lượng của từng ký tự, trong đó chỉ mục của
mảng biểu thị giá trị ASCII của ký tự.
Ví dụ: Input: “Hello world!”

Output: “H: 1 ; e: 1 ; l: 3 ; o: 2 ; w: 1 ; r: 1 ; d: 1 ; !: 1”
Câu 5. Viết chương trình nhập vào một mảng các số nguyên và loại bỏ tất cả các phần
tử trùng nhau khỏi mảng.
Ví dụ: Input: “{2, 4, 6, 8, 2, 10, 12, 4, 14, 16, 18, 10, 20}”
Ouput: “{2, 4, 6, 8, 10, 12, 14, 16, 18, 20}”
Câu 6: Viết chương trình đọc một chuỗi và kiểm tra xem nó có phải là một chuỗi
palindrome (chuỗi đối xứng) hay không. Hiển thị xem chuỗi có phải là một palindrome
hay không.
Gợi ý: Sử dụng con trỏ để so sánh các ký tự từ cả hai đầu của chuỗi.
Ví dụ: Input: “abvvba”
Output: “Palindrome”
Input: “abceada”
Output: "Not Palindrome”

