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

đề thi trắc nghiện lập trình c có đáp á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 (1.75 MB, 33 trang )

Trường Đại học Công nghệ Thông tin – ĐHQG HCM

ĐỀ THI MÔN: TIN HỌC ĐẠI CƯƠNG (NGÔN NGỮ C) Thời gian làm
bài: 75 phút

Đề 1

(Đề thi bao gồm 4 trang - Học viên không được phép xem tài liệu)
Chữ ký CBCT


Họ và tên:
........................................................

Điểm số: …………….


MSSV:
.............................................................  Lớp:
.................................................................

Điễm chữ: …………..

1/33


Trường Đại học Công nghệ Thông tin – ĐHQG HCM

d. Kết thúc chương trình j là 2

2/33




Trường Đại học Công nghệ Thông tin – ĐHQG HCM
Câu 8. Cho biết kết quả đoạn chương trình sau:

3/33


Trường Đại học Công nghệ Thông tin – ĐHQG HCM
int a=2,b=0; switch (a=6)
{
case 2:b=1;
}
} printf("%d",b);
a. 1
b. 3
c. 2
d. Không xác định

case 5:b=2;

default:b=3;

Câu 9.

Kết quả
a.
b.
c.
d.


int k=0, s=0; int n=4; do
{
n++;
a. 3
if (n%2 == 0)
c. 8
else
s+=n;
} while (k<3); printf (“%d”,s);
nào sau đây là đúng:
3
4
8
21

b. 4

k++;

Câu 10.
void main()
{
int a[3]={1, 2, 3, 4};
for (int i=0; i<4; i++)
a[i]=a[i+1];
for (i=0; i<4; i++)
printf(“%d”,a[i]);
}
Kết quả nào sau đây là đúng:

a. 1 2 3 4
b. 2 3 4 5
c. 2 3 4 0
d. Các câu trên đều sai

Câu 11.
void main()
{
char s[5]=”ABCDE”;
for (int i=0; is[i]=s[i+1];
puts(s);
}
Kết quả nào sau đây là đúng:
a. ABCDE
b. BDCE
c. Các câu trên đều sai
d. Kết quả không xác định
a.
b.
c.
d.

Câu 17. Khi có khai báo sau:
int a[2][3]={{1,2,3},{4,5,6}};
int *p; p=a[1];
Cho biết giá trị của *(p+1):

4/33


1
2
5
6


Trường Đại học Công nghệ Thông tin – ĐHQG HCM
Câu 18. Cho biết kết quả của đoạn chương trình sau:

5/33


Trường Đại học Công nghệ Thông tin – ĐHQG HCM
void main( )
{
char ch1, ch2;
ch1= „x‟; ch2= „y‟;
if(ch1printf(“%c,%c”,ch1,ch2);
}
a. x,y
b. x,z
c. z,z
d. x,x

Câu 19. Cho biết kết quả đoạn chương trình sau:
int time = 1;
do{
printf("%d ", time);
time++;

}while(time <= 5);
a. 1 2 3 4
b. Không in gì ra màn hình cả
c. 1 2 3 4 5
d. 1 2 3 4 5 6

Câu 20. Cho biết đoạn chương trình sau đây xuất ra màn hình những gì?
int time = 1;
do{
printf("%d ", time);
}while(time >= 5);
a. 0 1 2 3 4
b. Chương trình báo lỗi
c. 0 1 2 3 4 5
d. 1

time++;

Câu 21. Cho biết kết quả đoạn chương trình sau:
int *x,y=65; *x=y; printf("%d %d",*x,y);
a. 65 65
b. 65 66
c. a
a
d. Chương trình báo lỗi
return a-b; d. Giá trị rác

6/33



Trường Đại học Công nghệ Thông tin – ĐHQG HCM
Trường ĐH Công nghệ Thông tiin – ĐHQG HCM
Phần 2: PHẦN TỰ LUẬN: (Lưu ý: chương trình chỉ viết trên 1 trang giấy là đủ nên sinh viên cần viết trên
giấy nháp trước khi viết vào bài làm) (3 điểm)
Đề thi: Viết chương trình quản lý một mảng số nguyên với các hàm sau: (sinh viết phải viết các yêu cầu sau
bằng hàm và phải viết hàm main mới tính điểm)
Nhập một mảng số nguyên với n phần tử. (1 điểm)
Tính tổng các phần tử là số nguyên tố. (2 điểm)

7/33


Trường Đại học Công nghệ Thông tin – ĐHQG HCM

ĐỀ THI MÔN: TIN HỌC ĐẠI CƯƠNG (NGÔN NGỮ C)

Đề 2
Thời gian làm bài: 75 phút
(Đề thi bao gồm 4 trang - Học viên không được phép xem tài liệu)
Chữ ký CBCT


Họ và tên:
........................................................

Điểm số: …………….


MSSV:
.............................................................  Lớp:

.................................................................

Điễm chữ: …………..

8/33


Trường Đại học Công nghệ Thông tin – ĐHQG HCM

a.
b.
c.
d.

scanf("%d", &sum);
scanf("%f", &sum);
scanf(sum);
scanf("%d", &sum);

Câu 6.
Câu 3. Câu lệnh nào xuất giá trị biến số thực dump có

int i=1;
while (i%2 < 4)

độ chính xác 2
a.

printf("%f", dump);


i+=2;

9/33


Trường Đại học Công nghệ Thông tin – ĐHQG HCM
b.
c.

printf("%2f", dump);
printf("%.2f", dump);

printf (“%d”,i);
Kết quả nào sau đây là đúng:

d.

printf("%2f", dump);

a. 5
b. 7
c. 9
d. Không có câu nào đúng

Câu 4.
int a = 1;

int c = 1;
Câu
+ (b = a + (a + b

== c));
Giá trị của d là:
a. 1

int d;

7.

int b = 2;
int i; d = (a % 2) + (b > c) + (c > a)

int j;
for (i=0, j=0; i<3; i++,j++)
printf(“%3d”,j); j++;

Kết quả nào sau đây là đúng:

b.

2

a. Báo lỗi khi biên dịch

c.

3

b. Kết thúc chương trình j là 0

d.


4

c. Kết thúc chương trình j là 1

Câu 8.
void main()
{
int a[4]={1, 2, 3, 4};
a[i]=a[i+1];
for (i=0; i<4; i++)

for (int i=0; i<4; i++)

10/33


Trường Đại học Công nghệ Thông tin – ĐHQG HCM
printf("%d ",a[i]);

a. 3

11/33


Trường Đại học Công nghệ Thông tin – ĐHQG HCM
}
Kết quả nào sau đây là đúng:
b. 2 3 4 rác
c. 2 3 4

d. Các câu trên đều sai

b. 4
c. 7 a. 1 2 3 4

d. 8

Câu 9. Cho biết kết quả đoạn chương trình sau:
int a=2,b=0;
switch (a=6)
{
case 2:b=1;
case 5:b=2;
default:b=3;
} printf("%d",b);
a. 1
b. 2
c. 3
d. Không xác định

}

Câu 10.
int k=1, s=0; int n=4; do
{
n++;
if (n%2 == 0)
else
s+=n;
} while (k<3); printf (“%d”,s);

Kết quả nào sau đây là đúng:
a. 3
b. 4
c. 12
d. 21

k++;

Câu 11.
void main()
{
char s[6]=”ABCDE”;
for (int i=0; is[i]=s[i+1];
puts(s);
}
Kết quả nào sau đây là đúng:
a. ABCDE
b. BDCE
c. Các câu trên đều sai
d. Kết quả không xác định

Câu 17. Khi có khai báo sau:
int a[2][3]={{1,2,3},{4,5,6}};
int *p;
p=&a[0][2];
Cho biết giá trị của *p:
a. 1
b. 2
c. 3

d. 4

Câu 18. Cho biết kết quả đoạn chương trình
sau:
int time = 1;
do{
printf("%d ", time);
time++;
}while(time < 5);

12/33


Trường Đại học Công nghệ Thông tin – ĐHQG HCM
a.
b.
c.
d.

1 2 3
Không in
1 2 3
1 2 3

4
gì ra màn hình cả
4 5
4 5 6

d.


7

Câu 23. Cho biết kết quả đoạn chương trình sau:
int sum(int a, int b) {
return a-b; } void
main() {
int
a=3, b=4,c;
c=sum(b,a);
printf("%d",c);
}

Câu 19. Cho biết đoạn chương trình sau đây xuất ra
màn hình những gì?
int time = 1;
do{
printf("%d ", time);
time++;
}while(time != 5);
a. 0 1 2 3 4
b. Chương trình báo lỗi
c. 1 2 3 4
d. 1

c.
a.
d.
b.


Chương trình báo lỗi
-1
Giá trị rác
1

Câu 24. Cho biết kết quả đoạn chương trình sau:

Câu 20. Cho biết kết quả của đoạn chương trình sau:
void main( )
{
char ch1, ch2;
ch1= „y‟; ch2= „x‟;
if(ch1ch2++;
else
ch1=ch2;
printf(“%c,%c”,ch1,ch2);
}
a. x,y
b. x,z
c. z,z
d. x,x

void setvalue()
{
int a=4,b=6;
printf("%d %d ",a,b);
}
a,b;
intint

main()
{ a=7;b=3;
setvalue(); printf("%d
%d ",a,b); return 0;
}
a. 4 6 3 7
b. 4 6 7 3
c. 4 6 3 6
d. Không có câu nào đúng cả

Câu 25. Cho biết kết quả đoạn chương trình sau:
int T=0 ; int a=3;
for(int i=0;iT=T+i; printf("%d
",T);
a. 5
b. 3
c. 4
d. 2

Câu 21. Cho biết kết quả đoạn chương trình sau:
int *x,y=65; x=&y;
printf("%d
%d",*x,y);
a. 65 65
b. 65 66
c. a
a
d. Chương trình báo lỗi


Câu 22. Cho biết kết quả đoạn chương trình sau:
int i; int m[5],s;
for(i=0;i<=5;i++)
m[i]=i+1; s=m[0];
for(i=0;i<=5;i++)
s=
s+ *(m);
printf("%d",s);
a. 1
b. 15
c. Chương trình báo lỗi

13/33


Trường Đại học Công nghệ thông tin – ĐHQG HCM
Trường ĐH Công nghệ Thông tin – ĐHQG HCM
Phần 2: PHẦN TỰ LUẬN: (Lưu ý: chương trình chỉ viết trên 1 trang giấy là đủ nên sinh viên cần viết trên
giấy nháp trước khi viết vào bài làm) (3 điểm)
Đề thi: Viết chương trình quản lý danh sách sinh viên có cấu trúc gồm: Họ tên và ĐTB: (sinh viết phải viết
các yêu cầu sau bằng hàm và phải viết hàm main mới tính điểm)
Nhập một danh sách sinh viên gồm n sinh viên . (1.5 điểm)
Cho biết tổng số sinh viên có ĐTB dưới 5. (1.5 điểm)

14/33


Trường Đại học Công nghệ thông tin – ĐHQG HCM

ĐỀ THI MÔN: TIN HỌC ĐẠI CƯƠNG (NGÔN NGỮ C) Thời gian làm

bài: 75 phút

Đề 3

(Đề thi bao gồm 4 trang - Học viên không được phép xem tài liệu)
Chữ ký CBCT


Họ và tên:
........................................................

Điểm số: …………….


MSSV:
.............................................................  Lớp:
.................................................................

Điễm chữ: …………..

15/33


Trường Đại học Công nghệ thông tin – ĐHQG HCM

Câu 8.
void main()
{
int a[4]={1, 2, 3, 4};
for (int i=0; i<4; i++)


16/33


Trường Đại học Công nghệ thông tin – ĐHQG HCM
a[i]=a[i+1];
for (i=0; i<4; i++)
printf("%d ",a[i]);

}

}
Kết quả nào sau đây là đúng:
a. 2 3 4
b. 2 3 4 rác
c. 1 2 3 4
d. Các câu trên đều sai

Câu 9.
int k=2, s=0; int
{
n++;
(n%2 == 0)
k++;
d. 8

Kết quả
a.
b.
c.

d.

n=4; do
a. 3
b. 4
c. 7

if
else

s+=n;
} while (k<3); printf (“%d”,s);
nào sau đây là đúng:
5
12
21
11

Câu 10. Cho biết kết quả đoạn
chương trình sau:
int a=2,b=0; switch (a=6) {
2:b=1;
case 5:b=2;
default:b=3;
} printf("%d",b);
a. 1
b. 2
c. 3
d. Không xác định


case

Câu 11.
void main()
{
char s[5]=”ABCDE”;
for (int i=0; is[i]=s[i+1];
puts(s);
}
Kết quả nào sau đây là đúng:
a. ABCDE
b. BDCE
c. Các câu trên đều sai
d. Kết quả không xác định

17/33


Trường Đại học Công nghệ thông tin – ĐHQG HCM
Câu 17. Cho biết kết quả đoạn chương trình sau:

Câu 22.

Cho biết kết quả đoạn chương trình sau:

for(int i=0;i
Câu 23.


c.
d.

Cho biết kết quả đoạn chương trình sau:

Chương trình báo lỗi
Các câu đều sai

Câu 24.

Cho biết kết quả đoạn chương trình sau:
int sum(int a, int b)
{

}
void main()
{
int a=3, b=4,c;
c=sum(b,a);
printf("%d",c);
}
a. -1
b. 1
c. Chương trình báo lỗi

Câu 25.

Cho biết kết quả đoạn chương trình sau:

printf("%d %d ",a,b);


printf("%d %d ",a,b);

d.

18/33

Không có câu nào đúng cả


Trường Đại học Công nghệ thông tin – ĐHQG HCM
int time = 10;
do{
printf("%d ", time);
}while(time == 5);
a. 1 2 3 4
b. Không in gì ra màn hình cả
c. 1 2 3 4 5
d. Tất cả các câu đều sai

b.
c.
d.

time--;

i
n
t
i

;

Câu 18. Khi có khai báo sau:
int a[2][3]={{1,2,3},{4,5,6}};
int *p; p=&a[0][2];
Cho biết giá trị của *(p+1:
a. 1
b. 2
c. 3
d. 4

i
n
t

Câu 19. Cho biết kết quả của đoạn chương trình sau:
void main( )
{
char ch1, ch2;
ch1= „y‟; ch2= „x‟;
if(ch1printf(“%c,%c”,ch1,ch2);
}
a. x,y
b. x,z
c. z,z
d. x,x
Câu 20. Cho biết đoạn chương trình sau đây xuất ra màn hình những gì?
int time = 1;
do{

printf("%d ", time);
time++;
}while(time != 5);
a. 0 1 2 3 4
b. Chương trình báo lỗi
c. 1 2 3 4
d. 1
Câu 21. Cho biết kết quả đoạn chương trình sau: int *x,y=65; x=y;
printf("%d %d",*x,y);
a. 65 65
b. 65 66
c. a
a
d. Chương trình báo lỗi
int T=0 ; int a=3;

a.

T=T+i;
5

printf("%d ",T);

19/33

m
[
5
]
,

s
;
f
o
r
(
i
=
0
;
i
<
=
5
;
i
+
+
)

m
[
i
]
=
i
+
1

3

4
2


Trường Đại học Công nghệ thông tin – ĐHQG HCM
; s=m[1]; for(i=0;i<=5;i++)
printf("%d",s);
a. 7
b. 15

s= s+ *(m);

return a-b; d. Giá trị rác

void setvalue() {

int a=4,b=6;

} int main() { int a,b;
a=3;b=7; setvalue();
return 0;
}
a.
b.
c.

4 6 3 7
4 6 7 3
4 6 3 6


20/33


Trường Đại học Công nghệ Thông tin – ĐHQG HCM

Trường ĐH Công nghệ Thông tin – ĐHQG HCM
Phần 2: PHẦN TỰ LUẬN: (Lưu ý: chương trình chỉ viết trên 1 trang giấy là đủ nên sinh viên cần viết trên
giấy nháp trước khi viết vào bài làm) (3 điểm)
Đề thi: Viết chương trình quản lý ma trận: (sinh viết phải viết các yêu cầu sau bằng hàm và phải viết hàm
main mới tính điểm)
Nhập một ma trận vuông cấp n . (1.5 điểm)
Cho biết tổng các phân tử là số nguyên

21/33


Trường Đại học Công nghệ Thông tin – ĐHQG HCM

ĐỀ THI MÔN: TIN HỌC ĐẠI CƯƠNG (NGÔN NGỮ C)

Đề 4
Thời gian làm bài: 75 phút
(Đề thi bao gồm 4 trang - Học viên không được phép xem tài liệu)
Chữ ký CBCT


Họ và tên:
......................................................

Điểm số: …………….



MSSV:
..........................................................  Lớp:
..............................................................

Điễm chữ: …………..

22/33


Trường Đại học Công nghệ Thông tin – ĐHQG HCM

a.
b.

4
3

printf (“%d”,i); c. 2
Kết quả nào sau đây là đúng:
a.

5

b.

7

c.


9
độ chính xác 2
Không có câu nào đúng

d.

d. 5

Câu 5. Câu lệnh nào xuất giá trị biến số thực dump có
a. printf("%f", dump);
b. printf("%2f", dump);
c.

printf("%.2d", dump);
d. Không có câu nào đúng

Câu 3.

23/33


Trường Đại học Công nghệ Thông tin – ĐHQG HCM
int a = 1;

int b = 2;

int c = 1;
int i;


Câu 6.

int d;
int j;
d = (c > a) + (b = a + (a + b == c)); for (i=0, j=0; i<3; i++,j--)
Giá trị của d là:
printf(“%3d”,j); j++; a. 1
Kết quả nào sau đây là đúng:
b.
c.

2

a. Báo lỗi khi biên dịch

3
b. Không có câu nào đúng

d.

4

c. Kết thúc chương trình j là 1
d. Kết thúc chương trình j là 2

24/33


Trường Đại học Công nghệ Thông tin – ĐHQG HCM
Câu 7. Câu lệnh nào đúng khi định nghĩa một biến số


25/33


×