Trang:1/ 2
CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
Độc lập – Tự do – Hạnh phúc
ĐỀ THI TỐT NGHIỆP CAO ĐẲNG NGHỀ KHOÁ 3 (2009 - 2012)
NGHỀ: LẬP TRÌNH MÁY TÍNH
MÔN THI: LÝ THUYẾT CHUYÊN MÔN NGHỀ
Mã đề số: LTMT - LT09
Hình thức thi: Tự lun
Thời gian: 150 phút (không kể thi gian giao/chép đề thi)
ĐỀ BÀI
Câu 1: (1,5 điểm)
1.Trình bày giải thuật tìm kiếm tun tự.
2.Trình y gii thuật sắp xếp kiểu thêm dần để sắp xếp một y khóa theo thứ
tự tăng dần.
Câu 2: (3,5 điểm)
Xây dựng khuôn hình hàm thực hin:
a. Xây dựng khuôn hàm hoán đổi cho phép đổi giá trị của hai biến số truyn vào.
b. Xây dựng khuôn hình hàm sắp xếp sử dụng khuôn hình m hn đổi để
sắp xếp giá trị của một mng theo chiềung dần.
c. Xây dựng khuôn hình hàmm số lớn nhất trong một một mng
d. Xây dựng khuôn hình hàm để in giá trị của một mảng ra màn hình.
e. Viết hàm main() sử dụng các khuôn hình hàm đã xây dựng :
- Sắp xếp giá tr của hai mảng, mt mng các phần tkiểu nguyên một
mng các phần tử có kiu thực.
- Hiển thị số lớn nhất trong mảng các phần tử có kiểu thực.
Câu 3: (2,0 điểm)
a. Định nghĩa phụ thuộc hàm
b. Cho quan hệ R (A, B, C, D) như sau
R(A B C D)
a 1 x 2
a 1 y 2
b 2 x 1
b 2 y 1
Cho biết R thỏa những phụ thuộc hàm nào trong số các phụ thuộc hàm liệt kê
dưới đây ?
f1: A A, f2: AB, f3 : AC, f4 : ACC, f5 : AD, f6 : DA
Trang:2/ 2
..............,ngày.............tháng..............năm...............
DUYỆT HỘI ĐỒNG THI TỐT NGHIỆP TIỂU BAN RA ĐỀ THI
Trang:1/ 4
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Á 3(2009 - 2012)
NGHỀ: LẬP TRÌNH MÁY TÍNH
MÔN THI: LÝ THUYẾT CHUYÊN MÔN NGHỀ
Mã đề số: DA LTMT - LT09
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 gii thuật sắp xếp kiu thêm dần để sắp xếp một
dãy khóa theo chiều gim dần.
0,75 điểm
Trình bày gii thuật tìm kiếm tuần tự. 0,75 điểm
function TKTT(a,n,X);
1. i:=1; a[n+1]:=X;
0,25 điểm
2. While a[i]<>X do i:=i+1; 0,25 điểm
3. if i=n+1 then return 0
else return 1;
0,25 điểm
2 Trình bày gii thuật sắp xếp kiểu thêm dần để sắp xếp một
dãy khóa theo thứ tự tăng dần.
0,75 điểm
procedure sxthemdan(a,n)
1. a[0] := -∞;
2. for i:=2 to n do
begin
0,25 điểm
X:=a[i]; j:=i-1;
while(X<a[j])
begin
a[j+1]=a[j]; j:=j-1;
end;
0,25 điểm
a[j+1] = X;
end;
3. return;
0,25 điểm
Trang:2/ 4
Câu 2 3,5 điểm
a Xây dựng khuôn hàm hoán đổi cho phép đổi giá trị ca hai
biến số truyn vào
0,5 điểm
#include<iostream.h>
#include<conio.h>
#include<stdlib.h>
template <class T>
void Hoandoi(T& a,T& b)
{
T tmp;
tmp=a;
a=b;
b=tmp;
}
b Xây dựng khuôn hình m sắp xếp sử dụng khuôn hình
hàm hoán đổi để sắp xếp giá trca mt mng theo chiều
tăng dần.
0,5 điểm
template <class T>
void Sapxep(T *ma,int n)
{
for(int i=1;i<n;i++)
for(int j=i+1;j<=n;j++)
if(ma[i]>ma[j])
Hoandoi(ma[i],ma[j]);
}
c Xây dựng khuôn hình m tìm số lớn nhất trong một một
mng
0,5 điểm
template <class T>
void Timmax(T *ma,int n)
{ T max;
max=ma[1];
for(int i=2;i<=n;i++)
if(max<ma[i])
max=ma[i];
cout<<"phan tu lon nhat trong mang la:"<<max;
}
d Xây dựng khuôn hình hàm để in giá tr của mt mng ra
màn hình
0,5 điểm
template <class T>
void Hienthi(T *ma,int n)
Trang:3/ 4
{
cout<<"["<<ma[1];
for(int i=2; i<=n; i++)
cout<<","<<ma[i];
cout<<"]\n";
}
e Viết hàm main sử dụng các khuôn hình hàm đã xây dựng :
- Sắp xếp giá trị của hai mảng, một mảng các phần t
kiu nguyên và một mảng các phần tử có kiểu thực.
- Hiển thị số ln nht trong mng các phần tử kiu
thực.
1,5 điểm
void main()
{
clrscr();
int A[100];
double B[100];
int i,n,m;
cout<<"Nhap vao so phan tu cua mang so
nguyen"<<endl;
cin>>n;
for(i=1; i<=n; i++)
{
cout<<"A["<<i<<"]=";
cin>>A[i];
}
cout<<"Nhap vao so phan tu cua mang so
thuc"<<endl;
cin>>m;
for(i=1; i<=m; i++)
{
cout<<"B["<<i<<"]=";
cin>>B[i];
}
cout<<"Mang so nguyen ban dau la:"<<endl;
Hienthi(A,n);
cout<<"Mang so nguyen sau khi sap xep
la:"<<endl;
Sapxep(A,n);
Hienthi(A,n);
cout<<"Mang so thuc ban dau la:"<<endl;
Hienthi(B,m);
0,25 điểm
0,25 điểm
0,25 điểm
0,25 điểm
0,25 điểm