1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Đề thi tuyển sinh Cao học và nghiên cứu sinh môn Ngôn ngữ lập trình 2005 - đáp án

4 475 3
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 4
Dung lượng 178,7 KB

Nội dung

Tổng hợp : Đề thi và đề cương tuyển sinh Cao học và nghiên cứu sinh môn Ngôn ngữ lập trình từ năm 1993-2007

BỘ GIÁO DỤC ĐÀO TẠO ĐẠI HỌC HUẾ KỲ THI TUYỂN SINH SAU ĐẠI HỌC NĂM 2005 Đáp án đề thi tuyển sinh Cao học Môn thi: Ngôn ngữ lập trình Câu 1: 1,5 đ Kết quả in ra trên màn hình: 8 4 10 5 9 8 4 5 10 9 8 4 5 9 10 4 8 5 9 10 4 5 8 9 10 * Dòng 1: 0,5 đ * Dòng 2-3: 0,5 đ * Dòng 4-5: 0,5 đ Câu 2: 4,0 đ a) 1,0 đ Function Addr(FirstS: TroMH; BMaMH: Integer):TroMH; Begin If FirstS=nil then Addr:=nil else if FirstS^.MaMH=BMaMH then Addr:=FirstS else Addr:=Addr(FirstS^.next, BMaMH); End; * Xử lý trường hợp để có Addr=nil: 0,5 đ * Xử lý trường hợp để có Addr<>nil: 0,5 đ b) 3,0 đ Procedure ListOfSubjects(FirstT: TroGV; BMaGV: St8); (1,5 đ) Procedure LOS(F: TroM); var stt: integer; p: TroMH; Begin If F<>nil then begin stt:=1; writeln(‘STT’:5, ‘Ten mon hoc’:30, ‘So DVHT’:10); while F<>nil do begin p:=Addr(FirstS, F^.MaM); writeln(stt:5, p^.TenMH:30, p^.SoDVHT:10); F:=F^.Tiep; stt:=stt+1; end; end; End; Nguyễn Lý Hữu Huấn Begin If (FirstT<>nil)and(FirstT^.MaGV<=BMaGV) then If FirstT^.MaGV=BMaGV then LOS(FirstT^.DSM) else ListOfSubjects(FirstT^.Down, BMaGV); End; * Định vị đến nút giáo viên cần tìm (có sử dụng danh sách tăng dần): 0,5 đ * Duyệt danh sách mã môn học: 0,5 đ * In theo mẫu: 0,5 đ Procedure ListOfTeachers(FirstT: TroGV; BMaM: Integer); (1,5 đ) var stt: integer; Procedure LOT(F: TroGV; BMaM: Integer); Procedure Find_and_Print(P: TroM; BMaM: Integer); Begin If P<>nil then if P^.MaM=BMaM then begin writeln(stt:5, F^.HoTenGV:30); stt:= stt+1; end else Find_and_Print(P^.Tiep, BMaM); End; Begin If F<>nil then begin Find_and_Print(F^.DSM, BMaM); LOT(F^.down, BMaM); end; End; Begin If FirstT<>nil then begin stt:=1; writeln(‘STT’:5, ‘Ho ten giao vien’:30); LOT(FirstT, BMaM); end; End; * Duyệt mọi nút giáo viên: 0,5 đ * In theo mẫu: 1,0 đ Câu 3: 4,5 đ a) 1,5 đ Function Muc(Top, p: TroNutTrenCay):Word ; Function Cha(Top, p: TroNutTrenCay):TroNutTrenCay; Begin If (Top=nil)or(Top=p) then Cha:=nil else If (Top^.Left=p) or (Top^.Right=p) then Cha:=Top else if Cha(Top^.Left, p)<>nil then Cha:=Cha(Top^.Left, p) else Cha:= Cha(Top^.Right, p); End; Nguyễn Lý Hữu Huấn Begin If Top=nil then Muc:=0 else If p=Top then Muc:=1 else Muc:=Muc(Top, Cha(Top, p))+1; End; * Xác định địa chỉ nút cha của p: + 0,5 đ (trường hợp cha=nil) + 0,5 đ (trường hợp cha<>nil) * Từ đó xác định mức của nút p: 0,5 đ b) 2,0 đ Procedure InsertQueue(var First, Last: TroNutTrenDS; X: TroNutTrenCay); (1,0 đ) var p: TroNutTrenDS; Begin new(p); p^.Info:=X; p^.next:=nil; If First=nil then begin First:=p; Last:=p; end Else begin Last^.next:=p; Last:=p; end; End; * Xử lý trường hợp First = nil: 0,5 đ * Xử lý trường hợp First <> nil: 0,5 đ Procedure DeleteQueue(var First, Last: TroNutTrenDS; var X: TroNutTrenCay); (1,0 đ) var p: TroNutTrenDS; Begin If First=nil then write(‘Khong xoa duoc’) Else If First=Last then begin X:=First^.Info;dispose(First); First:=nil; Last:=nil; end Else begin p:=First; X:=p^.Info; First:=p^.next; dispose(p); end; End; * Xử lý trường hợp First = nil First=Last: 0,5 đ * Xử lý trường hợp còn lại: 0,5 đ c) 1,0 đ (không chia nhỏ) Procedure Lietke(Top: TroNutTrenCay); var First, Last: TroNutTrenDS; X: TroNutTrenCay; Begin If Top<>nil then begin First:=nil; Last:=nil; InsertQueue(First, Last, Top); writeln(Top^.Value); Repeat DeleteQueue(First, Last, X); If X^.Left<>nil then begin InsertQueue(First, Last, X^.Left); writeln(X^.Left^.Value); end; Nguyễn Lý Hữu Huấn If X^.Right<>nil then begin InsertQueue(First, Last, X^.Right); writeln(X^.Right^.Value); end; Until First=nil; end; End; Nguyễn Lý Hữu Huấn . BỘ GIÁO DỤC VÀ ĐÀO TẠO ĐẠI HỌC HUẾ KỲ THI TUYỂN SINH SAU ĐẠI HỌC NĂM 2005 Đáp án đề thi tuyển sinh Cao học Môn thi: Ngôn ngữ lập trình Câu 1:. 8 5 9 10 4 5 8 9 10 * Dòng 1: 0,5 đ * Dòng 2-3 : 0,5 đ * Dòng 4-5 : 0,5 đ Câu 2: 4,0 đ a) 1,0 đ Function Addr(FirstS: TroMH; BMaMH:

Ngày đăng: 02/11/2012, 15:37

TỪ KHÓA LIÊN QUAN