Tải bản đầy đủ (.pdf) (7 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 - LT23

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 (160.29 KB, 7 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Ố 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 - LT23

1/7


Câu

Nội dung

Điểm

I. Phần bắt buộc
1

Cơ sở dữ liệu

2.5 điểm

A. Ngôn ngữ SQL

1.5 điểm

1. Select thisinh.masv,thisinh.hoten,thisinh.ngaysinh,lop.tenlop
From thisinh,lop,khoa


Where thisinh.malop=lop.malop and lop.makhoa=khoa.makhoa

0.5 điểm

and khoa.tenkhoa=”Công nghệ thông tin”;
2. Select
thisinh.masv,thisinh.hoten,thisinh.ngaysinh,monthi.tenmonthi,ket
qua.diemthi
From thisinh,monthi,ketqua,lop
Where thisinh.masv=ketqua.masv and monthi.mamt=ketqua.mamt

0.5 điểm

and thisinh.malop=lop.malop and lop.makhoa=”CNTT” and
year(thisinh.ngaysinh) Between 1989 And 1992;
3. Select
thisinh.masv,thisinnh.hoten,monthi.tenmonthi,ketqua.diemthi
From thisinh,monthi,ketqua
Where thisinh.masv=ketqua.masv and monthi.mamt=ketqua.mamt

0.5 điểm

and ketqua.diemthi>=8;
1 điểm

B. Ngôn ngữ đại số
1. T1=thisinh*lop*khoa
T 2   ( tenkhoa"Cong nghe thong tin") (T 1)

0.3 điểm


T 3  ( masv,hoten,ngay sinh,tenlop) (T 2)
2. T1=thisinh*monthi*ketqua*lop
T 2   ( makhoa"CNTT " ^

year ( ngay sinh) Between 1989 And 1992 )

(T 1)

0.3 điểm

T 3  ( masv,hoten ,ngay sinh,tenmonthi,diemthi) (T 2)

3. T1=thisinh*monthi*ketqua
T2=  ( diemthi8) (T1)

0.4 điểm

T3= ( masv,hoten ,tenmonthi,diemthi) (T 2)

2/7


2

2.5 điểm

Cấu trúc dữ liệu và giải thuật
1. Trình bày ý tưởng và giải thuật của thuật toán sắp xếp nổi bọt
(bubble-sort)


1 điểm

*) Ý tưởng:
- Ban đầu có một dãy khóa k1,k2,k3….kn chưa được sắp
xếp
- Duyệt tồn bộ dãy khóa, tại mỗi bước quét dãy khóa từ 0.5 điểm
cuối dãy, nếu gặp hai phần tử ien tiếp nghịch thế thì tiến
hành đổi chỗ.
- Trong quá trình sắp xếp phần tử nhẹ hơn sẽ nổi lên trên,
phần tử nặng hơn sẽ chìm xuống dưới.
*) Giải thuật:
void bubble-sort (mang a, int n)
{
int i,j,m,tg;
for (i=0; ifor (j=n-1; j>=i+1; j--)
if (a[j] tg=a[j];
a[j]=a[j-1];
a[j-1]=tg;
}

0.5 điểm

2. Viết chương trình tạo một danh sách liên kết n nút trong đó
mỗi nút là nhân viên gồm các thơng tin: họ tên, tuổi, thâm niên.
1.5 điểm
Duyệt danh sách trên và đưa ra danh sách và số lượng các nhân
viên có thâm niên >10 và tuổi < 40.

typedef struct NV
{ char ten[10];
int tuoi, tn;
};
typedef struct tagNode
{ HS infor;
struct tagNode *link;
}
Node;
Node *head, *p, *moi;
int n;

0.3 điểm

3/7


void nhap( )
{
HS 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 cua nhan vien:”); fflush(stdin);
gets ( tg.ten); fflush(stdin);
printf ( “ Nhap thong tin tuoi va tham nien cua nhan vien
moi:”); scanf(“%d%d”, &tg.tuoi, &tg.tn);

moi -> infor =tg;
0.3 điểm
if (head ==NULL)
{
head = moi;
p=moi;
p -> link =NULL;
}
else
{
p -> link = moi;
p= moi;
p -> link =NULL;
}
}
}
void duyet()
{
Node *p;
p=head;
printf ( “ danh sach nhan vien vua nhap la:”);
while ( p !=NULL)
0.3 điểm
{
printf(" \n \t %s \t%d \t%d ”, p->infor.ten, p->infor.tuoi, p>infor.tn) ;
p=p-> link ;
}
}

4/7



void duyet2()
{
Node *p;
p=head;
printf ( “ danh sach nhan vien co tham nien >10 va co tuoi < 40
la:”);
while ( p !=NULL)
0.3 điểm
{
if ((p -> infor.tuoi >10)&&( p -> infor.tn >10))
printf(" \n \t %s \t%d \t%d ”, p->infor.ten, p->infor.tuoi,
p->infor.tn) ;
p=p-> link ;
}
}
void main()
{
clrscr() ;
printf ( ” nhap so nut ”) ;scanf (“ %d”, &n);
0.3 điểm
nhap();
duyet();
duyet2();
getch();
}

3


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

2 điểm

- Phương pháp khai báo xây dựng hàm bạn cho nhiều lớp:
class B; /* Khai báo dẫn hướng lớp B*/
class A
{
private:
< Khai báo các thành phần riêng lớp A>;
public:

friend <Kiểu giá trị của hàm> <Tên hàm bạn>(< Tham số
hàm>);
};
class B
{
private:
< Khai báo các thành phần riêng lớp B>;
public:


1 điểm

5/7


friend <Kiểu giá trị của hàm> <Tên hàm bạn>(< Tham số
hàm>);
};

/*------- xây dựng hàm bạn-------*/
<Kiểu giá trị của hàm> <Tên hàm bạn>(<Tham số hàm>)
{
< Thân hàm bạn>;
}

6/7


class rectangle;
class cicrle
{
private:
int x,y;
float r;
public:

float getarea()
{
return 3.14*r*r;
}
friend float totalarea(rectangle o1,circle o2);
};
class circle
{
private:
int x,y;
float a,b;
public:


float getarea()
{
return a*b;
}
friend float totalarea(rectangle o1,circle o2);
};

1 điểm

float totalarea(rectangle o1,circle o2)
{
return (o1.getarea()+o2.getarea());
}
Cộng I

7 điểm

II. Phần tự chọn, do trường biên soạn
1
Cộng II
Tổng cộng (I+II)

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

7/7



×