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

đề thi kỹ thuật lập trình cơ bản

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 (146.96 KB, 14 trang )

TRƯỜNG CĐ KỸ THUẬT CAO THẮNG ĐỀ THI HỌC KỲ 1
KHOA ĐIỆN TỬ - TIN HỌC MÔN: KỸ THUẬT LẬP TRÌNH CƠ BẢN
LỚP: CĐN QTM 11 AB
THỜI GIAN: 60 phút
(Không sử dụng tài liệu)
ĐỀ 1: (ĐÁP ÁN VÀ ĐỀ THI)
Câu A B C D Câu A B C D
1 x 21 x
2 x 22 x
3 x 23 x
4 x 24 x
5 x 25 x
6 x 26 x
7 x 27 x
8 x 28 x
9 x 29 x
10 x 30 x
11 x 31 x
12 x 32 x
13 x 33 x
14 x 34 x
15 x 35 x
16 x 36 x
17 x 37 x
18 x 38 x
19 x 39 x
20 x 40 x
1/ Kiểu nào có kích thước lớn nhất ?
a) int
b) char
c) long


d) double
2/ Khai báo nào sai ?
a) int a1;
b) char ky_tu;
c) long 2x;
d) double N;
3/ Cho biết dòng lệnh nào bị lỗi ?
#include<iostream.h>
void main()
{ float a; // 1
cout<<" Nhập 1 số : "; // 2
cin>>a; // 3
if (a >= 0) cout <<sqrt(a); // 4
}
a) dòng //1
b) dòng //2
c) dòng //3
d) dòng //4
4/ Để xuống dòng và đưa con trỏ về đầu dòng ?
a) cout<<endl;
b) cout<<”/n”;
c) câu a và câu b đúng
d) câu a và câu b sai
5/ Kết quả xuất ra của chương trình sau ?
#include<iostream.h>
void main()
{ int x=1, y=3;
x=x*y;
y ;
cout<<x+y;

}
a) 4
b) 5
c) 6
d) 7
6/ Với các khai báo sau
int n, m;
float x, y;
thì lệnh nào dưới đây là sai ?
a) n=m/2;
b) x=n/5;
c) y=x%3;
d) m=n%4;
7/ Cho biết kết quả xuất ra của đoạn chương trình sau ?
int a=10, s=0;
while (s<30)
{ s=s+a;
a++;
}
cout<<s;
a) 10
b) 33
c) 11
d) 27
8/ Cho biết kết quả của đoạn chương trình sau ?
int a=4;
switch(a%2)
{ case 2: a=a+3;break;
case 4: a=a-6; break;
default: a=a/5;

}
cout<<a;
a) 7
b) -2
c) 0
d) 5
9/ Cho biết kết quả của đoạn chương trình sau ?
int a=16%3 - 1;
int b=a+1;
if (a!=0)
cout<<b;
else
if (b>1)
cout<<a;
else
cout<<a+b;
a) 1
b) 0
c) 2
d) 3
10/ Cho biết kết quả của đoạn chương trình sau đây nếu lần lượt nhập vào 1, 5, 4, -3
int a=0, d=0;
do
{ cin>>a;
d++;
} while(a>0);
cout<<d;
a) 6
b) 1
c) 4

d) 5
11/ Cho biết dòng lệnh nào bị lỗi ?
#include<iostream.h>
void main()
{ int n, y=1;
cin>>n; // 1
for( j=1; j<=n; j++) // 2
y = y*n ; // 3
cout<<"Tich ="<< y ; // 4
}
a) dòng //1
b) dòng //2
c) dòng //3
d) dòng //4
12/ Cho biết kết quả của đoạn chương trình sau ?
int x=1, y=2;
if (x<=y)
x++;
y=y+x;
else
y ;
cout<<x-y;
a) 1
b) 0
c) -2
d) không thực hiện vì có lỗi
13/ Cho biết kết quả của đoạn chương trình sau đây nếu nhập vào 135
int s, n=0, m;
cin>>s;
while (s>0)

{ m=s%10;
n=n+m;
s=s/10;
}
cout<<n;
a) 1
b) 3
c) 5
d) 8
14/ Cho biết kết quả của đoạn chương trình sau ?
float LT=7;
float TH=4;
if ((LT+TH)/2>=5)
cout<<"Đậu";
else if (LT>=5)
cout<<"Thi lại TH";
else if (TH>=5)
cout<<"Thi lại LT";
else
cout<<"Rớt";
a) Đậu
b) Rớt
c) Thi lại LT
d) Thi lại TH
15/ Lệnh break để dừng lại lệnh nào ?
a) switch
b) cấu trúc lặp
c) câu a và câu b đúng
d) câu a và câu b sai
16/ Cho biết kết quả của đoạn chương trình sau ?

int n=4;
float t=0;
for (int i=1; i<n; i++)
t = t + 1/i;
cout<<t;
a) 1
b) 1.8333
c) 2.0833
d) tất cả đều sai
17/ Với các khai báo sau
int a=1;
float b=2;
const n=2012;
thì lệnh nào dưới đây là sai ?
a) a=a+n;
b) n=a-3;
c) a=a%n;
d) b=a/n;
18/ Cấu trúc nào bắt buộc phải dùng cặp dấu { }
a) switch case
b) do while
c) câu a và câu b đúng
d) câu a và câu b sai
19/ Cho đoạn chương trình sau
int n=3, m=6 ;
for (int a=1; a<=n; a++) ;
for (int b=1; b<=m; b++)
cout<<"Lap trinh C";
thì dòng chữ Lap trinh C sẽ in ra bao nhiêu lần ?
a) 3

b) 6
c) 18
d) 15
20/ Cho biết kết quả của đoạn chương trình sau nếu lần lượt nhập 4, 7, 5 ?
cin>>a>>b>>c;
int x=(a>b) ? a:b;
int n=(c>x) ? x:c;
cout<<n;
a) 5
b) 7
c) 4
d) tất cả đều sai
21/ Cho biết kết quả của đoạn chương trình sau ?
int n=5;
switch(n/2)
{ case 1: n ;
case 2: n++;
default: n=n%5;
}
cout<<n;
a) 1
b) 2
c) 4
d) 6
22/ Cho biết kết quả của đoạn chương trình sau ?
cin>>a>>b;
if (a>b)
cout<<a
else
cout<<b;

a) xuất ra số lớn hơn khi nhập hai số 7 và 3
b) xuất ra số nhỏ hơn khi nhập hai số 7 và 3
c) không xuất gì cả khi nhập hai số bằng nhau
d) không thực hiện vì có lỗi
23/ Cho biết kết quả của đoạn chương trình sau
int n=10;
for (int a=1; a<n; a=a+2)
cout<<n-a<<" ";
a) 1 3 5 7 9
b) 9 7 5 3 1
c) 1 2 3 4 5 6 7 8 9
d) 9 8 7 6 5 4 3 2 1
24/ Cho biết kết quả của đoạn chương trình sau
int s=5, n=0;
while (s>0)
{ n=n+s;
s++;
}
cout<<n;
a) 15
b) 35
c) vòng lặp không ngừng
d) tất cả đều sai
25/ Cho biết kết quả TT, nếu nhập vào 5000 và 8
cin>>DG>>SL;
TT=DG*SL;
if (SL>=5 || TT>100000)
TT=TT*9/10;
cout<<TT;
a) xuất ra 40000

b) xuất ra 36000
c) xuất ra 4000
d) tất cả đều sai
26/ Cho biết kết quả của đoạn chương trình sau nếu lần lượt nhập vào 8, 1, 5, 4, 6, 0
int n=0, x;
do
{ cin>>x;
if(x%2==0)
n=n+x;
} while(x>0);
cout<<n;
a) 24
b) 6
c) 3
d) 18
27/ Cho biết kết quả của biểu thức sau nếu n=10
((n>0 || n<10) && (n%2>=5))
a) 0
b) 1
c) TRUE
d) FALSE
28/ Lệnh nào sau đây để nhập giá trị vào hai biến kiểu số a và b ?
a) cin>>a,b;
b) cout<<”Nhập 2 số a,b”;
c) cin>>a>>b;
d) cout<<a<<b;
29/ Cho biết kết quả của chương trình sau
#include<iostream.h>
void main()
{ int s=0;

for(int j=1; j<10; j++)
s=s+j;
cout<<s;
}
a) 25
b) 35
c) 45
d) 55
30/ Cho biết kết quả của đoạn chương trình sau ?
int a=1, b=2;
if (a<b)
if (a>1)
a++;
else
b++;
else
a=a+b;
cout<<a<<” “<<b;
a) 1 3
b) 2 2
c) 2 3
d) tất cả đều sai
31/ Kích thước của kiểu float là
a) 1 byte
b) 2 bytes
c) 4 bytes
d) 8 bytes
32/ Cho biết kết quả của chương trình sau
#include<iostream.h>
void main()

{ int s=10;
for(int n=1; s>1; s )
{ n=n*s;
if(n>100)
break;
}
cout<<s;
}
a) 0
b) 1
c) 10
d) 8
33/ Cho biết kết quả của đoạn chương trình sau nếu lần lượt nhập vào 1, 5, 4, 3, 0
int m=0, x;
do
{ cin>>x;
if(m<x)
m=x;
} while(x>0);
cout<<m;
a) 13
b) 5
c) 4
d) 0
34/ Cho đoạn chương trình sau
int a, b, c;
cin>>a>>b>>c;
float t=(a+b+c)/3;
if (a>t) cout<<a<<" ";
if (b>t) cout<<b<<" ";

if (c>t) cout<<c<<" ";
nếu lần lượt nhập vào 3, 8, 7 thì kết quả là
a) 6
b) 3
c) 8 7
d) 3 7
35/ Khai báo nào sau đây là sai ?
a) const N;
b) int a;
c) float b, c;
d) int x=5, y;
36/ Cho biết kết quả của biểu thức (10%3+4)/5
a) 0
b) 1
c) 2
d) 3
37/ Trình bày thuật toán có thể dùng
a) ngôn ngữ tự nhiên
b) lưu đồ
c) mã giả
d) tất cả đều đúng
38/ Kiểu dữ liệu nào sau đây thích hợp để lưu kết quả của biểu thức a*0.1 + b*0.4 + c*0.5
a) int
b) char
c) unsigned long
d) float
39/ Cho biết kết quả của đoạn chương trình sau đây nếu nhập vào 11
int s, n=0;
cin>>s;
while (s>0)

{ if(s%2==0 || s%5==0)
n++;
s ;
}
cout<<n;
a) 6
b) 7
c) 8
d) 9
40/ Với các khai báo sau
int n; // ngày công trong 1 tháng
float tl; // tiền lương
const long dg=50000; // đơn giá 1 ngày công
thì lệnh nào dưới đây để tính ra tiền lương theo qui định: nếu ngày công từ 26 ngày trở lại thì tính theo
đơn giá, ngược lại trên 26 ngày thì số ngày dư tính theo đơn giá nhân hai
a) tl=n*dg;
b) tl=((n<=26)?(n*dg):((n-26)*dg*2 + 26*dg));
c) tl=((n<=26)?(n*dg):(n*dg*2));
d) tl=n*dg*2;
—Hết—
Bộ môn duyệt Giáo viên ra đề
Phạm Thị Hồng
TRƯỜNG CĐ KỸ THUẬT CAO THẮNG ĐỀ THI HỌC KỲ 1
KHOA ĐIỆN TỬ - TIN HỌC MÔN: KỸ THUẬT LẬP TRÌNH CƠ BẢN
LỚP: CĐN QTM 11 AB
THỜI GIAN: 60 phút
(Không sử dụng tài liệu)
ĐỀ 2: (ĐÁP ÁN VÀ ĐỀ THI)
Câu A B C D Câu A B C D
1 x 21 x

2 x 22 x
3 x 23 x
4 x 24 x
5 x 25 x
6 x 26 x
7 x 27 x
8 x 28 x
9 x 29 x
10 x 30 x
11 x 31 x
12 x 32 x
13 x 33 x
14 x 34 x
15 x 35 x
16 x 36 x
17 x 37 x
18 x 38 x
19 x 39 x
20 x 40 x
1/ Kiểu nào có kích thước nhỏ nhất ?
a) int
b) char
c) long
d) float
2/ Khai báo nào sai ?
a) int a;
b) char kytu;
c) long x2;
d) double dien-tich;
3/ Cho biết dòng lệnh nào bị lỗi ?

#include<iostream.h>
#include<conio.h>
void main()
{ int n;
clrscr(); // 1
cout<<" Nhập 1 số : "; // 2
cin>>N; // 3
if (n >= 0) cout <<(n*n); // 4
}
a) dòng //1
b) dòng //2
c) dòng //3
d) dòng //4
4/ Để xuống dòng và đưa con trỏ về đầu dòng ?
a) cout<<endl;
b) cout<<”\n”;
c) câu a và câu b đúng
d) câu a và câu b sai
5/ Kết quả xuất ra của chương trình sau ?
#include<iostream.h>
void main()
{ int x=2, y=3;
x=x*y;
y ;
cout<<x-y;
}
a) 4
b) 5
c) 6
d) 7

6/ Với các khai báo sau
int x, y;
float n, m;
thì lệnh nào dưới đây là sai ?
a) n=m/2;
b) x=y/5;
c) y=x%3;
d) m=n%4;
7/ Cho biết kết quả xuất ra của đoạn chương trình
sau ?
int a=10, s=0;
while (s<20)
{ s=s+a;
a ;
}
cout<<s;
a) 10
b) 33
c) 19
d) 27
8/ Cho biết kết quả của đoạn chương trình sau ?
int a=5;
switch(a%2)
{ case 1: a=a+3;
case 2: a=a-6; break;
default: a=a/5;
}
cout<<a;
a) 8
b) 2

c) -1
d) 1
9/ Cho biết kết quả của đoạn chương trình sau ?
int a=16%3 - 1;
int b=a+1;
if (a!=0)
cout<<b;
else
if (b>=1)
cout<<a;
else
cout<<a+b;
a) 1
b) 0
c) 2
d) 3
10/ Cho biết kết quả của đoạn chương trình sau
đây nếu lần lượt nhập vào 1, 5, 4, -3
int a=0, d=0;
do
{
cin>>a;
d = d+a;
} while(a>0);
cout<<d;
a) 7
b) 10
c) 4
d) 5
11/ Cho biết dòng lệnh nào bị lỗi ?

#include<iostream.h>
void main()
{ int n, y=1;
cin>>n; // 1
for( j=1; j<=n; j++) // 2
y = y*n ; // 3
cout<<"Ket qua << y; // 4
}
a) dòng //1
b) dòng //2
c) dòng //3
d) dòng //4
12/ Cho biết kết quả của đoạn chương trình sau ?
int x=1, y=2;
if (x<=y)
x++;
else
y ;
y=y+x;
cout<<x-y;
a) -2
b) 1
c) 0
d) không thực hiện vì có lỗi
13/ Cho biết kết quả của đoạn chương trình sau
đây nếu nhập vào 312
int s, n=0, m;
cin>>s;
while (s>0)
{ m=s%10;

n=n+m;
s=s/10;
}
cout<<n;
a) 1
b) 3
c) 6
d) 2
14/ Cho biết kết quả của đoạn chương trình sau ?
float LT=7;
float TH=4;
if (LT>=5 && TH>=5)
cout<<"Đậu";
else if (LT>=5)
cout<<"Thi lại TH";
else if (TH>=5)
cout<<"Thi lại LT";
else
cout<<"Rớt";
a) Đậu
b) Rớt
c) Thi lại LT
d) Thi lại TH
15/ Lệnh break để dừng lại lệnh nào ?
a) for
b) while
c) do while
d) tất cả a, b, c
16/ Cho biết kết quả của đoạn chương trình sau ?
int n=5;

float t=1;
for (int i=2; i<n; i=i+2)
t = t + 1.0/i;
cout<<t;
a) 1
b) 1.75
c) 2.0833
d) tất cả đều sai
17/ Với các khai báo sau
int a=1;
float b=2;
const n=2012;
thì lệnh nào dưới đây là sai ?
a) n=a+2;
b) b=a-3;
c) a=a*n;
d) b=n/a;
18/ Cấu trúc nào không bắt buộc dùng dấu {}
a) while
b) do while
c) switch case
d) tất cả đều sai
19/ Cho đoạn chương trình sau
int n=3, m=6 ;
for (int a=1; a<=n; a++)
for (int b=1; b<=m; b++)
cout<<"Lap trinh C";
thì dòng chữ Lap trinh C sẽ in ra bao nhiêu lần ?
a) 6
b) 3

c) 18
d) 15
20/ Cho biết kết quả của đoạn chương trình sau
nếu lần lượt nhập 4, 7, 5 ?
cin>>a>>b>>c;
int x=(a>b) ? a:b;
int n=(c<x) ? x:c;
cout<<n;
a) 5
b) 7
c) 4
d) tất cả đều sai
21/ Cho biết kết quả của đoạn chương trình sau ?
int n=5;
switch(n/2)
{ case 1: n ;
case 2: n++; break;
default: n=n%5;
}
cout<<n;
a) 1
b) 2
c) 4
d) 6
22/ Cho biết kết quả của đoạn chương trình sau ?
cin>>a>>b;
if (a<b)
cout<<a;
else
cout<<b;

a) xuất ra số lớn hơn khi nhập hai số 7 và 3
b) xuất ra số nhỏ hơn khi nhập hai số 7 và 3
c) không xuất gì cả khi nhập hai số bằng nhau
d) không thực hiện vì có lỗi
23/ Cho biết kết quả của đoạn chương trình sau
int n=10;
for (int a=n; a>1; a=a-2)
cout<<a<<" ";
a) 10 8 6 4 2
b) 9 7 5 3 1
c) 2 3 4 5 6 7 8 9 10
d) 10 9 8 7 6 5 4 3 2
24/ Cho biết kết quả của đoạn chương trình sau
int s=5, n=0;
while (s>0)
{ n=n+s;
s ;
}
cout<<n;
a) 15
b) 35
c) vòng lặp không ngừng
d) tất cả đều sai
25/ Cho biết kết quả TT, nếu nhập vào 5000 và 8
cin>>DG>>SL;
TT=DG*SL;
if (SL>=5 || TT>100000)
TT=TT*90%;
cout<<TT;
a) xuất ra 40000

b) xuất ra 36000
c) không thực hiện vì có lỗi
d) tất cả đều sai
26/ Cho biết kết quả của đoạn chương trình sau
nếu lần lượt nhập vào 8, 1, 5, 4, 6, 0
int n=0, x;
do
{ cin>>x;
if(x%2!=0)
n=n+x;
} while(x>0);
cout<<n;
a) 24
b) 6
c) 3
d) 18
27/ Cho biết kết quả của biểu thức sau nếu n=10
((n>0 || n<10) && (n/2>=5))
a) 0
b) 1
c) TRUE
d) FALSE
28/ Lệnh nào sau đây để xuất giá trị của hai biến
kiểu số a và b ?
a) cin>>a,b;
b) cout<<”a,b”;
c) cin>>a>>b;
d) cout<<a<<b;
29/ Cho biết kết quả của chương trình sau
#include<iostream.h>

void main()
{ int s=0;
for(int j=1; j<=10; j++)
s=s+j;
cout<<s;
}
a) 25
b) 35
c) 45
d) 55
30/ Cho biết kết quả của đoạn chương trình sau ?
int a=1, b=2;
if (a>b)
if (a>1)
a++;
else
b++;
else
a=a+b;
cout<<a<<” “<<b;
a) 1 3
b) 2 2
c) 3 2
d) tất cả đều sai
31/ Kích thước của kiểu int là
a) 1 byte
b) 2 bytes
c) 4 bytes
d) 8 bytes
32/ Cho biết kết quả của chương trình sau

#include<iostream.h>
void main()
{ int s=9;
for(int n=1; s>1; s=s-2)
{ n=n*s;
if(n>100)
break;
}
cout<<s;
}
a) 0
b) 1
c) 5
d) 8
33/ Cho biết kết quả của đoạn chương trình sau
nếu lần lượt nhập vào 1, 5, 4, 6, 0
int m=0, x;
do
{ cin>>x;
if(m<x)
m=x;
} while(x>0);
cout<<m;
a) 6
b) 16
c) 4
d) 1
34/ Cho đoạn chương trình sau
int a, b, c;
cin>>a>>b>>c;

float t=(a+b+c)/3;
if (a<t) cout<<a<<" ";
if (b<t) cout<<b<<" ";
if (c<t) cout<<c<<" ";
nếu lần lượt nhập vào 4, 8, 6 thì kết quả là
a) 4
b) 6
c) 8 6
d) 4 6
35/ Kiểu dữ liệu nào sau đây thích hợp để lưu kết
quả của biểu thức a*0.1 + b*0.4 + c*0.5
a) int
b) char
c) float
d) long double
36/ Cho biết kết quả của đoạn chương trình sau
đây nếu nhập vào 11
int s, n=0;
cin>>s;
while (s>1)
{ if(s%2==0 || s%3==0)
n++;
s ;
}
cout<<n;
a) 6
b) 7
c) 8
d) 9
37/ Với các khai báo sau

int x; // số kwh điện trong 1 tháng
float td; // tiền điện
const long dg=1200; // đơn giá 1 kwh
thì lệnh nào dưới đây để tính ra tiền điện theo qui
định: nếu số kwh điện sử dụng từ 100 trở lại thì
tính theo đơn giá, ngược lại số kwh trên 100 thì
số kwh dư trên 100 tính theo đơn giá nhân 2
a) td=x*dg;
b) td=x*dg*2;
c) td=((x<=100) ? (x*dg):(x*dg*2));
d) td=x*dg + (x>100?((x-100)*dg):0);
38/ Khai báo nào sau đây là sai ?
a) int a;
b) float b, c;
c) int x=5, y;
d) const N;
39/ Cho biết kết quả của biểu thức (10/3+5)%4
a) 0
b) 1
c) 2
d) 3
40/ Trình bày thuật toán có thể dùng
a) ngôn ngữ tự nhiên
b) lưu đồ
c) mã giả
d) tất cả đều đúng
—Hết—
Bộ môn duyệt Giáo viên ra đề
Phạm Thị Hồng

×