CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập – Tự do – Hạnh phúc ĐÁP ÁN ĐỀ THI TỐT NGHIỆP CAO ĐẲNG NGHỀ KHOÁ II (2008 - 2011) NGHỀ: LẬP TRÌNH MÁY TÍNH MÔN THI: LÝ THUYẾT CHUYÊN MÔN NGHỀ Mã đề số: DA LTMT - LT05 Nội dung câu Điểm

I. Phần bắt buộc 7 điểm

1 0,75 điểm

Trình bày giải thuật sắp xếp kiểu nổi bọt để sắp xếp một dãy khóa theo thứ tự giảm dần.

procedure sxnoibot(a,n)

0,25 điểm 1. for i:=1 to n-1 do

begin

for j:= n downto i+1 do

begin

0,5 điểm

if(a[j]

X:=a[j];

a[j]:=a[j-1];

a[j]:=X; end;

end;end;

2. return;

2

Hãy đưa ra một dãy khoá gồm 10 phần tử bất kỳ, sau đó đưa

0,75 điểm

ra kết quả thực hiện 3 bước đầu tiên để sắp xếp dãy khoá đó

theo thứ tự giảm dần bằng giải thuật sắp xếp kiểu nổi bọt.

Cho một dãy khoá chẳng hạn: 36 18 19 52 53 72 39 61 70 90.

0,25 điểm

Bước 1: 90 36 18 19 52 53 72 39 61 70

Bước 2: 90 72 36 18 19 52 53 70 39 61

0,25 điểm

Trang:1/ 4

Bước 3: 90 72 70 36 18 19 52 53 61 39 0,25 điểm

3,5 điểm Câu 2

0,75 điểm a

cout<<"Ngay:";cin>>ngay; cout<<"Thang:";cin>>thang; cout<<"Nam: ";cin>>nam;

cout<<" "<

void nhap() { } void xuat() { }

Xây dựng lớp DATE có các thông tin: ngày, tháng, năm và định nghĩa hàm thành phần nhập, xuất dữ liệu. #include #include #include class DATE { int ngay,thang,nam; public: };

b Xây dựng lớp PHIEUNHAP gồm các thuộc tính tên hàng, 0,75 điểm

ngày nhập, số lượng và định nghĩa các hàm thành phần: hàm

cho phép nhập thông tin cho một phiếu nhập, hàm hiển thị

thông tin của phiếu nhập.

cout<<"Ten hang:";gets(tenhang); //cout<<"ngay nhap:";cin>>ngaynhap; cout<<"So luong:";cin>>soluong; DATE::nhap();

class PHIEUNHAP:public DATE { char tenhang[25]; public:

int ngaynhap,soluong; void nhap() { }

Trang:2/ 4

cout<<"\n "<

void hienthi() { // }

c 2 điểm }; Xây dựng hàm main() thực hiện: + Nhập danh sách gồm n phiếu nhập.

+ Nhập tên mặt hàng, hãy tìm kiếm mặt hàng này bằng

phương pháp tìm kiếm tuần tự

+ Hiển thị ra màn hình các phiếu nhập có số lượng lớn hơn

100.

dspn[i].nhap();

i++;

cout<<"\nMat hang o vi tri thi"<

PHIEUNHAP *dspn; int i,j,n; char mh[60]; clrscr(); cout<<"Nhap so phieu nhap:";cin>>n; dspn=new PHIEUNHAP[n]; for(i=0;i>mh; i=1; while((i<=n)&&(mh!=dspn[i].tenhang)) if(i<=n) else

cout<<"\n khong co mat hang nay";

void main() {

cout<<"\nThong tin phieu nhap hang co so luong >100 la"; for(i=0;i

0,75 điểm 0,75 điểm 0,5 điểm

Trang:3/ 4

{ dspn[i].hienthi(); } cout<<"\n";

if(dspn[i].soluong>100) } getch(); }

2 điểm Câu 3

0,5 điểm a

b

Danh sách kèm mã các sinh viên dưới 18 tuổi và học lực >8.5 SELECT masv, hoten FROM Sinhvien WHERE (now-ns <18) and (hocluc>8.5) Danh sách kèm mã sinh viên dưới 18 tuổi, học và thực tập đều đạt loại khá giỏi (học lực và kết quả >8.5) 0,5 điểm

c

SELECT masv, hoten FROM Sinhvien WHERE (now-ns <18) and (hocluc>8.5) and masv IN (SELECT masv FROM SinhvienDetai WHERE ketqua>8.5) Danh sách các chủ nhiệm đề tài có sinh viên quê ở Hà Nội tham gia. 0,5 điểm

d

SELECT chunhiem FROM detai WHERE madt IN (SELECT madt FROM SinhvienDetai WHERE masv IN (SELECT masv FROM sinhvien WHERE quequan = “Ha Noi”)) Danh sách kèm mã các sinh viên học giỏi hơn các sinh viên ở Hà Nội. 0,5 điểm

SELECT masv, hoten FROM sinhvien WHERE hocluc > ALL (SELECT hocluc FROM sinhvien WHERE quequan = “Ha Noi”)

Cộng (I)

II. Phần tự chọn, do trường biên soạn 3 điểm

1

2

Cộng (II)

Tổng cộng (I + II)

……….., Ngày…………Tháng………..Năm…………..

Trang:4/ 4