Đề thi cuối kỳ học phần Kỹ thuật lập trình năm 2024 - 2025 | Trường Đại học Khoa học tự nhiên, Đại học Quốc gia Thành phố Hồ Chí Minh

Tài liệu đề thi cuối kỳ học phần Kỹ thuật lập trình năm 2024 - 2025 được sưu tầm và biên soạn dưới dạng PDF gồm 02 trang. Tài liệu giúp bạn tham khảo, ôn tập và đạt kết quả cao. Mời bạn đón xem.

Thông tin:
2 trang 1 tháng trước

Bình luận

Vui lòng đăng nhập hoặc đăng ký để gửi bình luận.

Đề thi cuối kỳ học phần Kỹ thuật lập trình năm 2024 - 2025 | Trường Đại học Khoa học tự nhiên, Đại học Quốc gia Thành phố Hồ Chí Minh

Tài liệu đề thi cuối kỳ học phần Kỹ thuật lập trình năm 2024 - 2025 được sưu tầm và biên soạn dưới dạng PDF gồm 02 trang. Tài liệu giúp bạn tham khảo, ôn tập và đạt kết quả cao. Mời bạn đón xem.

30 15 lượt tải Tải xuống
Thi gian: 120 phút
Sinh viên không được s dng tài liu.
u 1.
Viết m “chuẩn hóa” một chuỗi cho trước. Hàm tr v địa ch ca chui kết qu (đã đưc chun a)
và không thay đổi chuỗi đầu vào. Sinh viên không được s dng các hàm thư viên xử lý chui.
Chui chun hóa là chui:
Không khong trng đu và cui chui.
Gia hai t ch có duy nht 1 khong trng.
Ký t đầu tiên ca mi t là ký t hoa, còn li là ký t thưng.
Ví d:
Đầu vào: kYtHUatlAptrINh” ( là khong trng)
Đầu ra: “KyThuatLapTrinh”
u 2.
Mt ma trn nguyên M dòng N cột được lưu tr vào tập tin dưi dạngn bản hoc nh phân như sau:
Dạng văn bản (text)
Dng nh phân (binary)
- ng đầu tiên: M N
- M dòng tiếp theo:
+ Dòng i (0 i M-1): a
i,0
a
i,1
... a
i,N-1
- Ví d:
2 4
9 2 441 1625
1 7 2257 5
- 2 byte đầu tiên: M
- 2 byte kế tiếp: N
- Lần lưt mi 4 byte kế tiếp: a
i,j
(0 i M-1, 0 j N-1)
- Ví d:
+ 4 byte đầu: 0 0 0 2 | 0 0 0 4
+ 16 byte kế: 0 0 0 9 | 0 0 0 2 | 0 0 1 185 | 0 0 6 89
+ 16 byte kế: 0 0 0 1 | 0 0 0 7 | 0 0 8 209 | 0 0 0 5
Hãy viết 2 hàm convertTextToBinary và convertBinaryToText đ chuyển đổi mt tp tin lưu trữ ma trn
t dạng văn bản sang dng nh phân và ngưc li.
KTLT
u 3.
Cho trưc mt s nguyên dương n, thực hin yêu cu:
a) Định nghĩa tác vụ đệ qui theo ngôn ng t nhiên để xut ra biu din nh phân ca s nguyên
dương n. Ví dụ: n=13 xuất ra 1101 (trong đó 110 là dng nh phân ca 6, và 1 13%2).
b) Viết hàm đệ qui bng ngôn ng C din t tác v đệ qui trong câu a.
void XuatHe2(long n)
u 4.
Mt nhà tin hc phải đi lên mt cu thang bc. Biết rng mi ln anh ch th ớc được 1 bc
hay 2 bc. Ví d, nếu cu thang bậc thì có 5 phương án để đi lên cầu thang cho nhà tin học như
sau:
- Phương án 1: bước 1 bậc bước 1 bậc bước 1 bậc bước 1 bậc
- Phương án 2: bước 2 bậc bước 1 bậc bước 1 bậc
- Phương án 3: bước 1 bậc bước 2 bậc bước 1 bậc
- Phương án 4: bước 1 bậc bước 1 bậc bước 2 bậc
- Phương án 5: bưc 2 bậc bước 2 bậc
Yêu cu:
a. Gi
tng s phương án đi lên cầu thang bc. Hãy thiết lp mi quan h truy hi gia


b. Căn cứ trên mi quan h truy hi va xác lp câu a hãy viết hàm tr ra tng các phương án
bng quy hoạch động (Lưu ý không cần phi in ra chi tiết các phương án)
int CountSolution(int n)
u 5.
Xét mt danh sách liên kết đơn với d liu trên mi NODE là một HOCSINH (mã, tên, địa chỉ, điểm trung
bình). Hãy khai báo danh sách liên kết đơn này viết hàm cho phép xóa tt c các học sinh điểm
trung bình dưới 5.
Hết
| 1/2

Preview text:

KTLT Thời gian: 120 phút
Sinh viên không được sử dụng tài liệu. Câu 1.
Viết hàm “chuẩn hóa” một chuỗi cho trước. Hàm trả về địa chỉ của chuỗi kết quả (đã được chuẩn hóa)
và không thay đổi chuỗi đầu vào. Sinh viên không được sử dụng các hàm thư viên xử lý chuỗi.
Chuỗi chuẩn hóa là chuỗi:
 Không có khoảng trắng ở đầu và cuối chuỗi.
 Giữa hai từ chỉ có duy nhất 1 khoảng trắng.
 Ký tự đầu tiên của mỗi từ là ký tự hoa, còn lại là ký tự thường. Ví dụ:  Đầu vào:
“kYtHUatlAptrINh” ( là khoảng trắng)
 Đầu ra: “KyThuatLapTrinh” Câu 2.
Một ma trận nguyên M dòng N cột được lưu trữ vào tập tin dưới dạng văn bản hoặc nhị phân như sau: Dạng văn bản (text) Dạng nhị phân (binary) - Dòng đầu tiên: M N - 2 byte đầu tiên: M - M dòng tiếp theo: - 2 byte kế tiếp: N
+ Dòng i (0 ≤ i ≤ M-1): ai,0 ai,1 ... ai,N-1
- Lần lượt mỗi 4 byte kế tiếp: ai,j (0 ≤ i ≤ M-1, 0 ≤ j ≤ N-1) - Ví dụ: - Ví dụ: 2 4
+ 4 byte đầu: 0 0 0 2 | 0 0 0 4 9 2 441 1625
+ 16 byte kế: 0 0 0 9 | 0 0 0 2 | 0 0 1 185 | 0 0 6 89 1 7 2257 5
+ 16 byte kế: 0 0 0 1 | 0 0 0 7 | 0 0 8 209 | 0 0 0 5
Hãy viết 2 hàm convertTextToBinary và convertBinaryToText để chuyển đổi một tập tin lưu trữ ma trận
từ dạng văn bản sang dạng nhị phân và ngược lại. Câu 3.
Cho trước một số nguyên dương n, thực hiện yêu cầu:
a) Định nghĩa tác vụ đệ qui theo ngôn ngữ tự nhiên để xuất ra biểu diễn nhị phân của số nguyên
dương n. Ví dụ: n=13 → xuất ra 1101 (trong đó 110 là dạng nhị phân của 6, và 1 là 13%2).
b) Viết hàm đệ qui bằng ngôn ngữ C diễn tả tác vụ đệ qui trong câu a. void XuatHe2(long n) Câu 4.
Một nhà tin học phải đi lên một cầu thang có 𝑛 bậc. Biết rằng mỗi lần anh chỉ có thể bước được 1 bậc
hay 2 bậc. Ví dụ, nếu cầu thang có 𝑛 = 4 bậc thì có 5 phương án để đi lên cầu thang cho nhà tin học như sau: -
Phương án 1: bước 1 bậc → bước 1 bậc → bước 1 bậc → bước 1 bậc -
Phương án 2: bước 2 bậc → bước 1 bậc → bước 1 bậc -
Phương án 3: bước 1 bậc → bước 2 bậc → bước 1 bậc -
Phương án 4: bước 1 bậc → bước 1 bậc → bước 2 bậc -
Phương án 5: bước 2 bậc → bước 2 bậc Yêu cầu:
a. Gọi 𝑃𝑛 là tổng số phương án đi lên cầu thang 𝑛 bậc. Hãy thiết lập mối quan hệ truy hồi giữa 𝑃𝑛
và 𝑃𝑛−1 và 𝑃𝑛−2
b. Căn cứ trên mối quan hệ truy hồi vừa xác lập ở câu a hãy viết hàm trả ra tổng các phương án
bằng quy hoạch động (Lưu ý không cần phải in ra chi tiết các phương án) int CountSolution(int n) Câu 5.
Xét một danh sách liên kết đơn với dữ liệu trên mỗi NODE là một HOCSINH (mã, tên, địa chỉ, điểm trung
bình). Hãy khai báo danh sách liên kết đơn này và viết hàm cho phép xóa tất cả các học sinh có điểm trung bình dưới 5. Hết