đáp án đề thi lí thuyết tốt nghiệp khóa 2 - lập trình máy tính - mã đề thi ltmt - lt (4)

5 330 0
đáp án đề thi lí thuyết tốt nghiệp khóa 2 - lập trình máy tính - mã đề thi ltmt - lt (4)

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

Thông tin tài liệu

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 - LT04 TT Nội dung Điểm I. Phần bắt buộc 7 điểm Câu 1 1,5 điểm 1 Trình bày giải thuật sắp xếp kiểu thêm dần để sắp xếp một dãy khóa theo chiều giảm dần. 0,75 điểm procedure sxthemdan(a,n) 1. a[0] := -∞; 2. for i:=2 to n do 0,25 điểm begin X:=a[i]; j:=i-1; while(X<a[j]) begin a[j+1]=a[j]; 0,25 điểm j:=j-1; end; a[j+1] = X; end; 3. return; 0,25 điểm 2 Hãy đưa ra một dãy khoá gồm 10 phần tử bất kỳ, sau đó đưa 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 thêm dần. 0,75 điểm Cho dãy khoá gồm 10 phần tử, chẳng hạn: 36 18 19 52 53 72 39 61 70 90. Bước 1: 36 18 19 52 53 72 39 61 70 90 0,25 điểm Bước 2: 36 19 18 52 53 72 39 61 70 90 0,25 điểm Bước 3: 52 36 19 18 53 72 39 61 70 90 0,25 điểm Câu 2 Để phục vụ cho việc quản lý các đại lý bán hàng của một 3,5 điểm Trang:1/ 5 công ty. Hãy viết chương trình thực hiện các yêu cầu sau: a Xây dựng lớp để quản lý đại lý bao gồm đại lý, tên đại lý, số năm hợp tác, chiết khấu cơ bản có giá trị là 500.000 đồng và định nghĩa hàm thành phần cho phép nhập thông tin cho đại lý, hiển thị thông tin của một đại lý, tính tiền chiết khấu. tiền chiết khấu=chiết khấu cơ bản*số năm hợp tác*10% 0,75 điểm #include <iostream.h> #include <conio.h> #include<stdio.h> class DAILY { char madaily[10]; char tendaily[30]; public: int sonamhoptac; void nhap() { cout<<"ma dai ly:";gets(madaily); cout<<"ten dai ly:";gets(tendaily); cout<<"so nam hop tac:";cin>>sonamhoptac; } float tinhtienCK() { return(500000*sonamhoptac*0.1); } void hienthi() { cout <<" "<<madaily<< " "<<tendaily<<" "<<sonamhoptac; } }; 0,25 điểm 0,25 điểm 0,25 điểm b Xây dựng lớp đại lý bán lẻ thừa kế từ lớp đại lý có thêm thuộc tính doanh số và định nghĩa hàm thành phần cho phép nhập thông tin cho một đại lý bán lẻ, hàm hiển thị thông tin của một đại lý bán lẻ (với các thông tin tên đại lý, số năm hợp tác, doanh số, tổng tiền thưởng), hàm tính tổng tiền thưởng cho đại lý bán lẻ bằng tiền chiết khấu + tiền hưởng hoa hồng. Tiền hưởng hoa hồng cho đại lý bán lẻ dựa vào doanh số bán hàng như sau: nếu doanh số >= 50.000.000 thì tiền hoa hồng 1,5 điểm Trang:2/ 5 bằng 15% doanh số, nếu 20.000.000 <= doanh số < 50.000.000 thì tiền hoa hồng bằng 10% doanh số, còn lại thì tiền hoa hồng bằng 5% doanh số. class DAILYBANLE: public DAILY { public: float doanhso; public: void nhapbanle() { cout<<"doanh so:";cin>>doanhso; } float tienthuong() { float tongtien; if(doanhso>=50000000) tongtien=tinhtienCK()+15*doanhso/100; else if((doanhso>=20000000)&&(doanhso<50000000)) tongtien=tinhtienCK()+10*doanhso/100; else tongtien=tinhtienCK()+5*doanhso/100; return tongtien; } void hienthibanle() { hienthi(); cout<<" "<<doanhso<<" "<<tienthuong(); } }; 0,25 điểm 1 điểm 0,25 điểm c Viết hàm main() nhập danh sách gồm n đại lý bán lẻ và hiển hị ra màn hình danh sách đại lý bán lẻ có doanh số >50.000.000 và số năm hợp tác nhỏ hơn 3 năm. 1,25 điểm void main() { clrscr(); DAILYBANLE *ds; int n,i,j; 0,5 điểm Trang:3/ 5 cout<<"\nNhap vao so dai ly ban le:"; cin>>n; ds=new DAILYBANLE[n]; for (i = 1; i <=n; i++) { cout <<"\nNhap thong tin cho dai ly ban le thu " <<i<<endl; ds[i].nhap(); ds[i].nhapbanle(); } for (i = 1; i <=n; i++) { ds[i]. hienthibanle(); cout<<endl; } cout<<"Danh sach cac dai ly ban le co doanh so lon hon 50.000.000 va so nam hop tac nho hon 3 nam:" <<endl; for (i = 1; i <=n; i++) { if((doanhso>50000000)&&(sonamhoptac<3)) } ds[i]. hienthibanle(); } getch(); } 0,25 điểm 0,5 điểm Câu 3 2 điểm a Cho biết họ tên, NTNS, địa chỉ của học viên có điểm cao nhất trong khoá số “PT297” SELECT Ho, Ten, Ntns, Dchi, Diem FROM Hocvien INNER JOIN Bienlai ON Hocvien.Mahv = Bienlai.Mahv WHERE Bienlai.Makh= “PT297” AND (Bienlai.Diem IN (SELECT Max(Diem) FROM Bienlai WHERE Bienlai.Makh= “PT297”)) 0,5 điểm b Cho biết tên các lớp học và điểm trung bình, điểm cao nhất của tất cả các học viên trong lớp. 0,5 điểm Trang:4/ 5 SELECT Tenlop, AVG(Diem) AS DiemTB, MAX(Diem) AS DiemMax FROM Lophoc INNER JOIN Bienlai ON Lophoc.Malop = Bienlai.Malh GROUP BY Bienlai.Malh, Tenlop c Cho họ tên giáo viên và số lượng lớp giáo viên đó đã dạy SELECT Hoten, Count(*) AS Soluong FROM Giaovien INNER JOIN Lophoc ON Giaovien.Magv = Lophoc.Magv GROUP BY Lophoc.Magv, Hoten 0,5 điểm d Cho biết họ tên và kết quả học tập (điểm, xếp loại, kết quả ) cuả những học viên được miễn học phí. SELECT Ho, Ten, Diem, Xeploai, Kqua FROM Bienlai INNER JOIN Hocvien ON Bienlai.Mahv = Hocvien.Mahv WHERE Bienlai.Tiennop = 0 0,5 điểm II. Phần tự chọn, do trường biên soạn 3 điểm 1 2 Tổng cộng (I + II) ……… , Ngày…………Tháng……… Năm………… Trang:5/ 5 . 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. Điểm I. Phần bắt buộc 7 điểm Câu 1 1,5 điểm 1 Trình bày giải thuật sắp xếp kiểu thêm dần để sắp xếp một dãy khóa theo chiều giảm dần. 0,75 điểm procedure

Ngày đăng: 17/03/2014, 17:56

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan