Tải bản đầy đủ (.doc) (6 trang)

Đáp án đề thi tốt nghiệp cao đẳng nghề khóa 3 (2009-2012) - Nghề: Lập trình máy tính - Môn thi: Lý thuyết chuyên môn nghề - Mã đề thi: DA LTMT-LT28

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (85.69 KB, 6 trang )

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Ề KHỐ 3 (2009 - 2012)
NGHỀ: LẬP TRÌNH MÁY TÍNH
MƠN THI: LÝ THUYẾT CHUN MƠN NGHỀ
Mã đề thi: DA LTMT - LT28
Câu
Nội dung
I Phần bắt buộc
1 Cơ sở dữ liệu

Điểm
2.5

A. Ngôn ngữ SQL
1. Select nhanvien.ho, nhanvien.tenlot, nhanvien.tennv, nhanvien.dchi
From nhanvien, phongban
Where nhanvien.mapb=phongban.mapb And phongban.tenpb=”Nghiên
cứu”;
2. Select Dean.mada, Dean.mapb, nhanvien.ho, nhanvien.tennv,
nhanvien.dchi, nhanvien.ngsinh
From phongban, nhanvien, dean
Where phongban.mapb=dean.mapb And phongban.TRP=nhanvien.manv
And dean.diadiem=”Hà Nội”
3. Select nhanvien.tennv
From nhanvien, phancong, dean
Where nhanvien.manv= phancong.manv And Dean.mada= phancong.mada
And phancong.thoigian>10 And nhanvien.mapb=5 And dean.tenda=”Sản
phẩm X”;


B. Ngôn ngữ đại số

0.5

0.5

0.5

T 1 =Nhanvien
Phongban

1.

nhanvien. mapb =phongban . mapb

0.4

T 2 =σ( tenpb =" Nghiencuu ") (T 1)

T 3 =∏
(T 2)
( ho , tenlot , tennv , dchi
T 1 =( Phongban 
dean) 
nhanvien

2.

phongban .TRP =nhanvien . manv


phongban .mapb =dean . mapb

0.3

T 2 =σ( diadiem =" HaNoi ") (T 1)
T 3 =∏
(T 2)
( mada , mapb , ho , tennv , dchi , ng sinh)

3.

T 1 = (nhanvien 
phancong ) 

dean

phancong . mada =dean.mada

nhanvien. manv = phancong . manv

T 2 =σ( thoigian >10 ^ mapb =5 ^ tenda ="San pham X ") (T 1)

T 3 = ∏(tennv ) (T 2)

1/6

0.3


2


Cấu trúc dữ liệu & giải thuật
2.5
1. Trình bày giải thuật sắp xếp nhanh (Quick sort) trên dãy số nguyên n phần tử
*) Ý tưởng
- Ban đầu có một dãy khóa k1,k2,k3....kn chưa được sắp xếp
- Chọn 1 khóa làm chốt, đưa các phần tử nhỏ hơn chốt về phía trước của
chốt, đưa các phần tử lớn hơn chốt về phía sau, kết thúc q trình này ta
được 2 dãy khóa con gọi là 2 phân đoạn.
- Thực hiện tương tự quá trình trên bằng giải thuật đệ qui cho 2 phân đoạn
của dãy khóa
- - Q trình thực hiện tương tự cho đến khi việc phân đoạn không thực hiện
được nữa thì quá trình sắp xếp dãy ban đầu đã thực hiện xong.
*) Giải thuật
void Quick-sort (mang a, int n, int l, int r)
{ int i,j,x,tg,m;
i=l;
j=r;
x=a[(l+r)/2];
do
{ while (a[i]while (a[j]>x) j++;
if (i<=j)
{
hoanvi(a[i], a[j]);
i++;
j--; } }
while (iif (l< j) Quick_sort( a,n,l,j);
if (i< r) Quick_sort( a,n,i,r);

}

2/6


2. Viết chương trình tạo một danh sách liên kết đơn, …
typedef struct SP
{
char ten[10];
char ma[5];
int soluong;
float giaban, thanhtien;
};
typedef struct tagNode
{
SP infor;
struct tagNode *link;
}Node;
Node *head, *p, *moi;
int n;

3/6

0.4


void nhap( )
{
SP tg ;
int i ;

head = NULL;
for ( i=0; i{
moi = (Node *) malloc (sizeof(Node));
printf ( “ Nhap thong tin cho nut moi:”);
printf ( “ Nhap thong tin ten san pham:”);
fflush(stdin);
gets ( tg.ten);
fflush(stdin);
printf ( “ Nhap ma san pham:”);
fflush(stdin);
gets ( tg.ma);
fflush(stdin);
printf ( “ Nhap so luong san pham:”);
scanf(“%d”, &tg.soluong);
printf ( “ Nhap giaban san pham:”);
scanf(“%f”, &tg.giaban);
tg.thanhtien=tg.soluong * tg.dongia;
moi -> infor =tg;
if (head ==NULL)
{
head = moi;
p=moi;
p -> link =NULL;
}
Else
{
p -> link = moi;
p= moi;
p -> link =NULL;

}
}
}

4/6

0.4


int dem1()
{
int d=0;
p=head;
while (p !=NULL)
{
if ((p->infor.soluong<50)&&(p->infor.giaban=500))
d++;
p=p->link;
}
return d;
}
int dem2()
{
int d=0;
p=head;
while (p !=NULL)
{
if ((strcmp(p->infor.ma, “MS01”)==0)
d=p->infor.soluong;
p=p->link;

}
return d;
}
void main()
{
clrscr() ;
printf ( ” nhap so nut ”) ;scanf (“ %d”, &n);
nhap();
prinft(“ mat hang co mso luong <50 va gia ban =500 la %d”, dem1())
prinft(“ mat hang co ma MS01 co so luong la %d”, dem2());
getch();
}

5/6

0.4

0.4

0.1


4

Lập trình hướng đối tượng

- Giải thích biểu đồ
o Biểu đồ cho biết từ đối tượng ta không truy nhập trực tiếp vào
các thành phần nằm trong phần private của lớp.
o Từ đối tượng ta có thể truy nhập trực tiếp vào thành phần public

của lớp và từ phần public ta truy nhập được vào phần private.
- Chương trình sau khi sửa:

2.0
1.0

1.0

class pointer
{
private:
int x,y;
public:
pointer(int xx=0,int yy=0)
{
x=xx;
y=yy;
}
void display()
{
cout<}
};
void main()
{
pointer o(120,200);
o.display();
}
Cộng (I)
II

1
2


Phần tự chọn

Cộng (II)
Tổng cộng (I + II)

………, ngày ………. tháng ……. năm ……

6/6



×