You are on page 1of 5

-1- -2-

1) Sử dụng cách truyền nào trong hàm sẽ không làm thay đổi giá trị của biến trong chương trình chính: A) Quản lý các tài nguyên của máy tính
A) Cả a và b đều đúng. B) Quản lý thiết bị ngoại vi
B) Cả a và b đều sai. C) Kiểm tra phần cứng hệ thống khi khởi động
C) Truyền bằng giá trị địa chỉ của tham số. D) Điều khiển hiển thị dữ liệu ra màn hình
D) Truyền bằng trị.
10) Tự động hiệu chỉnh các kiểu dữ liệu số học khi tính toán trong C theo thứ tự:
2) Cho đoạn chương trình nhập vào từ bàn phím một số nguyên lớn hơn hoặc bằng 0, nếu nhập sai yêu cầu nhập lại A) long -> int -> float ->double -> long -> double
do { B) int -> long -> float -> double -> long -> double
scanf(“%d”,&n); C) int -> float -> long -> double -> long -> double
if (A) D) int -> double -> float ->long -> long -> double
printf(“Nhap sai, hay nhap lai”);
} 11) Khẳng định nào sau đây về mạng máy tính là đúng
while (B); A) Mạng máy tính là tập hợp các thiết bị tính toán được nối với nhau
A) A: n>=0B: n>=0 B) Các máy tính trong mạng được kết nối với nhau thông qua dây, sóng radio hoặc hồng ngoại
B) Chương trình không làm đúng công việc yêu cầu C) Các thiết bị kết nối với nhau trong mạng để chia sẻ thông tin
C) A: n<0 B: n>=0 D) Tất cả các khẳng định trên
D) A: n<0 B: n<0
12) Lệnh đúng để in 2 biến số thực x, y ra màn hình theo quy cách sau
3) Xâu định dạng nào dưới đây dùng để in ra một số nguyên ở hệ 8: Dòng 1 : In giá trị x, căn lề trái, chiếm 10 vị trí trong đó có 2 vị trí cho phần thập phân
A) “%ld” Dòng 2 : In giá trị y, căn lề phải, chiếm 6 vị trí trong đó có 3 vị trí cho phần thập phân
B) “%u” A) printf(“%-10.2f \n%6.3f”,x,y);
C) “%o” B) printf(“%10.2f ”,x) ; printf(“\n%-6.3f ”,y) ;
D) “%x” C) printf(“%-10.3f \n%6.4f”,x,y);
D) printf(“%10.2f ”,x) ; printf(“%-6.3f ”,y) ;
4) Các thành phần cơ bản của một hệ thống máy tính gồm có
A) Chip vi xử lý, bộ nhớ, thiết bị vào ra, nguồn 13) Thực hiện các câu lệnh sau một cách tuần tự
B) Bộ xử lý trung tâm, bộ nhớ chính, hệ thống vào ra, liên kết hệ thống int a;
C) Bộ xử lý trung tâm, bộ nhớ, thiết bị ngoại vi, liên kết dữ liệu for(a=1;a<=10, a%5!=0;a++)
D) Mainboard, ổ cứng, màn hình printf("%d ",a);
nội dung màn hình sẽ là:
5) Kết quả của biểu thức 10010110 XOR 01101001 là bao nhiêu: A) 1 2 3 4 5 6
A) 01101001 B) 1 2 3 4
B) 00000000 C) 1 2 3 4 5
C) 11111111 D) 1 2 3 4 6 7 8 9 10
D) 10010110
14) Thực hiện các câu lệnh sau một cách tuần tự
6) Cần nhập vào từ bàn phím n số nguyên với n cũng được nhập từ bàn phím. Khai báo nào đúng nhất cho mảng A để int a;
lưu trữ n số nguyên này for(a=1; a<=10; a++)
A) int A[int n]; {
B) int A[100]; printf("%d ",a);
C) int A[n]; if(a%3!=0) a= a+2;
D) int A[]={1,2,3}; }
nội dung màn hình sẽ là:
7) Cho biết giá trị của số 63 khi biểu diễn sang số BCD (Binary Coded Decimal) có giá trị bằng bao nhiêu: A) 1 3 5 7 9
A) 0011 0110 B) 1 4 8
B) 0001 1100 C) 1 4 7 10
C) 0110 0011 D) 1 4 7
D) 0101 1010
15) Sau khi thực hiện các lệnh sau một cách tuần tự
8) Kiểu dữ liệu int( kiểu số nguyên) có thể xử lí số nguyên nằm trong khoảng nào: int i;
A) 0…65535 char str[] = {"helloworld!"};
B) -32768…32767 char words[10];
C) 0…255 for(i=0;i<strlen(str)/2;i++)
D) -128…127 words[i]=str[i+1];
words[i-1]='\0';
9) Chọn phát biểu đúng về vai trò của hệ điều hành printf("%s\n",words);
Nội dung màn hình sẽ là:
-3- -4-

A) ello A) 1
B) ellow B) -3
C) hello C) -1
D) hell D) Kết quả khác nhau

16) Hãy cho biết sau khi chạy xong đoạn chương trình sau kết quả được đưa ra màn hình là như thế nào: 23) Cho biết kết quả của đoạn chương trình
void main(){ float f = 1.234;
char *s; printf (“f = %3.2f”,f);
s = “Xin chao cac ban”; A) f = %3.2f
s = strstr(s,”cac ban”); B) f = 3.2
printf(“%s”,s); C) f=1.234
} D) f = 1,23
A) Xin chao cac ban
24) Vì sao dung lượng của bộ nhớ ngoài có thể lớn hơn bộ nhớ trong rất nhiều:
B) chao cac ban A) Vì bộ nhớ trong chịu sự điều khiển trực tiếp của CPU
C) Xin chao B) Vì bộ nhớ ngoài không bị giới hạn bởi không gian địa chỉ của CPU
D) cac ban C) Vì công nghệ chế tạo bộ nhớ ngoài rẻ hơn bộ nhớ trong rất nhiều
D) Vì hệ thống vào ra cho phép ghép nối với bộ nhớ có dung lượng lớn
17) Trong ngôn ngữ lập trình C, cho biết kết quả hiển thị trên màn hình sau khi đoạn chương trình sau được thực hiện
int i = 0; 25) Chỉ ra lựa chọn tương ứng với các thành phần thuộc bộ nhớ ngoài
while (i<10) { A) Đĩa cứng, CD-ROM, ROM
i++; B) ROM, RAM
if (i%2 == 0) break; C) Đĩa cứng, đĩa mềm, bộ nhớ cache
printf(“%d “,i); D) Đĩa cứng, đĩa mềm
}
# 02468 26) Một máy tính sử dụng bộ vi xử lý có độ rộng của đường bus địa chỉ (Address Bus) là 32 bit. Hỏi với máy tính này,
A) 1 3 5 7 9 dung lượng tối đa của bộ nhớ chính là bao nhiêu:
B) 1 A) 4 GB
C) 0 1 2 3 4 5 6 7 8 9 B) 256 MB
D) C) 1 GB
18) Giá trị số nhị phân 110101010 khi chuyển sang hệ thập lục phân (hệ cơ số đếm 16) sẽ bằng D) Không giới hạn
A) D5A
B) D50 27) Hệ thống các chương trình đảm nhận chức năng làm môi trường trung gian giữa người sử dụng và phần cứng của
C) 1AA máy tính được gọi là:
D) FAA A) Phần cứng
B) Các loại trình dịch trung gian
19) Cách biểu diễn số âm trong máy tính là C) Tất cả đều đúng
A) Sử dụng mã bù 2 D) Hệ điều hành
B) Thêm dấu - vào trước giá trị nhị phân dương tương ứng
C) Đảo các bit của giá trị nhị phân dương tương ứng 28) Chức năng chính của tập các thanh ghi là:
D) Sử dụng mã bù 10 A) Chứa các thông tin phục vụ cho hoạt động của CPU
B) Điều khiển nhận lệnh
20) Trong ngôn ngữ lập trình C, định danh nào đúng quy tắc: C) Không có câu trả lời nào ở trên là đúng
A) 1_acg D) Vận chuyển thông tin giữa các thành phần trong máy tính
B) ABC1
C) float 29) Cho biết kết quả trên màn hình của lệnh sau (Với □ là ký tự space):
D) Chao; printf("%5.2f ", 3.454) ;
A) □□3.45
21) Tính kết quả các phép toán sau đây. Biết toán hạng đều là số nguyên không dấu 8 bit, kết quả sau khi tính toán B) □3.45
được chuyển thành số thập phân: A = 7 AND 12 C) 3.454
A) A = 19 D) □3.5
B) A = 15
C) A = 3 30) Dòng lệnh khai báo nào sau đây là đúng với cú pháp khai báo nguyên mẫu hàm trong C của hàm tìm giá trị lớn
D) A = 4 nhất trong 3 số a,b,c
A) function max(int a, int b, int c);
22) Kết quả in ra màn hình của biểu thức sau là gì:-3+4%5/2. B) max(int a, int b, int c);
-5- -6-

C) max() B) Không xác định


D) int max(int a, int b, int c); C) 3
D) 1
31) Độ ưu tiên đối với các toán tử logic là:
A) OR, NOT, AND 37) Trong các khai báo sau, khai báo nào không có lỗi(chú ý trước define có dấu thăng)
B) NOT, AND, OR A) define MAX 10
C) AND, NOT, OR B) define MAX=10
D) NOT, OR, AND C) define MAX 10;
D) const int MAX 10;
32) Hệ điều hành được xếp loại là:
A) Phần cứng 38) Cho biết kết quả của đoạn chương trình sau giá trị của p là:
B) Phần mềm hệ thống int p=4;
C) Thiết bị ngoại vi p=10+ ++p;
D) Phần mềm ứng dụng A) 16
B) 15
33) Trong ngôn ngữ lập trình C, cho biết sau khi đoạn chương trình sau đây được thực hiện thì phần tử A[9] của C) 14
mảng mang giá trị bao nhiêu: D) kết quả khác
int A[10] = {-1, 5, -2, 7, 3, -10, 9, 0, -1, 7};
int i,j,k; 39) Hãy cho biết kết quả sau khi chạy đoạn chương trình sau
for(i=1; i<10; i++) void main(){
for(j=9; j>=i; j--) char *s1, *s2;
if (A[j] < A[j-1]) { s1 = “Xin chao ”;
k = A[j]; s2 = “cac ban”;
A[j] = A[j-1]; s1 = strcat(s1,s2);
A[j-1] = k; printf(“%s”,s1);
} }
A) A[9] = -10 A) chao cac ban
B) A[9] = -1 B) Xin chao
C) A[9] = 7 C) cac ban
D) A[9] = 9 D) Xin chao cac ban

34) Tìm kết quả của chương trình sau: 40) Cho biết kết quả hiện trên màn hình của đoạn chương trình sau
main(){ int i=1;
int n; while(1){
for (n=18; n>0; n/=2) printf(“%d”,i);
printf(“%3d”,n); i++;
}; if(i%3==0) continue;
A) Không câu nào đúng printf(“/”);
B) “ 18 9 4 2 1” if(i%5==0) break;
C) “ 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1” }
D) “ 18 9 4 2 1 0” A) 1/23/4/
B) 1/23/4
35) Kết quả của chương trình sau là gì: C) 1/2/3/4
void main() D) Chương trình có lỗi
{ int a=40, b=4;
while(a!=b) 41) Các thao tác xử lý của máy tính gồm 1. Nhận lệnh tiếp theo, 2. Nhận dữ liệu nếu cần, 3. Giải mã lệnh 4. Thực
if (a>b) a=a-b; hiện lệnh. Trình tự thực hiện hợp lý là:
else b=b-a; A) 1,3,2,4
printf(“%d”,a); B) 4,2,1,3
}; C) 3,2,4,1
A) 2 D) 1,2,3,4
B) kết quả khác
C) 4 42) Một số nguyên có dấu biểu diễn dưới dạng số nhị phân 8 bit là 01010101. Giá trị của số đó là:
D) 16 A) +43
B) +85
36) Giả sử có câu lệnh ch[]= "A". Kích cỡ của ch là bao nhiêu bytes : C) -85
A) 2 D) -43
-7- -8-

49) Kết quả in ra màn hình của chương trinh sau là gì:
43) Đoạn chương trình sau sẽ in những gì ra màn hình void main()
int i=0; { int i; for (i=2; i<=4; i+=2) printf(“%3d”,i); };
char c = 'c'; A) “ 2 3 4”
for(i=0; i<6; i=i+2){ B) “ 2 4”
c=c+i; C) “ 1 2 3 4”
printf ("%c ", c); D) Chương trình không chạy được
}
A) e i o 50) Kết quả in ra màn hình của chương trình sau :
B) Không có đáp án nào đúng void main()
C) c e i o { int ch=’A’; printf(“%d”,ch); }
D) c e i A) 65
B) a
44) Cho các số nguyên không dấu A = FA(16), B = 153(8), C = 200(10) C) A
Hãy sắp xếp A, B, C theo thứ tự tăng dần D) Kết quả khác
A) A, B, C
B) A, C, B 51) Hãy cho biết sau khi thực hiện đoạn chương trình sau kết quả thu được là như thế nào:
C) B, C, A void main(){
D) B, A, C int i;
char temp;
45) Trong ngôn ngữ lập trình C, sau khi đoạn chương trình sau được thực hiện thì biến C mang giá trị bao nhiêu: char s[20] = “Xin chao ban than”;
int A = 10, B = 20, C; for(i=0;i<8;i++){
switch (A>B) { temp =s[i];
case 0 : C = A ; break; s[i] = s[i+9];
case 1 : C = B ; break; s[i+9] = temp;
} }
A) C=20 printf(“%s”,s);
B) C =1 }
C) C =10 A) than Xin chao ban
D) C = 0 B) ban than Xin chao
C) chao ban than Xin
46) Trong các thiết bị sau, thiết bị nào là thiết bị ra: D) Xin chao ban than
A) Bàn phím
B) Máy chiếu 52) Kết quả chương trình sau là gì:
C) Máy quét void hoanvi(int px, int py){
D) Con chuột int pz;
pz=px; px=py; py=pz;
47) Với khai báo biến M sau };
int M[4][5] = { 10, 2, -3, 17, 82, 9, 0, 5, 8, -7, 32, 20, 1, 0, 14, 0, 0, 8, 7, 6 }; void main(){
int a=15, b=21; hoanvi(a,b);
giá trị của M[1][2] là
printf(“%d %d”,a,b);
A) 8
};
B) 2
A) “15 21”
C) 5
B) Báo lỗi khi thực hiện chương trình
D) 0
C) Kết quả khác
D) “21 15”
48) Sau khi thực hiện các câu lệnh sau một cách tuần tự
int a=5,c=2;
53) Phần khai báo biến sau trong C chiếm bao nhiêu byte trong bộ nhớ
float b=11;
float M1[1..20];
int d=3;
char M2[20];
d= (int)b++/c%5;
A) 103
Giá trị của biến d sẽ là :
B) 102
A) 6
C) 100
B) 0
D) 101
C) 5
D) 1
54) Kết quả của biểu thức 2*3+4/2 > 3 && 3<5 || 10<9 sẽ bằng
A) 0
-9- -10-

B) Không có kết quả nào ở trên int a,b,c;


C) Biểu thức viết sai, không tính được kết quả a=5;
D) 1 b=a++;
c= a++ + ++b -1;
55) Cho hàm kiểm tra xem một số >2 có phải là số nguyên tố không. Hàm trả về 1 nếu là số nguyên tố, trả về 0 nếu A) a=7, b=6, c=11
không phải số nguyên tố . Giá trị của M, N là bao nhiêu: (biết số nguyên tố là số chỉ chia hết cho 1 và chính nó) B) a=7, b=6, c=10
int SONGUYENTO (int n) C) a=7, b=7, c=11
{ int i ; int k = M ; D) a=7, b=7, c=10
for(i=2 ; i<n ; i++)
if ((n% i)==0) k= N; return k; tinyRay quiz software - 2016 Spring version - ©TINYRAY 2015 - www.tinyray.com - support@tinyray.com
}
A) Chương trình không thực hiện đúng yêu cầu
B) M=0 N=1
C) M=1 N=0
D) M=1 N=1

56) Hãy cho biết sau khi chạy xong đoạn chương trình sau kết quả ta thu được mảng a như thế nào:
void main(){
int a[10];
int temp;
int i;
for(i=0;i<10;i++){
printf(“Nhap gia tri cho so a[%d]”,i);
scanf(“%d”,&a[i]);
}
temp=a[0];
for(i=1;i<10;i++)
if(a[i] > temp) temp =a[i];
a[0]=temp;
}
A) Mảng a sắp xếp theo thứ tự giảm dần
B) Phần tử đầu tiên của mảng a được thay bằng phần tử lớn nhất trong mảng
C) Mảng a sắp xếp theo thứ tự tăng dần
D) Phần tử đầu tiên của mảng a được thay bằng phần tử nhỏ nhất trong mảng

57) Đâu là cách biểu diễn đúng khi khai báo hằng(trước define có dấu thăng)
A) const int MAX_SINH_VIEN =50
B) define int MAX_SINH_VIEN=50

C) const MAX_SINH_VIEN = 50;


D) define MAX_SINH_VIEN 50

58) Kết quả in ra màn hình của chương trình sau:


void main()
{ int i=5, j=6; i= i- --j; printf(“%d”,i); };
A) 0
B) 5
C) 1
D) 6

59) Cho a=3, b=2 và c là 3 biến nguyên. Biểu thức nào sau viết sai cú pháp trong ngôn ngữ lập trình C :
A) ( c= a<<b )
B) ( c=a & b )
C) ( c= a/b )
D) ( c=a && b )

60) Cho biết giá trị của các biến a,b,c sau khi thực hiện đoạn chương trình sau:

You might also like