You are on page 1of 10

Họ và tên: Lớp: Số hiệu SV: Phách:

ĐỀ THI TIN ĐẠI CƯƠNG


Thời gian: 70 phút ĐỀ 1 Phách:
Không sử dụng tài liệu

ĐỀ BÀI

Trang 1/10
Câu 1. Tính kết quả các phép toán sau đây. a. 1100.1011
Biết toán hạng đều là số nguyên b. 1100.01011
không dấu 8 bit, kết quả sau khi c. 1010.1011
tính toán được chuyển thành số d. 1010.01011
thập phân: Câu 7. Điền dòng lệnh thích hợp vào dấu
A = 7 AND 12 (…) trong đoạn chương trình sau
a. A = 3 để thực hiện thao tác kiểm tra xem
b. A = 19 người dùng đã nhập đúng giá trị là
c. A = 15 số nguyên dương nhỏ hơn 10 hay
d. A = 4 chưa, nếu chưa yêu cầu nhập cho
Câu 2. Kết quả của biểu thức 2*3+4/2 > 3 đến khi nào đúng thì thôi.
&& 3<5 || 10<9 sẽ bằng void main(){
a. 0 int n;
b. 1 do{
c. Không có kết quả nào ở trên
printf(“Nhap vao mot so
d. Biểu thức viết sai, không tính
nguyen duong nho hon 10”);
được kết quả
scanf(“%d”,&n);
Câu 3. 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; }
float b=11;
a. while (n<10)
int d=3; b. while (n<10 & n>=0)
d= (int)b++/c%5; c. while (n<=0 || n>=10)
Giá trị của biến d sẽ là : d. while (n>=0 || n<=10)
a. 0 Câu 8. Giá trị số nhị phân 110101010 khi
b. 1 chuyển sang hê ̣ thâ ̣p lục phân (hê ̣
c. 6 cơ số đếm 16) sẽ bằng
d. 5 a. 1AA
Câu 4. Cho các số nguyên không dấu A = b. D50
FA(16), B = 153(8), C = 200(10) c. FAA
Hãy sắp xếp A, B, C theo thứ tự d. D5A
tăng dần Câu 9. Cách biểu diễn số âm trong máy
a. A, B, C tính là
b. B, C, A a. Thêm dấu – vào trước giá trị nhị
c. A, C, B phân dương tương ứng
d. B, A, C b. Đảo các bit của giá trị nhị phân
Câu 5. Trong các mạng LAN, WAN, dương tương ứng
MAN, GAN mạng nào có quy mô c. Sử dụng mã bù 2
lớn nhất d. Sử dụng mã bù 10
a. LAN (Local Area Network) Câu 10. Hãy cho biết sau đoạn lệnh sau
b. WAN(Wide Area Network) biến a nhận giá trị bằng bao nhiêu?
c. GAN(Global Area Network) int a,b,c;
d. MAN(Metropolitan Area b=10;c=20;
Network) a=b>c?100:200;
Câu 6. Giá trị của số thập phân 12.6875 a. a = 0
trong hệ nhị phân là:
Trang 1/10
b. a = -1 d. Phần tử đầu tiên của mảng a
c. a = 100 được thay bằng phần tử lớn nhất
d. a = 200 trong mảng
Câu 11. Hãy cho biết sau đoạn chương Câu 13. Hãy cho biết sau khi chạy xong
trình sau kết quả in ra màn hình đoạn chương trình sau kết quả
như thế nào? được đưa ra màn hình là như thế
void main(){ nào?
int a =1; void main(){
int n=0; char *s;
while (n<10){ s = “Xin chao cac ban”;
a++; s = strstr(s,”cac ban”);
} printf(“%s”,s);
printf(“a = %d”,a); }
}
a. Xin chao
a. a = 1
b. cac ban
b. a = 10 c. chao cac ban
c. Chương trình lặp vô hạn và d. Xin chao cac ban
không dừng
d. Chương trình lỗi cú pháp không Câu 14. Các thao tác xử lý của máy tính
chạy được (phân vân!) gồm (a) Nhận lệnh tiếp theo, (b)
Câu 12. Hãy cho biết sau khi chạy xong Nhận dữ liệu nếu cần, (c) Giải mã
đoạn chương trình sau kết quả ta lệnh, (d) Thực hiện lệnh. Trình tự
thu được mảng a như thế nào? thực hiê ̣n hợp lý là?
void main(){ a. a, b, c, d
int a[10]; b. a, c, b, d
c. c, b, d, a
int temp;
d. d, b, a, c
int i;
for(i=0;i<10;i++){ Câu 15. Với khai báo biến M sau
printf(“Nhap gia tri cho so int M[4][5] = { 10, 2, -3, 17, 82, 9, 0,
a[%d]”,i); 5, 8, -7, 32, 20, 1, 0, 14, 0, 0, 8, 7, 6 };
scanf(“%d”,&a[i]); giá trị của M[1][2] là
} a. 0
temp=a[0]; b. 5
c. 8
for(i=1;i<10;i++)
d. 2
if(a[i] > temp) temp =a[i];
Câu 16. Sau khi thực hiện các lệnh sau một
a[0]=temp; cách tuần tự
} int i;
a. Phần tử đầu tiên của mảng a char str[] = {"helloworld!"};
được thay bằng phần tử nhỏ nhất char words[10];
trong mảng
for(i=0;i<strlen(str)/2;i++)
b. Mảng a sắp xếp theo thứ tự tăng
dần words[i]=str[i+1];
c. Mảng a sắp xếp theo thứ tự giảm words[i-1]='\0';
dần printf("%s\n",words);
Nội dung màn hình sẽ là?
Trang 3/10
a. ellow a=5;
b. hello b=a++;
c. ello c= a++ + ++b –1;
d. hell a. a=7, b=6, c=11
Câu 17. Chức năng chính của tâ ̣p các thanh b. a=7, b=7, c=11
ghi là? c. a=7, b=6, c=10
a. Điều khiển nhâ ̣n lê ̣nh d. a=7, b=7, c=10
b. Vâ ̣n chuyển thông tin giữa các Câu 22. Câu lệnh kiểm tra xem biến ký tự c
thành phần trong máy tính có phải là chữ cái không là?
c. Chứa các thông tin phục vụ cho a. if( (‘A’ <= c) && (c <= ‘z’))
hoạt đô ̣ng của CPU b. if( ((‘A’ <= c) && (c <= ‘Z’))
d. Không có câu trả lời nào ở trên là && ((‘a’ <= c) && (c <= ‘z’)))
đúng c. if( ((‘A’ <= c) || (c <= ‘Z’)) &&
Câu 18. Lệnh đúng để in 2 biến số thực x, y ((‘a’ <= c) || (c <= ‘z’)))
ra màn hình theo quy cách sau
d. if( ((‘A’ <= c) && (c <= ‘Z’)) ||
Dòng 1 : In giá trị x, căn lề trái, chiếm
((‘a’ <= c) && (c <= ‘z’)))
10 vị trí trong đó có 2 vị trí cho phần
Câu 23. Khẳng định nào sau đây về mạng
thập phân
máy tính là đúng
Dòng 2 : In giá trị y, căn lề phải,
a. Mạng máy tính là tập hợp các
chiếm 6 vị trí trong đó có 3 vị trí cho
thiết bị tính toán được nối với
phần thập phân
nhau
a. printf(“%-10.2f \n%6.3f”,x,y);
b. Các thiết bị kết nối với nhau trong
b. printf(“%-10.3f \n%6.4f”,x,y); mạng để chia sẻ thông tin
c. printf(“%10.2f ”,x) ; printf(“%- c. Các máy tính trong mạng được
6.3f ”,y) ; kết nối với nhau thông qua dây,
d. printf(“%10.2f ”,x) ; printf(“\n%- sóng radio hoă ̣c hồng ngoại
6.3f ”,y) ; (ai biết rõ giải thích d. Tất cả các khẳng định trên
giúp mình với !) Câu 24. Giá trị của biến m sau khi thực
Câu 19. Cho biết kết quả trên màn hình của hiện đoạn chương trình sau là?
lệnh sau  (Với □ là ký tự space): float A[4]={1.1,1.2,1.3,1.4};
printf("%5.2f ", 3.454) ; int i; float m=0;
a. □3.5 for(i=0;i<=2;i++)
b. □3.45 if(m<A[i]) m=A[i];
c. □□3.45 a. 0
d. 3.454 b. 1.1
Câu 20. Trong các khai báo sau, khai báo c. 1.3
nào không có lỗi? d. 1.4
a. #define MAX=10
Câu 25. Cần nhập vào từ bàn phím n số
b. #define MAX 10 nguyên với n cũng được nhập từ
c. #define MAX 10; bàn phím. Khai báo nào đúng nhất
d. const int MAX 10; cho mảng A để lưu trữ n số
Câu 21. Cho biết giá trị của các biến a,b,c nguyên này
sau khi thực hiện đoạn chương a. int A[n];
trình sau: b. int A[100];
int a,b,c; c. int A[int n];

Trang 4/10
d. int A[]={1,2,3}; char temp;
Câu 26. Hệ thống các chương trình đảm char s[20] = “Xin chao ban than”;
nhận chức năng làm môi trường for(i=0;i<8;i++){
trung gian giữa người sử dụng và temp =s[i];
s[i] = s[i+9];
phần cứng của máy tính được gọi
s[i+9] = temp;
là? }
a. Phần cứng printf(“%s”,s);
b. Hệ điều hành }
c. Các loại trình dịch trung gian a. Xin chao ban than
d. Tất cả đều đúng b. chao ban than Xin
Câu 27. Phần khai báo biến sau trong C c. ban than Xin chao
d. than Xin chao ban
chiếm bao nhiêu byte trong bộ nhớ
Câu 31. Trong các thiết bị sau, thiết bị nào
float M1[1..20];
là thiết bị ra?
char M2[20];
a. Con chuột
a. 100
b. Bàn phím
b. 101
c. Máy quét
c. 102
d. Máy chiếu
d. 103
Câu 32. Sau khi thực hiện các câu lệnh sau
Câu 28. Dòng lệnh khai báo nào sau đây là một cách tuần tự
đúng với cú pháp khai báo nguyên int a=5,c=2;
mẫu hàm trong C của hàm tìm giá float b=11;
trị lớn nhất trong 3 số a,b,c int d=3;
a. function max(int a, int b, int c); d= (int)b/c%5;
b. int max(int a, int b, int c); giá trị của biến d sẽ bằng?
c. max(int a, int b, int c); a. 5
d. max() b. 3
Câu 29. Hãy cho biết kết quả sau khi chạy c. 0
đoạn chương trình sau d. 1
void main(){ Câu 33. Một số nguyên có dấu biểu diễn
char *s1, *s2; dưới dạng số nhị phân 8 bit là
s1 = “Xin chao ”; 01010101. Giá trị của số đó là?
s2 = “cac ban”; a. -43
s1 = strcat(s1,s2); b. -85
printf(“%s”,s1); c. +85
} d. +43
Câu 34. Đoạn chương trình sau cho kết quả
a. Xin chao như thế nào khi người sử dụng
b. cac ban nhập vào xâu: thu do ha noi
c. chao cac ban char s1[20], s2[21];
d. Xin chao cac ban scanf(“%s“, s1);
Câu 30. Hãy cho biết sau khi thực hiện
gets(s2);
đoạn chương trình sau kết quả thu
được là như thế nào? a. s1= “thu do ha noi” , s2= “”
void main(){ b. s1= “thu do ha”, s2=“noi”
int i; c. s1= “thu”, s2= “ do ha noi”
Trang 5/10
d. Chương trình báo lỗi int d=4;
Câu 35. Cho biết kết quả của đoạn chương d= b/c%5;
trình giá trị của biến d sẽ bằng?
float f = 1.234;
a. 3.5
printf (“f = %3.2f”,f);
b. 4
a. f = 3.2
c. 3
b. f=1.234
d. Không kết quả nào ở trên là đúng
c. f = %3.2f
Câu 41. Chỉ ra lựa chọn tương ứng với các
d. f = 1,23
thành phần thuộc bộ nhớ ngoài
Câu 36. Cho biết giá trị của số 63 khi biểu
a. ROM, RAM
diễn sang số BCD (Binary Coded
b. Đĩa cứng, đĩa mềm
Decimal) có giá trị bằng bao
c. Đĩa cứng, CD-ROM, ROM
nhiêu?
d. Đĩa cứng, đĩa mềm, bộ nhớ cache
a. 0110 0011
Câu 42. Thực hiện các câu lệnh sau một
b. 0001 1100
cách tuần tự
c. 0101 1010
int a;
d. 0011 0110
Câu 37. Đoạn chương trình sau sẽ in những for(a=1;a<=10, a%5!=0;a++)
gì ra màn hình printf("%d ",a);
int i=0; nội dung màn hình sẽ là?
char c = 'c'; a. 1 2 3 4 6 7 8 9 10
for(i=0; i<6; i=i+2){ b. 1 2 3 4 5 6
c=c+i; c. 1 2 3 4
printf ("%c ", c); d. 1 2 3 4 5
}
Câu 43. Thực hiện các câu lệnh sau một
a. c e i
cách tuần tự
b. c e i o int a;
c. e i o
for(a=1; a<=10; a++)
d. Không có đáp án nào đúng
{
Câu 38. Trong các dòng khai báo sau, dòng
khai báo nào là sai printf("%d ",a);
1: #define PI 3.1415; if(a%3!=0) a= a+2;
2: const float g 9.81; }
3: int i=0; nội dung màn hình sẽ là?
4: int j='a'; a. 1 4 7
a. Dòng 2, 3 ,4 b. 1 4 7 10
b. Dòng 1, 2 , 3 c. 1 3 5 7 9
c. Dòng 1, 2 d. 1 4 8
d. Dòng 1, 2, 4 Câu 44. Các thành phần cơ bản của một hệ
Câu 39. Hệ điều hành được xếp loại là? thống máy tính gồm có
a. Phần mềm ứng dụng a. Mainboard, ổ cứng, màn hình
b. Phần mềm hệ thống b. Bộ xử lý trung tâm, bộ nhớ chính,
c. Phần cứng hệ thống vào ra, liên kết hệ thống
d. Thiết bị ngoại vi c. Bộ xử lý trung tâm, bộ nhớ, thiết
Câu 40. Sau khi thực hiện các câu lệnh sau bị ngoại vi, liên kết dữ liệu
một cách tuần tự d. Chip vi xử lý, bộ nhớ, thiết bị vào
int a=5, b=7, c=2; ra, nguồn

Trang 6/10
Câu 45. Trong 2 đoạn chương trình sau, int SONGUYENTO (int n)
đoạn nào cho kết quả i = 12? { int i ; int k = M ;
(A) int i=6; do i++; while (i<12); for(i=2 ; i<n ; i++)
(B) int i=6; while (i<12) i++;
if ((n% i)==0) k= N; return k;
a. A
b. B }
c. Cả A và B a. M=1 N=0
d. Không có đoạn nào b. M=0 N=1
Câu 46. Cho biết kết quả hiện trên màn c. M=1 N=1
hình của đoạn chương trình sau d. Chương trình không thực hiện đúng
int i=1; yêu cầu
while(1) Câu 50. Cho khai báo
{ struct SINHVIEN {
printf(“%d”,i); char MaSo[7]; /*mã số sinh viên*/
i++; char HoTen[30]; /*họ tên sinh
if(i%3==0) continue; viên*/
printf(“/”); float DiemTB; /*điểm trung bình*/
if(i%5==0) break;
} A;
}
a. 1/23/4/ Trong các lệnh sau, lệnh nào in ra
b. 1/23/4 đúng các trường dữ liệu của A
c. 1/2/3/4 a. printf(“%7s\n%30s\n
d. Chương trình có lỗi %f”,SINHVIEN.MaSo,
Câu 47. Cho đoạn chương trình nhập vào SINHVIEN.HoTen,
từ bàn phím một số nguyên lớn hơn
SINHVIEN.DiemTB);
hoặc bằng 0, nếu nhập sai yêu cầu
nhập lại b. printf(“%7s\n%30s\n%f”, MaSo,
do { scanf(“%d”,&n); if (A) HoTen, A.DiemTB);
printf(“Nhap sai, hay nhap c. printf(“%7s\n%30s\n%f”,A.MaSo,
lai”); } while (B); A.HoTen, A.DiemTB);
a. A: n<0 B: n<0 d. printf(“%7s\n%30s\n%f”,MaSo,
b. A: n<0 B: n>=0 HoTen, DiemTB);
c. A: n>=0 B: n>=0 Câu 51. Lệnh mở tệp văn bản songuyen.txt
để chỉ đọc là?
d. Chương trình không làm đúng
a. FILE *fp; fp =
công việc yêu cầu fopen(“songuyen.txt”, “r”);
Câu 48. Kết quả của biểu thức 10010110 b. FILE *fp; fp =
XOR 01101001 là bao nhiêu? fopen(“songuyen.txt”, “rb+”);
a. 11111111 c. FILE *fp; fp =
b. 00000000 fopen(“songuyen.dat”,” rb”);
c. 10010110 d. FILE *fp; fp =
fopen(“songuyen.txt”,”a”);
d. 01101001
Câu 52. Trong ngôn ngữ lập trình C, cách
Câu 49. Cho hàm kiểm tra xem một số >2
khai báo biến nào sau đây là đúng
có phải là số nguyên tố không.
Hàm trả về 1 nếu là số nguyên tố, cú pháp?
trả về 0 nếu không phải số nguyên a. float int n;
tố . Giá trị của M, N là bao nhiêu: b. unsigned int n;
(biết số nguyên tố là số chỉ chia hết c. unsign n =0;
cho 1 và chính nó) d. n:int;
Trang 7/10
Câu 53. Chọn phát biểu đúng về vai trò của c. Vì bộ nhớ ngoài không bị giới hạn
hệ điều hành bởi không gian địa chỉ của CPU
a. Quản lý các tài nguyên của máy d. Vì hệ thống vào ra cho phép ghép
tính nối với bộ nhớ có dung lượng lớn
b. Quản lý thiết bị ngoại vi Câu 57. Trong ngôn ngữ lập trình C, cho
c. Kiểm tra phần cứng hệ thống khi biết sau khi đoạn chương trình sau
khởi động đây được thực hiện thì phần tử
A[9] của mảng mang giá trị bao
d. Điều khiển hiển thị dữ liệu ra màn
nhiêu?
hình int A[10] = {-1, 5, -2, 7, 3, -10, 9, 0,
Câu 54. Trong ngôn ngữ lập trình C, sau
-1, 7};
khi đoạn chương trình sau được
thực hiện thì biến C mang giá trị int i,j,k;
bao nhiêu? for(i=1; i<10; i++)
int A = 10, B = 20, C; for(j=9; j>=i; j--)
switch (A>B) { if (A[j] < A[j-1]) {
case 0 : C = A ; break; k = A[j];
case 1 : C = B ; break; A[j] = A[j-1];
} A[j-1] = k;
a. C = 0 }
b. C =1 a. A[9] = 7
c. C =10 b. A[9] = -1
d. C=20 c. A[9] = -10
Câu 55. Trong ngôn ngữ lập trình C, cho d. A[9] = 9
biết kết quả hiển thị trên màn hình Câu 58. Trong ngôn ngữ lập trình C, cho
sau khi đoạn chương trình sau được biết sau khi đoạn chương trình
thực hiện sau được thực hiện thì phần tử
int i = 0; A[0] của mảng mang giá trị
while (i<10) { bao nhiêu?
i++; int A[10] = {0, 1, 2, 3, 4, 5, 6, 7, 8,
if (i%2 == 0) break; 9};
printf(“%d “,i); int i,k;
} for (i =0; i<5; i++) {
a. 0 1 2 3 4 5 6 7 8 9 k = A[i];
b. 0 2 4 6 8 A[i] = A[9-i];
c. 1 3 5 7 9 A[9-i] = k;
d. 1 }
Câu 56. Vì sao dung lượng của bộ nhớ a. A[0] = 0;
ngoài có thể lớn hơn bộ nhớ trong b. A[0] = 9;
rất nhiều? c. A[0] = 4;
a. Vì công nghệ chế tạo bộ nhớ d. A[0] = 5;
ngoài rẻ hơn bộ nhớ trong rất Câu 59. Một máy tính sử dụng bộ vi xử lý
nhiều có độ rộng của đường bus địa chỉ
b. Vì bộ nhớ trong chịu sự điều (Address Bus) là 32 bit. Hỏi với
khiển trực tiếp của CPU máy tính này, dung lượng tối đa
của bộ nhớ chính là bao nhiêu?

Trang 8/10
a. 256 MB a. const int MAX_SINH_VIEN =50
b. 1 GB b. const MAX_SINH_VIEN = 50;
c. 4 GB c. #define int
d. Không giới hạn MAX_SINH_VIEN=50
Câu 60. Đâu là cách biểu diễn đúng khi d. #define MAX_SINH_VIEN 50
khai báo hằng

Trang 9/10
Trang 1/10

You might also like