CÂU HI ÔN TP
CƠ SỞ LẬP TRÌNH
CÂU HỎI ÔN TẬP CSLT
Ngôn ngữ lập trình nào dưới đây được coi là một ngôn ngữ lai cho phép lập trình theo cả hai
hướng đối tươngcấu trúc:
Ngôn ngữ C.
Ngôn ngữ C++.
Ngôn ngữ C#.
Ngôn ngữ Pascal.
Ngôn ngữ lập trình nào dưới đây được ưu tiên lựa chọn để lập trình đồ họa và điều khiển thiết bị:
Assembly (hợp ngữ)
C (hoặc C++).
C#.
Java.
Chỉ ra phát biểu sai về ngôn ngữ lập trình C:
Là ngôn ngữ lập trình hướng đối tượng.
Có khối lượng mã nguồn nhỏ.
Tốc độ xử lý nhanh.
Đòi hỏi người lập trình am hiểu về hệ thống
Chương trình dịch không có khả năng nào trong các khả năng sau?
Phát hiện lỗi ngữ pháp.
Phát hiện lỗi ngữ nghĩa.
Thông báo lỗi cú pháp.
Tạo chương trình đích.
Kiểu dữ liệu float trong C có thể xử lí dữ liệu trong phạm vi nào:
1.24E-38 đến 3.4E+38.
1.24E-20 đến 3.4E+20.
1.24E-18 đến 3.4E+18.
Cả 3 đáp án trên đều sai.
Cho biến x có giá trị là các số nguyên từ 1000 tới 40,000. Khai báo kiểu nào dưới đây cho phép
tiết kiệm bộ nhớ nhất:
int x;
unsigned int x;
long x
float x;
Kiểu dữ liệu double trong C cho phép biểu diễn chính xác tới khoảng bao nhiêu chữ số thập phân
?
9 chữ số.
11 chữ số.
13 chữ số.
15 chữ số.
Kiểu dữ liệu long double trong C có độ dài là:
4 bytes.
8 bytes.
10 bytes.
16 bytes.
Khai báo hằng nào dưới đây không đúng với ngôn ngữ C ?
#define S “ABCD”
#define NULL ‘\0’
const int N = 100;
Tất cả đều đúng.
Yếu tố nào dưới đây quyết định kích thước của vùng nhớ được cấp phát cho các biến:
Tên biến.
Kiểu dữ liu của biến.
Giá trị của biến.
Tất cả đều đúng.
Các kí hiệu đặc trưng cho sự tác động lên dữ liệu gọi là:
Hàm.
Biểu thức.
Biến.
Toán tử.
Cho a và b là hai số thực. Biểu thức nào dưới đây không đúng với ngôn ngữ lập trình C:
(a+=b)
(a-=b).
(a>>=b).
(a*=b).
Độ ưu tiên (giảm từ trái qua phải) đối với các toán tử logic là:
AND, NOT, OR.
NOT, OR, AND.
OR, NOT, AND.
NOT, AND, OR.
Cấu trúc nào dưới đây bắt buộc thực hiện chuỗi lệnh lặp ít nhất một lần ?
for.
while.
do - while.
Cả 3 cấu trúc trên.
Chuỗi lệnh lặp trong cấu trúc for (int i = 1; i<20; i*= 2) được thực hiện bao nhiêu lần ?
5.
6
8
10.
Cho đoạn mã:
int c =0, a = 5, b= 7;
if (a>5) if (b<6) c = 1; else c = 2; else if (b>5) c = 3; else c = 4;
Giá trị của c sau khi thực hiện đoạn lệnh trên là:
1
2
3
4
Kết quả in ra của chương trình sau là gì:
#include <stdio.h>
main()
{
int n = 0, a = 2, b = 6;
if (a>=2) if (b<=2) n = 1; else n = 2; else n = 3;
printf(“%d\n”, n);
}
0
1
2
3
Kết quả in ra của chương trình sau là gì:
#include <stdio.h>
main()
{
int t, x= 12;
while (x>0) {
t = x% 2; x = x/2;
printf(“%d”, t);
}
}
1100
0011
1001
0101
Kết quả in ra của chương trình sau là gì:
#include <stdio.h>
main()
{
int t = 0, x= 121;
while (x>0) {
t +=x%10; x = x/10;
}
printf(“%d”, t);
}
4
24
124
Kết quả khác.
Cách truyền tham số nào dưới đay không làm thay đổi giá trị của biến tham số thực trong chương
trình gọi:
A. Truyền giá trị.
B. Truyền địa chỉ biến
C. Cả (A) và (B) đều đúng.
D. Cả (A) và (B) đều sai.
Kết quả của chương trình sau là gì:
#include <stdio.h>
long F(int n)
{
if (n ==1) return 1;
return n+F(n-1);
};
int main()
{
printf("%d", F(4));
}
9
10
11
12
Kết quả của chương trình sau là gì:
#include <stdio.h>
int F1(int a, int b)
{
return F2(a) + F2(b);
}
int F2(int a)
{
return a*a;
}
int main()
{
printf("%d",F1(1,3));
}
“8”.
“10”
Lỗi biên dịch.
Kết quả khác.
Kết quả của chương trình sau là gì:
#include <stdio.h>
char F(char c)
{