Đá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 - LT26 giúp các bạn biết được đáp án đúng của đề thi môn Lý thuyết chuyên môn nghề Lập trình máy tính. Từ đó, giúp các bạn nắm bắt kiến thức tốt hơn để có sự chuẩn bị cho kỳ thi một cách hiệu quả.
Trang 1CỘ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Á 2 (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 - LT26
1 Cơ sở dữ liệu
A Ngôn ngữ SQL
2 Select
danhsach.manv,danhsach.hoten,danhsach.gioitinh,danhsach.diachi,danhsach.ngay
sinh
From danhsach,chucvu,luong
Where danhsach.macv=chucvu.macv And luong,manv=danhsach.manv
And luong.heso>2.5 And chucvu.tencv=”Trưởng Phòng”;
0.5
3 Select manv,hoten,diachi,macv
From danhsach
Where gioitinh=”Nam” And month(ngaysinh)=3;
0.5
B Ngôn ngữ đại số
1 T1=(gioitinh"Nu")(Danhsach)
T2=( , , , sinh, ) ( 1 )
macv ngay diachi hoten
2 T1=danhsach*chucvu*luong
T2=(heso2. ^tencv"Truong phong")(T1 )
T3=(manv,hoten,giotinh,diachi,ngaysinh)(T2)
0.4
3 T1=(gioitinh"Nam"^month(ngaysinh)3)(Danhsach)
T2=(manv,hoten,diachi,macv)(T1) 0.3
Trang 21. Trình bày giải thuật sắp xếp trộn trực tiếp (Insert 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
- Đầu tiên ta có phần tử k1, khi thêm k2 thì ta phải so sánh với k để tìm vị trí
chèn
- Khi thêm k3 thì ta phải so sánh với k1 và k2 để tìm vị trí chèn
- Thực hiện tương tự cho tất cả các phần tử khác đến khi gặp phẩn tử cuối
cùng thì toàn bộ dãy khóa được sắp xếp
0.5
*) Giải thuật:
void Insert-sort (mang a, int n)
{
int i, j, x;
a[-1]=-32768;
for( i=1;i<n;i++)
{
j=i-1;
x=a[i];
while(a[j]>x) {
a[j+1]=a[j];
j ;
} a[j+1]=x;
}
}
0.5
Trang 32 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;
0.4
Trang 4void nhap( )
{
SP tg ;
int i ;
head = NULL;
for ( i=0; i<n; 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;
} }
}
0.4
Trang 5void sapxep() {
SP tg;
p=head;
while (p !=NULL)
{
q=p->link;
while (q!=NULL) {
if(q->infor.giaban > p->infor.giaban) {
tg=q->infor;
q->infor =p->infor;
p->infor =tg;
} q=q->link;
} p=p->link;
}
}
0.4
float maxgiaban() {
Node *p; float max;
p=head;
max=p->infor.giaban;
while ( p !=NULL)
{
if ((p -> infor.giaban>max) max=p->infor.giaban ; p=p-> link ;
}
Return max;
}
0.4
void main(){
clrscr() ;
printf ( ” nhap so nut ”) ;scanf (“ %d”, &n);
nhap();
sapxep();
prinft(“gia ban cao nhat la %f”, maxgiaban());
0.1
Trang 74 Lập trình hướng đối tượng 2.0
- Đa thừa kế là quá trình xây dựng lớp mới từ nhiều lớp ban đầu đã có
+ Lớp mới là lớp dẫn xuất
+ Các lớp ban đầu gọi là lớp cơ sở
1.0
- Ví dụ:
class person{
private:
char ht[40];
char sbd[10];
int ns;
public:
person(char *s1=””,char *s2=””,int nss){
strcpy(ht,s1);
strcpy(sbd,s2);
ns=nss;
}
void display() {
cout<<ht<<”\t”<<sbd<<”\t”<<ns;
}
};
class result{
private:
float d1,d2,d3;
public:
result(float dd1=0,float dd2=0,float dd3=0) {
d1=dd1;
d2=dd2;
d3=dd3;
}
void display(){
cout<<d1<<”\t”<<d2<<”\t”<<d3<<endl;
}
};
class student:public person, public result{
public:
student(char *s1=””,char *s2=””,int nss=0, float dd1=0,float
dd2=0,float dd3=0):person(s1,s2,nss),result(dd1,dd2,dd3){
}
void display(){
person::display();
result::display();
1.0
Trang 8
………, ngày ……… tháng …… năm ……