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

Đáp án đề thi tốt nghiệp cao đẳng nghề khoá II (năm 2008 - 2011) 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 (167.25 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

Câu
1

ĐÁP ÁN
ĐỀ THI TỐT NGHIỆP CAO ĐẲNG NGHỀ KHỐ 2 (2008 - 2011)
NGHỀ: Lập trình máy tính
MƠN THI: LÝ THUYẾT CHUN MƠN NGHỀ
Mã đề thi: DA LTMT - LT28
Nội dung
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”;

0.5

0.5

0.5

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

1.

 Phongban

Nhanvien
nhanvien

T 2  

( tenpb

2.

phongban

T2  
T3 


3.

( ho , tenlot

T1 

( diadiem



 " Ha Noi

, tennv

 phongban

. mapb

0.4

") (T 1 )

 " Nghiencuu


T 1  ( Phongban

T 3 

. mapb


, dchi

(T 2 )

 dean )  nhanvien
phongban

. mapb  dean . mapb

( mada , mapb , ho , tennv , dchi , ng sinh)

. manv

0.3
(T 2 )

( nhanvien  phancong
 10 ^ mapb  5 ^ tenda  " San pham X " )

) 

dean

phancong . mada  dean . mada

nhanvien . manv  phancong . manv

T 2   ( thoigian


. TRP  nhanvien

") ( T 1)

(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, …

0.4

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


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

2.0

- 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.

1.0

- Chương trình sau khi sửa:

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();
}

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

6/6



×