wayground logo

Free Printable Worksheets

Font size

S
M
L
XL
Worksheets

NLLTCT_Lab5_Buoi2

Total questions: 99

Worksheet time: 1hrs 18mins

Name
Class
Date
1.
Để tạo một dự án C++ cho ứng dụng dòng lệnh (console) trong Visual Studio, lựa chọn phù hợp nhất là gì?
a)
Windows Forms App
b)
Console App
c)
Empty Project
d)
Class Library
2.
Trong Visual Studio, phím tắt mặc định để chạy chương trình mà không cần gỡ lỗi (debugging) là gì?
a)
F5
b)
Ctrl + F5
c)
F9
d)
F7
3.
Một "breakpoint" (điểm dừng) trong Visual Studio có công dụng chính là gì?
a)
Đánh dấu một lỗi cú pháp trong code
b)
Tạm dừng chương trình tại một dòng lệnh cụ thể khi gỡ lỗi
c)
Tăng tốc độ biên dịch của chương trình
d)
Thêm một chú thích vào code
4.
Khi chương trình C++ báo lỗi "unresolved external symbol" trong quá trình liên kết (linking), nguyên nhân phổ biến nhất là gì?
a)
Thiếu dấu chấm phẩy (;)
b)
Khai báo một hàm nhưng quên chưa định nghĩa (viết thân hàm)
c)
Sử dụng sai tên biến
d)
Vòng lặp chạy vô hạn
5.
Cửa sổ "Solution Explorer" trong Visual Studio dùng để làm gì?
a)
Hiển thị kết quả đầu ra của chương trình
b)
Quản lý và hiển thị cấu trúc các tệp và thư mục trong dự án
c)
Viết và chỉnh sửa mã nguồn
d)
Hiển thị các lỗi khi biên dịch
6.
Cho hàm `void print_message() { std::cout << "Hello"; }`. Lời gọi hàm nào sau đây là đúng?
a)
`print_message;`
b)
`print_message();`
c)
`cout << print_message;`
d)
`int x = print_message();`
7.
Hàm `int sum(int a, int b) { return a + b; }`. Kết quả của `std::cout << sum(5, 3);` là gì?
a)
Lỗi biên dịch
b)
8
c)
a + b
d)
Không in ra gì
8.
Sự khác biệt chính giữa truyền tham trị (pass-by-value) và truyền tham chiếu (pass-by-reference) là gì?
a)
Truyền tham chiếu nhanh hơn
b)
Tham trị tạo bản sao của đối số, còn tham chiếu làm việc trực tiếp với biến gốc
c)
Chỉ có thể truyền tham chiếu cho kiểu `int`
d)
Tham trị không thể dùng với hàm `void`
9.
Đoạn code sau sẽ in ra gì? `void change_value(int& x) { x = 10; } int main() { int num = 5; change_value(num); std::cout << num; return 0; }`
a)
5
b)
10
c)
Lỗi biên dịch
10.
Khái niệm "nạp chồng hàm" (function overloading) trong C++ có nghĩa là gì?
a)
Một hàm có thể gọi chính nó
b)
Nhiều hàm có thể có cùng tên nhưng phải khác nhau về danh sách tham số
c)
Một hàm có thể trả về nhiều giá trị cùng lúc
d)
Một hàm có thể được định nghĩa bên trong một hàm khác
11.
Đoạn code sau sẽ in ra gì? `int x = 10; if (x > 10) { std::cout << "A"; } else { std::cout << "B"; }`
a)
A
b)
B
c)
AB
d)
Không in ra gì
12.
Trong cấu trúc `switch-case`, nếu một `case` không có lệnh `break`, điều gì sẽ xảy ra?
a)
Chương trình báo lỗi biên dịch
b)
Chương trình sẽ thoát khỏi `switch`
c)
Chương trình sẽ thực thi tiếp các `case` bên dưới cho đến khi gặp `break` hoặc kết thúc `switch`
d)
Chương trình sẽ bỏ qua tất cả các `case` còn lại
13.
Vòng lặp `for (int i = 0; i < 5; i++) { ... }` sẽ thực hiện lặp lại bao nhiêu lần?
a)
4 lần
b)
5 lần
c)
6 lần
d)
0 lần
14.
Vòng lặp `do-while` khác với vòng lặp `while` ở điểm cơ bản nào?
a)
`do-while` luôn chạy nhanh hơn `while`
b)
Khối lệnh của `do-while` được đảm bảo thực thi ít nhất một lần
c)
`while` không thể tạo ra vòng lặp vô hạn
d)
`do-while` yêu cầu biến đếm phải là số nguyên
15.
Lệnh `continue` trong một vòng lặp có chức năng gì?
a)
Kết thúc vòng lặp ngay lập tức
b)
Bỏ qua các lệnh còn lại trong lần lặp hiện tại và chuyển sang lần lặp tiếp theo
c)
Tạm dừng chương trình
d)
Xóa giá trị của biến đếm
16.
Chỉ số (index) của phần tử đầu tiên và cuối cùng trong mảng `int arr[10];` là gì?
a)
1 và 10
b)
0 và 10
c)
1 và 9
d)
0 và 9
17.
Đoạn code sau sẽ in ra giá trị nào? `int nums[] = {10, 20, 30, 40}; std::cout << nums[2];`
a)
20
b)
30
c)
40
d)
Lỗi biên dịch
18.
Làm thế nào để tính tổng tất cả các phần tử trong mảng `int arr[5] = {1, 2, 3, 4, 5};`?
a)
Sử dụng vòng lặp để duyệt qua mảng và cộng dồn các giá trị
b)
`int total = sum(arr);`
c)
`int total = arr[0] + arr[4];`
d)
Không thể tính được
19.
Việc truy cập một phần tử không tồn tại trong mảng, ví dụ `arr[10]` trong mảng `int arr[5];`, sẽ gây ra điều gì?
a)
Chương trình sẽ tự động trả về giá trị 0
b)
Chương trình báo lỗi biên dịch (compilation error)
c)
Hành vi không xác định (undefined behavior)
d)
Mảng sẽ tự động được mở rộng kích thước
20.
Đâu là cách khai báo và khởi tạo một mảng số nguyên có 3 phần tử là 5, 10, và 15?
a)
`int arr[3] = {5, 10, 15};`
b)
`int arr[] = 5, 10, 15;`
c)
`int arr[3]; arr = {5, 10, 15};`
d)
`int arr{5, 10, 15};`
21.
Trong C++, thư viện nào cần được `#include` để sử dụng `std::cout` và `std::cin`?
a)
`<string>`
b)
`<cmath>`
c)
`<iostream>`
d)
`<vector>`
22.
Làm thế nào để khai báo một hằng số có tên `PI` với giá trị `3.14`?
a)
`int PI = 3.14;`
b)
`const double PI = 3.14;`
c)
`#define PI 3.14`
d)
Cả B và C đều đúng
23.
Toán tử `%` (modulo) trong biểu thức `10 % 3` sẽ cho kết quả là bao nhiêu?
a)
3
b)
1
c)
0.33
d)
Lỗi
24.
Đoạn code sau sẽ in ra kết quả gì? `std::cout << 5 / 2;`
a)
2.5
b)
2
c)
3
d)
Lỗi biên dịch
25.
Mục đích của việc sử dụng `using namespace std;` là gì?
a)
Khai báo một không gian tên mới tên là `std`
b)
Cho phép sử dụng các định danh từ không gian tên `std` (như `cout`, `cin`) mà không cần tiền tố `std::`
c)
Bắt buộc phải có trong mọi chương trình C++
d)
Để chương trình chạy nhanh hơn
26.
Kết quả của đoạn code sau là gì? `int i = 0; i++; std::cout << i;`
a)
0
b)
1
c)
2
d)
Lỗi
27.
Hàm `void greet(std::string name = "Guest") { std::cout << "Hello, " << name; }`. Lời gọi `greet();` sẽ in ra gì?
a)
Hello, name
b)
Lỗi biên dịch
c)
Hello, Guest
d)
Hello,
28.
Đoạn code sau sẽ in ra gì? `for (int i = 10; i > 8; i--) { std::cout << i << " "; }`
a)
10 9 8
b)
10 9
c)
10
d)
9 8
29.
Kết quả của biểu thức logic `(true && false) || true` là gì?
a)
True
b)
0
c)
1
d)
Lỗi
30.
Đâu là cách khai báo một biến `score` có thể lưu trữ điểm số thập phân, ví dụ 8.5?
a)
`int score = 8.5;`
b)
`char score = '8.5';`
c)
`double score = 8.5;`
d)
`string score = "8.5";`
31.
Đoạn code sau sẽ tạo ra vòng lặp vô hạn. Đúng hay Sai? `int i = 0; while (i < 5) { std::cout << i; }`
a)
Đúng
b)
Sai
32.
Để so sánh xem hai biến `a` và `b` có bằng nhau không, ta dùng toán tử nào?
a)
`=`
b)
`==`
c)
`!=`
d)
`<>`
33.
Lệnh nào dùng để đọc một số nguyên từ người dùng và lưu vào biến `age`?
a)
`std::cin >> age;`
b)
`std::cout << age;`
c)
`read(age);`
d)
`age = std::cin;`
34.
Đoạn code sau có vấn đề gì? `const int MAX_SIZE = 10; MAX_SIZE = 15;`
a)
Không có vấn đề gì
b)
Gây lỗi biên dịch
c)
Gây lỗi khi chạy chương trình
d)
Gây cảnh báo (warning)
35.
Sau vòng lặp `for (int i = 0; i < 5; i++) {}`, giá trị của `i` là bao nhiêu?
a)
4
b)
5
c)
Không xác định
36.
Đoạn code sau sẽ in ra gì? `int arr[] = {1, 2, 3}; arr[1] = 5; std::cout << arr[1];`
a)
1
b)
2
c)
3
d)
5
37.
Cách tốt nhất để lấy kích thước (số lượng phần tử) của mảng `int arr[] = {1, 2, 3, 4};` là gì?
a)
`sizeof(arr)`
b)
`sizeof(arr) / sizeof(arr[0])`
c)
`arr.length()`
d)
`arr.size()`
38.
Làm thế nào để hoán đổi giá trị của hai phần tử `arr[0]` và `arr[1]` trong một mảng?
a)
`arr[0] = arr[1]; arr[1] = arr[0];`
b)
Sử dụng một biến tạm: `int temp = arr[0]; arr[0] = arr[1]; arr[1] = temp;`
c)
`swap(arr[0], arr[1]);`
d)
Cả B và C đều có thể đúng
39.
Đoạn code sau sẽ in ra gì? `int grade = 75; if (grade >= 60) { std::cout << "Pass"; } else { std::cout << "Fail"; }`
a)
Pass
b)
Fail
c)
PassFail
d)
Lỗi
40.
Trong C++, chú thích (comment) trên một dòng được bắt đầu bằng ký tự nào?
a)
`/*`
b)
`//`
c)
`#`
d)
`
41.
Tính năng IntelliSense trong Visual Studio có công dụng chính là gì?
a)
Tự động sửa lỗi cú pháp
b)
Gợi ý và tự động hoàn thành mã nguồn
c)
Biên dịch chương trình
d)
Quản lý các tệp dự án
42.
Cửa sổ "Error List" trong Visual Studio hiển thị những gì?
a)
Các lỗi logic của chương trình
b)
Các lỗi cú pháp và cảnh báo khi biên dịch
c)
Kết quả đầu ra của chương trình
d)
Danh sách các hàm trong dự án
43.
Trong C++, sự khác biệt giữa tệp header (.h hoặc .hpp) và tệp nguồn (.cpp) là gì?
a)
Tệp .h chứa code thực thi, tệp .cpp chứa khai báo
b)
Tệp .h thường chứa các khai báo (hàm, lớp), tệp .cpp chứa định nghĩa (thân hàm)
c)
Tệp .cpp được biên dịch trước tệp .h
d)
Không có sự khác biệt rõ ràng
44.
Khi gỡ lỗi, lệnh "Step Over" (F10) khác với "Step Into" (F11) như thế nào?
a)
Step Over nhanh hơn Step Into
b)
Step Over bỏ qua lời gọi hàm, Step Into đi vào bên trong thân hàm
c)
Step Over dùng cho vòng lặp, Step Into dùng cho hàm
d)
Không có sự khác biệt
45.
Để thay đổi chuẩn C++ (ví dụ từ C++14 sang C++17) cho dự án trong Visual Studio, bạn cần vào đâu?
a)
Chỉnh sửa trực tiếp trong tệp mã nguồn
b)
Vào thuộc tính của dự án (Project Properties)
c)
Cài đặt lại Visual Studio
d)
Trong cửa sổ "Output"
46.
Một hàm được khai báo là `void` có nghĩa là gì?
a)
Hàm này không nhận tham số nào
b)
Hàm này không trả về giá trị nào
c)
Hàm này chỉ có thể được gọi một lần
d)
Hàm này là một hàm rỗng, không có lệnh
47.
Đoạn code sau sẽ in ra gì? `int func(int x) { return x * x; } int main() { std::cout << func(func(2)); return 0; }`
a)
4
b)
8
c)
16
d)
Lỗi biên dịch
48.
Khai báo hàm (function prototype) có mục đích chính là gì?
a)
Để chương trình chạy nhanh hơn
b)
Thông báo cho trình biên dịch về sự tồn tại, tên, kiểu trả về và các tham số của một hàm trước khi nó được định nghĩa
c)
Để tạo một bản sao của hàm
d)
Là một dạng chú thích cho hàm
49.
Biến được khai báo bên trong một hàm được gọi là gì?
a)
Biến toàn cục (global variable)
b)
Biến cục bộ (local variable)
c)
Biến hằng (constant variable)
d)
Biến tĩnh (static variable)
50.
Đoạn code sau có hợp lệ không? `void print_num(int a) { std::cout << a; } int main() { print_num(10.5); return 0; }`
a)
Không, vì sai kiểu dữ liệu
b)
Hợp lệ, chương trình sẽ in ra 10.5
c)
Hợp lệ, chương trình sẽ in ra 10
d)
Hợp lệ, chương trình sẽ in ra 11
51.
Kết quả của biểu thức `!(5 > 3 && 2 < 1)` là gì?
a)
True
b)
0
c)
1
d)
Lỗi
52.
Đoạn code sau sẽ in ra gì? `int n = 5; if (n > 10) { std::cout << "A"; } else if (n > 3) { std::cout << "B"; } else { std::cout << "C"; }`
a)
A
b)
B
c)
C
d)
BC
53.
Lệnh `default` trong cấu trúc `switch` được sử dụng để làm gì?
a)
Đặt giá trị mặc định cho biến
b)
Thực thi khi không có `case` nào khớp
c)
Báo hiệu kết thúc `switch`
d)
Là một `case` bắt buộc phải có
54.
Đoạn code sau sẽ in ra gì? `for(int i = 0; i < 2; i++) { for(int j = 0; j < 2; j++) { if (i == j) continue; std::cout << i << j; } }`
a)
11
b)
110
c)
1001
d)
11011
55.
Lựa chọn vòng lặp nào là phù hợp nhất khi bạn muốn thực thi một khối lệnh một số lần biết trước?
a)
`while`
b)
`do-while`
c)
`for`
d)
Tất cả đều như nhau
56.
Đâu là cách khởi tạo tất cả các phần tử của mảng `int arr[10];` thành giá trị 0?
a)
`int arr[10] = {0};`
b)
`for(int i=0; i<10; i++) arr[i] = 0;`
c)
`int arr[10];`
d)
Cả A và B đều đúng
57.
Đoạn code sau sẽ làm gì? `int arr[] = {1, 2, 3, 4, 5}; for(int i = 0; i < 5; i++) { arr[i] = arr[i] * 2; }`
a)
In ra các phần tử của mảng
b)
Nhân đôi giá trị của mỗi phần tử trong mảng
c)
Báo lỗi biên dịch
d)
Tạo ra một mảng mới với các giá trị gấp đôi
58.
Khi truyền một mảng vào một hàm, điều gì thực sự được truyền?
a)
Một bản sao đầy đủ của mảng
b)
Địa chỉ của phần tử đầu tiên của mảng
c)
Kích thước của mảng
d)
Phần tử cuối cùng của mảng
59.
Mục đích của đoạn code sau là gì? `int arr[] = {10, 5, 8, 12}; int max_val = arr[0]; for(int i = 1; i < 4; i++) { if(arr[i] > max_val) max_val = arr[i]; }`
a)
Sắp xếp mảng
b)
Tìm giá trị lớn nhất trong mảng
c)
Tìm chỉ số của giá trị lớn nhất
d)
Tính tổng các phần tử
60.
Đoạn code sau sẽ in ra gì? `int data[5] = {1}; std::cout << data[0] << data[1] << data[4];`
a)
111
b)
100
c)
Lỗi biên dịch
d)
1 và giá trị rác
61.
Kết quả của `(10 + 5) * 2 / 3` là bao nhiêu?
a)
10
b)
11
c)
10.0
d)
12
62.
Kiểu dữ liệu `char` thường được dùng để lưu trữ gì?
a)
Một chuỗi văn bản dài
b)
Một ký tự đơn lẻ
c)
Một số nguyên lớn
d)
Một giá trị logic (true/false)
63.
Đoạn code `std::cout << "1" + "2";` sẽ gây ra điều gì?
a)
In ra "12"
b)
In ra 3
c)
Lỗi biên dịch
d)
In ra một kết quả không mong muốn
64.
Làm thế nào để kiểm tra xem một số `n` có phải là số chẵn hay không?
a)
`if (n % 2 == 0)`
b)
`if (n / 2 == 0)`
c)
`if (n % 2 == 1)`
d)
`if (n == 2)`
65.
Hàm `int main()` phải trả về một giá trị kiểu `int` để làm gì?
a)
Để in giá trị đó ra màn hình
b)
Báo cáo trạng thái kết thúc của chương trình cho hệ điều hành
c)
Để sử dụng trong các tính toán tiếp theo
d)
Là một yêu cầu bắt buộc nhưng không có ý nghĩa
66.
Đoạn code sau sẽ in ra gì? `bool is_raining = true; if (!is_raining) { std::cout << "Go out"; } else { std::cout << "Stay home"; }`
a)
Go out
b)
Stay home
c)
True
d)
Lỗi
67.
Một hàm đệ quy là một hàm...?
a)
Không bao giờ kết thúc
b)
Gọi một hàm khác
c)
Gọi chính nó
d)
Không trả về giá trị
68.
Đoạn code sau sẽ in ra gì? `int x = 1, y = 2; if (x > 0 || y < 0) { std::cout << "True"; } else { std::cout << "False"; }`
a)
True
b)
0
c)
Lỗi
d)
Không in gì
69.
`#include` là một...?
a)
Hàm (function)
b)
Biến (variable)
c)
Chỉ thị tiền xử lý (preprocessor directive)
d)
Toán tử (operator)
70.
Đâu là cách viết đúng để so sánh xem chuỗi `str` có bằng "hello" hay không?
a)
`if (str == "hello")`
b)
`if (str.equals("hello"))`
c)
`if (strcmp(str, "hello"))`
d)
`if (str = "hello")`
71.
Lệnh `break;` có thể được sử dụng bên ngoài vòng lặp hoặc cấu trúc `switch` không?
a)
Có, ở bất kỳ đâu
b)
Chỉ trong hàm `main`
c)
Không, nó sẽ gây ra lỗi biên dịch
d)
Có, nhưng chỉ trong các hàm `void`
72.
Đoạn code sau sẽ in ra gì? `for(int i = 0; i < 5; i += 2) { std::cout << i; }`
a)
1234
b)
24
c)
13
d)
2
73.
Đoạn code sau sẽ in ra gì? `int arr[] = {1, 2, 3}; std::cout << sizeof(arr);`
a)
3
b)
4
c)
12
d)
Lỗi
74.
Để duyệt ngược một mảng `int arr[5]`, vòng lặp `for` nên được viết như thế nào?
a)
`for(int i = 5; i > 0; i--)`
b)
`for(int i = 4; i >= 0; i--)`
c)
`for(int i = 0; i < 5; i++)`
d)
`for(int i = -1; i > -5; i--)`
75.
Mục đích của đoạn code sau là gì? `int arr[] = {1, 2, 3, 4}; bool found = false; for(int i=0; i<4; i++) { if(arr[i] == 3) { found = true; break; } }`
a)
Kiểm tra xem mảng có chứa số 3 hay không
b)
Đếm số lần số 3 xuất hiện
c)
Xóa số 3 khỏi mảng
d)
Thay thế số 3 bằng `true`
76.
Để lưu trữ điểm trung bình của một lớp học, kiểu dữ liệu nào là phù hợp nhất?
a)
`int`
b)
`double`
c)
`char`
d)
`bool`
77.
Kết quả của `10 / 4.0` là gì?
a)
2
b)
2.5
c)
3
d)
Lỗi
78.
Đoạn code sau sẽ in ra gì? `int count = 0; while(count < 3) { std::cout << count; count++; }`
a)
12
b)
123
c)
123
d)
1
79.
Toán tử `!=` được dùng để làm gì?
a)
Gán giá trị phủ định
b)
So sánh "không bằng"
c)
Phép cộng logic
d)
Là một lỗi cú pháp
80.
Trong Visual Studio, việc build ở chế độ "Release" khác với "Debug" chủ yếu ở điểm nào?
a)
Release chạy chậm hơn
b)
Release chứa thông tin gỡ lỗi, Debug thì không
c)
Release được tối ưu hóa về tốc độ và kích thước, Debug thì không
d)
Không có sự khác biệt
81.
Làm thế nào để khai báo một hàm `calculate` nhận hai số `double` và trả về một số `double`?
a)
`void calculate(double, double);`
b)
`double calculate(double a, double b);`
c)
`double calculate(int a, int b);`
d)
`calculate(double a, double b) double;`
82.
Đoạn code sau sẽ in ra gì? `int a = 5; int b = a++; std::cout << a << " " << b;`
a)
6 5
b)
5 6
c)
6 6
d)
5 5
83.
Đoạn code sau sẽ in ra gì? `int a = 5; int b = ++a; std::cout << a << " " << b;`
a)
6 5
b)
5 6
c)
6 6
d)
5 5
84.
Để tính căn bậc hai của một số, bạn cần `#include` thư viện nào và dùng hàm gì?
a)
`<iostream>`, `sqrt()`
b)
`<cmath>`, `sqrt()`
c)
`<string>`, `cbrt()`
d)
`<cmath>`, `pow()`
85.
Đoạn code sau sẽ in ra gì? `int arr[] = {0, 10, 20, 30}; int sum = 0; for (int i = 1; i < 4; i+=2) { sum += arr[i]; } std::cout << sum;`
a)
60
b)
40
c)
30
d)
10
86.
Đâu là cách gán chuỗi "C++" cho một biến kiểu `std::string` có tên là `language`?
a)
`language = "C++";`
b)
`language = 'C++';`
c)
`string language: "C++";`
d)
`language("C++");`
87.
Đoạn code sau sẽ in ra gì? `int x = 2; switch (x) { case 1: std::cout << "A"; break; case 2: std::cout << "B"; /* no break */ case 3: std::cout << "C"; break; }`
a)
B
b)
C
c)
BC
d)
ABC
88.
Đoạn code sau dùng để làm gì? `int arr[5]; for(int i=0; i<5; i++) { std::cin >> arr[i]; }`
a)
In ra 5 số từ mảng
b)
Nhập 5 số nguyên từ người dùng và lưu vào mảng
c)
Khởi tạo mảng với 5 số 0
d)
Sao chép mảng
89.
Để lặp qua tất cả các phần tử của một mảng `arr` có `SIZE` phần tử, vòng lặp `for` nào là đúng nhất?
a)
`for(int i = 0; i < SIZE; i++)`
b)
`for(int i = 1; i <= SIZE; i++)`
c)
`for(int i = 0; i <= SIZE; i++)`
d)
`for(int i = 0; i < SIZE - 1; i++)`
90.
Vai trò cốt lõi nhất của việc học ngôn ngữ lập trình đối với sinh viên IT là gì?
a)
Chỉ để viết phần mềm và ứng dụng.
b)
Phát triển tư duy logic và kỹ năng giải quyết vấn đề một cách có hệ thống.
c)
Để có thể sử dụng thành thạo máy tính và các phần mềm văn phòng.
d)
Để trở thành một hacker chuyên nghiệp.
91.
Tại sao việc hiểu các khái niệm lập trình cơ bản (biến, vòng lặp, điều kiện) lại quan trọng ngay cả khi bạn không theo chuyên ngành phát triển phần mềm?
a)
Vì nó không quan trọng, chỉ chuyên ngành phần mềm mới cần.
b)
Vì các khái niệm này là nền tảng cho việc tự động hóa tác vụ và viết kịch bản (scripting) trong mọi lĩnh vực IT.
c)
Để có thể sửa chữa phần cứng máy tính khi gặp sự cố.
d)
Để giúp bạn thiết kế giao diện đồ họa đẹp hơn.
92.
Học nhiều hơn một ngôn ngữ lập trình mang lại lợi ích chính nào cho sinh viên IT?
a)
Không có lợi ích gì, chỉ cần thành thạo một ngôn ngữ là đủ.
b)
Chỉ để làm cho CV (hồ sơ xin việc) trông ấn tượng hơn.
c)
Giúp hiểu sâu hơn về các mô hình (paradigm) lập trình khác nhau và tăng khả năng thích ứng với công nghệ mới.
d)
Để có thể viết cùng một chương trình theo nhiều cách khác nhau mà không có mục đích.
93.
Kiến thức lập trình hỗ trợ như thế nào cho một chuyên gia an ninh mạng (cybersecurity)?
a)
Họ không cần biết lập trình, chỉ cần dùng các công cụ có sẵn.
b)
Để viết các kịch bản tự động hóa việc quét lỗ hổng và phân tích mã độc.
c)
Chỉ để có thể bẻ khóa phần mềm.
d)
Để thiết kế website cho công ty.
94.
Ngôn ngữ lập trình được ví như 'công cụ', còn 'tư duy thuật toán' được ví như...?
a)
Một công cụ khác.
b)
Sản phẩm cuối cùng.
c)
Bản thiết kế hoặc quy trình giải quyết vấn đề.
d)
Lỗi của chương trình.
95.
Tại sao sinh viên ngành Mạng máy tính (Networking) vẫn cần học lập trình?
a)
Để phát triển các hệ điều hành mạng.
b)
Để tự động hóa cấu hình thiết bị và giám sát hệ thống mạng bằng các kịch bản.
c)
Họ không thực sự cần học lập trình.
d)
Để thiết kế phần cứng cho router và switch.
96.
Việc học và hiểu một ngôn ngữ lập trình cấp thấp như C/C++ mang lại lợi ích gì so với chỉ học các ngôn ngữ cấp cao như Python?
a)
Không có lợi ích gì, C/C++ đã lỗi thời.
b)
Giúp viết code nhanh hơn.
c)
Giúp hiểu rõ hơn về cách máy tính hoạt động ở mức độ sâu, như quản lý bộ nhớ và tối ưu hóa hiệu năng.
d)
Chỉ hữu ích cho việc lập trình game.
97.
Vai trò của lập trình trong lĩnh vực Khoa học dữ liệu (Data Science) là gì?
a)
Chỉ để tạo các biểu đồ và đồ thị.
b)
Là công cụ chính để thu thập, làm sạch, phân tích dữ liệu và xây dựng các mô hình học máy.
c)
Không quan trọng bằng kiến thức về thống kê.
d)
Chỉ dùng để lưu trữ dữ liệu trong cơ sở dữ liệu.
98.
Một sinh viên IT không có kỹ năng lập trình sẽ gặp phải hạn chế lớn nhất nào khi đi làm?
a)
Khó khăn trong việc giao tiếp với đồng nghiệp.
b)
Không thể cài đặt phần mềm.
c)
Hạn chế khả năng giải quyết các vấn đề phức tạp và thiếu khả năng tự động hóa công việc.
d)
Không thể sử dụng internet hiệu quả.
99.
Lựa chọn nào mô tả đúng nhất mối quan hệ giữa "Ngôn ngữ lập trình" và "Công nghệ thông tin"?
a)
Ngôn ngữ lập trình là một phần nhỏ và không quan trọng của Công nghệ thông tin.
b)
Công nghệ thông tin chỉ là việc sử dụng các sản phẩm được tạo ra từ ngôn ngữ lập trình.
c)
Ngôn ngữ lập trình là ngôn ngữ giao tiếp cốt lõi, là công cụ để xây dựng, điều khiển và tạo ra các giải pháp trong lĩnh vực Công nghệ thông tin.
d)
Hai khái niệm này hoàn toàn không liên quan đến nhau.