wayground logo

Free Printable Worksheets

Font size

S
M
L
XL
Worksheets

lập trình c

Total questions: 158

Worksheet time: 1hrs 19mins

Name
Class
Date
1.

Ngôn ngữ lập trình c được phát triển vào thời gian nào?

a)

1972

b)

1960

c)

1995

d)

1985

2.

Ký hiệu nào thường được dùng để biểu thị điểm bắt đầu trong sơ đồ thuật giải

a)

Hình oval

b)

Hình tròn

c)

Hình chữ nhật

d)

Hình thoi

3.

trong sơ đồ thuật giải, biểu tượng hình chữ nhật thường dugf để biểu thị cho bước nào

a)

Xử lý hoặc tính toán

b)

Điểm bắt đầu hoặc kết thúc

c)

Quyết định hoặc rẽ nhánh

d)

Lặp lại

4.

Trong lưu đồ thuật giải, hàm thường được biểu diễn bằng hình nào

a)

Hình oval

b)

Hình thoi

c)

Hình chữ nhật có hai thanh bên

d)

Hình tam giác

5.

Một chương trình C cơ bản thường bắt đầu bằng hàm nào ?

a)

void

b)

start( )

c)

int

d)

main( )

6.

câu lệnh nào cần được đặt ở cuối mỗi dòng lệnh trong C để chương trình hiểu rằng đó là một lệnh kết thúc ?

a)

Dấu phẩy ,

b)

Dấu chấm phẩy ;

c)

Dấu chấm .

d)

Dấu hai chấm :

7.

Trong C, thư viện chuẩn được khai báo bằng câu lệnh nào ?

a)

#include

b)

#import

c)

#using

d)

#define

8.

Trong ngôn ngữ C, chú thích một dòng được bắt đầu bằng ký hiệu nào ?

a)

//

b)

/

c)

%

d)

#

9.

Phần chú thích trong mã nguồn có tác dụng gì ?

a)

Làm thay đổi kết quả của chương trình

b)

Tăng kích thước của mã máy

c)

Giúp người đọc mã hiểu rõ hơn về mã lệnh

d)

Giúp chương trình chạy nhanh hơn

10.

Trong ngôn ngữ C, từ khóa nào dưới đây không phải từ khóa hợp lệ ?

a)

int

b)

main

c)

return

d)

boolean

11.

Dòng khai báo nào dưới đây là sai cú pháp ?

a)

int 2value = 5;

b)

int value2 = 20;

c)

int VALUE = 15;

d)

int_value = 10;

12.

Câu khai báo nào dưới đây là đúng trong ngôn ngữ C ?

a)

int 1stNumber = 10;

b)

int first Number = 10;

c)

int float = 10;

d)

int first_number = 10;

13.

Chú thích nhiều dòng trong C được đặt giữa các ký hiệu nào ?

a)

<.....>

b)

//......//

c)

(....)

d)

/...../

14.

Định danh trong C có thể bắt đầu hợp lệ bằng ký tự nào?

a)

Bất kỳ ký tự đặc biệt

b)

Chữ cái hoặc số

c)

Số hoặc dấu gạch dưới

d)

Ký tự chữ cái hoặc dấu gạch dưới

15.

Trong ngôn ngữ C, từ khóa nào dùng để khai báo hằng số ?

a)

static

b)

char

c)

const

d)

int

16.

Trong các tên biến sau, Tên biến nào KHÔNG hợp lệ trong ngôn ngữ C?

a)

_totalAmount

b)

float

c)

numberOfItems

d)

sum1

17.

Tổng cộng có bao nhiêu từ khóa trong ngôn ngữ C ?

a)

34

b)

28

c)

32

d)

30

18.

Từ khóa trong ngôn ngữ C phải được viết bằng cách nào?

a)

Chữ hoa và chữ thường

b)

Không quan trọng

c)

Chữ thường

d)

Chữ hoa

19.

Khi biên dịch, trình biên dịch C sẽ xử lý thế nào nếu một định danh trùng với từ khóa của ngôn ngữ C?

a)

Coi như tên hợp lệ và tiếp tục

b)

Tạo một biến mới và bỏ qua từ khóa

c)

Báo lỗi và dừng quá trình biên dịch

d)

Tự động đổi tên định danh để tránh xung đột

20.

Trong ngôn ngữ C, các biến có chữ hoa và chữ thường, chẳng hạn Variable và variable, sẽ được hiểu như thế nào?

a)

Là hai biến khác nhau vì C phân biệt chữ hoa chữ thường

b)

Được hợp nhất thành một biến duy nhất

c)

Là biến trùng tên nên sẽ báo lỗi biên dịch

d)

Là cùng một biến

21.

Trong ngôn ngữ C, từ khóa nào dưới đây không được phép kết hợp với bất kỳ từ khóa nào khác?

a)

return

b)

const

c)

volatile

d)

int

22.

Trong một chương trình C, nếu không khai báo #include<stdio.h> , điều gì sẽ xảy ra khi gọi hàm printf()?

a)

Trình biên dịch sẽ tự động thêm thư viện

b)

Chương trình sẽ biên dịch nhưng printf() sẽ không hoạt động đúng cách

c)

printf() vẫn hoạt động bình thường do nó là một hàm chuẩn

d)

Trình biên dịch sẽ báo lỗi không tìm thấy định nghĩa của printf()

23.

Trong chương trình C, thứ tự nào dưới đây là chính xác cho cấu trúc của một tệp mã nguồn .c?

a)

Khai báo biến toàn cục, định nghĩa hàm main, khai báo thư viện

b)

Khai báo thư viện, khai báo biến toàn cục, định nghĩa hàm main

c)

Khai báo thư viện, định nghĩa hàm main, khai báo biến toàn cục

d)

Định nghĩa hàm main, khai báo thư viện, khai báo biến toàn cục

24.

Máy tính có thể sử dụng thuật toán để làm gì?

a)

Cả ba đều đúng

b)

Tìm kiếm trên internet

c)

Chơi nhạc

d)

Chạy ứng dụng

25.

Phần định nghĩa hàm chính trong chương trình C chứa phần nào?

a)

Phần định nghĩa hàm do người dùng định nghĩa

b)

Phần định nghĩa và phần khai báo toàn cục

c)

Phần khai báo và phần thực thi

d)

Phần tài liệu và phần liên kết

26.

Ký tự nào không thể được sử dụng trong định danh?

a)

Số

b)

Dấu chấm phẩy

c)

Dấu gạch dưới

d)

Chữ cái

27.

PIC16 là gì trong hệ thống vi điều khiển?

a)

Một loại tín hiệu

b)

Một bộ nhớ

c)

Một dòng vi điều khiển

d)

Một loại cảm biến

28.

PIC16F877A thuộc dòng vi điều khiển nào?

a)

PIC32

b)

PIC24

c)

PIC18

d)

PIC16

29.

Vi điều khiển PIC16F877A có bao nhiêu chân I/O (Input/Output)?

a)

33

b)

40

c)

25

d)

20

30.

Trong PIC16F877A, bộ nhớ chương trình là loại bộ nhớ nào?

a)

DRAM

b)

SRAM

c)

Flash

d)

EEPROM

31.

Bộ nhớ EEPROM trên PIC16F877A có tác dụng gì?

a)

Cung cấp nguồn cho vi điều khiển

b)

Tăng tốc độ xử lý của vi điều khiển

c)

Chứa mã chương trình chính

d)

Lưu trữ dữ liệu tạm thời khi mất nguồn

32.

Cổng nào sau đây được sử dụng để truyền đọc tín hiệu tương tự (Analog) trong điều khiển PIC16F877A?

a)

PORTA

b)

PORTB

c)

PORTC

d)

PORTD

33.

CCSC là gì trong lĩnh vực lập trình vi điều khiển?

a)

Một loại vi điều khiển

b)

Một trình biên dịch và môi trường lập trình cho PIC

c)

Một thiết bị ngoại vi

d)

Một bộ định thời

34.

Phần mềm CCSC chủ yếu hỗ trợ lập trình cho dòng vi điều khiển nào?

a)

AVR

b)

ARM

c)

PIC

d)

8051

35.

Vi điều khiển PIC16F877A có bao nhiêu chân có thể cấu hình cho chức năng ngắt ngoài?

a)

1

b)

2

c)

3

d)

4

36.

Tốc độ tối đa của xung nhịp (clock) mà PIC16F877A có thể hoạt động là bao nhiêu?

a)

10 MHz

b)

20 MHz

c)

25 MHz

d)

40 MHz

37.

Trong vi điều khiển PIC16F877A, chế độ Sleep có tác dụng gì?

a)

Ngắt toàn bộ hoạt động của vi điều khiển

b)

Giảm thiểu năng lượng tiêu thụ khi không có tác vụ cần thiết

c)

Tăng tốc độ xử lý của vi điều khiển

d)

Tăng cường độ sáng của các chân I/O

38.

Thanh ghi nào được sử dụng để cấu hình các bit điều khiển cổng đầu vào/ra (I/O) trên PIC16F877A?

a)

TRIS

b)

PORT

c)

INTCON

d)

STATUS

39.

Bộ định thời Timer2 của PIC16F877A thường được sử dụng cho ứng dụng nào sau đây?

a)

Điều khiển các tín hiệu số

b)

Điều chế độ rộng xung PWM

c)

Quản lý bộ nhớ chương trình

d)

Điều chỉnh tần số xung nhịp

40.

PIC16F877A hỗ trợ bao nhiêu bit trong bộ điều khiển tín hiệu tương tự sang số (ADC)?

a)

8

b)

10

c)

12

d)

14

41.

Vi điều khiển PIC16F877A có bao nhiêu bộ định thời độc lập (Timers)?

a)

2

b)

3

c)

4

d)

5

42.

Trong PIC16F877A, tín hiệu xuất xung PWM thường được điều khiển trên cổng nào?

a)

PORTA

b)

PORTB

c)

PORTC

d)

PORTD

43.

PIC16F877A có bao nhiêu kênh giao tiếp ADC để kết nối với các cảm biến tương tự?

a)

5

b)

6

c)

8

d)

10

44.

Loại bộ nhớ nào trên PIC16F877A dùng để lưu dữ liệu tạm thời trong quá trình chương trình đang chạy?

a)

Flash

b)

EEPROM

c)

RAM

d)

Cache

45.

Chân nào của PIC16F877A được dùng để đưa tín hiệu xung nhịp vào khi sử dụng bộ dao động ngoài?

a)

MCLR

b)

OSC1 và OSC2

c)

T1CKI

d)

RA0 và RA1

46.

Trong PIC16F877A, bộ định thời nào có độ dài 16-bit?

a)

Timer0

b)

Timer1

c)

Timer2

d)

Timer3

47.

Cổng PORTA trên PIC16F877A có thể hỗ trợ bao nhiêu kênh đầu vào cho ADC?

a)

3

b)

4

c)

5

d)

6

48.

Chức năng của thanh ghi TRISA trong PIC16F877A là gì?

a)

Đọc dữ liệu từ PORTA

b)

Ghi dữ liệu vào PORTA

c)

Cấu hình hướng của các chân PORTA

49.

Trong PIC16F877A, nếu muốn chuyển tất cả các chân PORTB thành đầu vào, cần thiết lập các bit nào trong thanh ghi TRISB?

a)

Đặt tất cả các bit trong TRISB là 0

b)

Đặt tất cả các bit trong TRISB là 1

c)

Đặt tất cả các bit trong PORTB là 0

d)

Đặt tất cả các bit trong PORTB là 1

50.

Chế độ PWM (Pulse Width Modulation) của PIC16F877A thường được ứng dụng cho điều khiển gì?

a)

Điều khiển động cơ và điều chỉnh độ sáng LED

b)

Gửi và nhận dữ liệu UART

c)

Đo nhiệt độ và độ ẩm

d)

Đếm xung tín hiệu đầu vào

51.

Tín hiệu PWM trong PIC16F877A được tạo ra bởi module nào?

a)

ADC

b)

USART

c)

CCP

d)

TMR0

52.

Trong PIC16F877A, chế độ ngắt ngoại vi (external interrupt) có thể được kích hoạt trên chân nào?

a)

RB7

b)

RA0

c)

INT (RB0)

d)

RD0

53.

Kiểu dữ liệu float trong C dùng để lưu trữ loại dữ liệu nào?

a)

Số nguyên

b)

Số thực

c)

Ký tự

d)

Chuỗi ký tự

54.

Kiểu dữ liệu char lưu trữ giá trị nào sau đây?

a)

Số nguyên lớn

b)

Số thực

c)

Ký tự đơn

d)

Chuỗi ký tự

55.

Câu 55: int là từ khóa khai báo kiểu dữ liệu nào?

a)

Số nguyên

b)

Số thực

c)

Ký tự

d)

Số phức

56.

Câu 56: Để khai báo số thực trong C, bạn dùng từ khóa nào?

a)

int

b)

float

c)

char

d)

bool

57.

Câu 57: Biến là gì trong ngôn ngữ lập trình C?

a)

Giá trị không thay đổi

b)

Giá trị có thể thay đổi trong quá trình thực thi

c)

Một từ khóa

d)

Một kiểu dữ liệu

58.

Câu 58: Hằng số trong C được khai báo với từ khóa nào?

a)

const

b)

var

c)

final

d)

let

59.

Câu 59: Cách khai báo biến x có giá trị nguyên 10 là gì?

a)

int x = 10;

b)

float x = 10;

c)

char x = 10;

d)

double x = 10;

60.

Câu 60: Biến y kiểu số thực có thể khai báo như thế nào?

a)

int y = 5.0;

b)

float y = 5.0;

c)

char y = 5.0;

d)

bool y = 5.0;

61.

Câu 61: Biến PI không thay đổi giá trị nên được khai báo như thế nào?

a)

int PI = 3.14;

b)

const float PI = 3.14;

c)

char PI = 3.14;

d)

var PI = 3.14;

62.

Câu 62: Toán tử - trong C là loại toán tử gì?

a)

Số học

b)

Logic

c)

Quan hệ

d)

Gán

63.

Câu 63: Toán tử == trong C dùng để làm gì?

a)

So sánh bằng

b)

Phép cộng

c)

Phép gán

d)

Tăng giá trị

64.

Câu 64: Kết quả của phép toán 5 % 2 là bao nhiêu?

a)

1

b)

2

c)

0

d)

5

65.

Câu 65: Toán tử && là loại toán tử gì?

a)

Phép gán

b)

Logic

c)

Số học

d)

Quan hệ

66.

Câu 66: Phép toán x += 1 tương đương với lệnh nào?

a)

x = x + 1;

b)

x = x - 1;

c)

x = x * 1;

d)

x = x / 1;

67.

Câu 67: Toán tử ++ dùng để làm gì?

a)

Giảm giá trị của biến

b)

Tăng giá trị của biến

c)

So sánh giá trị

d)

Xóa giá trị

68.

Câu 68: Lệnh if trong C dùng để làm gì?

a)

Chạy một đoạn mã khi điều kiện đúng

b)

Lặp lại mã

c)

Khai báo biến

d)

Kết thúc chương trình

69.

Câu 69: Lệnh for thường được dùng để làm gì?

a)

Lặp lại đoạn mã với số lần xác định

b)

Kiểm tra điều kiện

c)

Kết thúc chương trình

d)

Nhập dữ liệu

70.

Câu 70: Hàm printf() dùng để làm gì?

a)

Nhập dữ liệu

b)

Xuất dữ liệu

c)

So sánh giá trị

d)

Gán giá trị

71.

Câu 71: Lệnh switch thường dùng với loại biến nào?

a)

Chuỗi

b)

Số nguyên hoặc ký tự

c)

Số thực

d)

Mảng

72.

Câu 72: Một hàm trong C bắt đầu bằng từ khóa nào?

a)

int

b)

float

c)

void

d)

Tất cả các đáp án trên đều có thể đúng

73.

Câu 73: Từ khóa return trong hàm dùng để làm gì?

a)

Kết thúc chương trình

b)

Trả về giá trị từ hàm

c)

Khởi tạo biến

d)

Lặp lại lệnh

74.

Câu 74: Một hàm không trả về giá trị nào sẽ được khai báo với kiểu gì?

a)

int

b)

void

c)

char

d)

float

75.

Câu 75: Trong C, hàm có thể có bao nhiêu tham số?

a)

0 hoặc nhiều hơn

b)

Luôn phải có 1

c)

Luôn phải có 2

d)

Không thể có tham số

76.

Câu 76: Câu lệnh void printHello() định nghĩa một hàm mà:

a)

Trả về một số nguyên

b)

Trả về một chuỗi

c)

Không trả về giá trị nào

d)

Trả về một số thực

77.

Câu 77: Khai báo mảng int arr[5]; sẽ tạo ra bao nhiêu phần tử?

a)

4

b)

5

c)

6

d)

Không xác định

78.

Câu 78: Chỉ mục đầu tiên của mảng trong C là bao nhiêu?

a)

-1

b)

0

c)

1

d)

2

79.

Câu 79: Để truy cập phần tử thứ 3 trong mảng arr, bạn dùng cú pháp nào?

a)

arr[2]

b)

arr[3]

c)

arr[1]

d)

arr[4]

80.

Câu 80: Mảng có thể chứa loại dữ liệu nào?

a)

Số nguyên

b)

Số thực

c)

Ký tự

d)

Tất cả các loại trên

81.

Câu 81: Khai báo char str[10]; là để tạo ra một mảng chứa:

a)

Số nguyên

b)

Số thực

c)

Ký tự

d)

Hàm

82.

Câu 82: Con trỏ trong C là gì?

a)

Biến lưu trữ giá trị trực tiếp

b)

Biến lưu trữ địa chỉ của biến khác

c)

Một hàm

d)

Một hằng

83.

Câu 83: Toán tử & trong C được dùng để:

a)

Tăng giá trị biến

b)

Lấy địa chỉ của biến

c)

Gán giá trị cho biến

d)

Khai báo biến

84.

Khi khai báo int *ptr;, ptr là:

a)

Một số nguyên

b)

Một con trỏ đến số nguyên

c)

Một mảng

d)

Một hàm

85.

Một mảng trong C có thể lưu trữ:

a)

Các giá trị cùng kiểu dữ liệu

b)

Các giá trị khác kiểu

c)

Giá trị bất kỳ

d)

Các giá trị ngẫu nhiên

86.

Hàm scanf() trong C được dùng để:

a)

Nhập dữ liệu từ người dùng

b)

Xuất dữ liệu ra màn hình

87.

Để khai báo một chuỗi trong C, bạn dùng kiểu dữ liệu nào?

a)

int

b)

float

c)

char[]

d)

double

88.

Phép toán số học nào trả về phần dư của phép chia trong C?

a)

+

b)

-

c)

%

d)

/

89.

Phép toán tăng giá trị một biến lên 1 đơn vị là gì?

a)

x - 1

b)

x++

c)

++x

d)

Cả B và C

90.

Hàm nào được sử dụng để in dữ liệu ra màn hình?

a)

scanf()

b)

printf()

c)

getch()

d)

putchar()

91.

Trong C, ký hiệu nào biểu thị địa chỉ của biến?

a)

*

b)

&

c)

%

d)

@

92.

Hàm nào được sử dụng để nhận đầu vào từ bàn phím trong C?

a)

printf()

b)

scanf()

c)

input()

d)

read()

93.

Lệnh nào được sử dụng để dừng vòng lặp trong C?

a)

continue

b)

break

c)

return

d)

stop

94.

Từ khóa nào được sử dụng để kết thúc hàm trong C và trả giá trị?

a)

return

b)

end

c)

break

d)

stop

95.

Ký tự kết thúc chuỗi trong ngôn ngữ C là gì?

a)

'\0'

b)

'\n'

c)

'\t'

d)

''

96.

Câu lệnh for nào trong C là đúng?

a)

for(int i = 0,i<10;i++)

b)

for(i = 0,i<10,i++)

c)

for i=0,i<10;i++

d)

for i in ranger(10)

97.

Một vòng lặp while trong C sẽ chạy đến khi nào

a)

Điều kiện kiểm tra là false

b)

Điều kiện kiểm tra là true

c)

Số vòng lặp đạt đến một giá trị nhất định

d)

Tất cả các trường hợp trên

98.

Phép gán nào là đúng trong C

a)

5 = x;

b)

x = 5;

c)

x == 5 ;

d)

x => 5;

99.

Kiểu dữ liệu double trong C thường dùng để lưu

a)

Số nguyên nhỏ

b)

Số nguyên lớn

c)

Số thực có độ chính xác cao

d)

Ký tự

100.

Trong C, a[0] biểu thị điều gì?

a)

Phần tử đầu tiên của mảng a

b)

Kích thước của mảng a

c)

Phần tử cuối cùng của mảng a

d)

Địa chỉ của mảng a

101.

Toán tử | trong C được gọi là gì?

a)

Toán tử AND

b)

Toán tử OR

c)

Toán tử NOT

d)

Toán tử XOR

102.

Một biến cục bộ (local variable) trong C chỉ có hiệu lực ở đâu?

a)

Trong toàn bộ chương trình

b)

Trong tệp chứa nó

c)

Trong hàm hoặc khối lệnh chứa nó

d)

Tất cả các trường hợp trên

103.

Hàm printf("%d", x); dùng để làm gì?

a)

In ký tự x ra màn hình

b)

In giá trị của x dạng số nguyên

c)

In địa chỉ của x

d)

In ký tự dạng số

104.

Trong mảng int arr[5] = {1, 2, 3, 4, 5}; giá trị của arr[2] là gì?

a)

2

b)

3

c)

4

d)

5

105.

Câu lệnh nào luôn thực hiện ít nhất một lần trong C?

a)

while

b)

do while

c)

for

106.

Biến toàn cục có đặc điểm gì?

a)

Có thể truy cập từ bất kỳ hàm nào trong chương trình

b)

Chỉ tồn tại trong khối khai báo

c)

Chỉ có hiệu lực trong tệp chứa nó

d)

Không được sử dụng ngoài hàm chính

107.

Câu lệnh break thường được sử dụng trong:

a)

Vòng lặp

b)

Câu lệnh switch

c)

Cả A và B

d)

Không được sử dụng

108.

Đâu là cách khai báo đúng để định nghĩa một hằng số trong C?

a)

const int x = 5;

b)

define x = 5;

c)

constant x = 5;

d)

static int x = 5;

109.

Câu lệnh nào khai báo đúng một biến kiểu số nguyên không âm?

a)

int x;

b)

unsigned int x;

c)

signed int x;

d)

float x;

110.

Đâu là kích thước thông thường của kiểu dữ liệu float trong bộ nhớ?

a)

2 byte

b)

4 byte

c)

8 byte

d)

16 byte

111.

Giá trị nào là giá trị hợp lệ của kiểu dữ liệu char trong C?

a)

256

b)

'A'

c)

"A"

d)

3.14

112.

Câu lệnh int x, y = 5; trong C có nghĩa là gì ?

a)

Khai báo hai biến x và y có giá trị ban đầu là 5

b)

Khai báo x và gán y = 5

c)

Khai báo y và gán x bằng 5

d)

Lỗi cú pháp

113.

Khai báo nào là đúng để tạo một biến mảng số nguyên có kích thước 10?

a)

int a[10];

b)

int[10] a;

c)

static int a[10];

d)

auto int a[10];

114.

Khai báo nào sau đây là hợp lệ trong C?

a)

int x; float y;

b)

int x, float y;

c)

x = 5; float y = 3.14;

d)

char = 'A';

115.

Phép gán nào là hợp lệ trong C?

a)

x + 5 = y;

b)

y = x + 5;

c)

x = y - z = 5;

d)

x + y = 5;

116.

Trong biểu thức x = (5 > 3) ? 10 : 20;, giá trị của x là bao nhiêu?

a)

10

b)

20

c)

5

d)

3

117.

Phép toán ~x trong C tương đương với:

a)

Phép NOT logic của x

b)

Phép phủ định từng bit của x

c)

Phép XOR của x

d)

Phép chia từng bit của x

118.

Nếu int ptr, x = 10; và ptr = &x;, giá trị của ptr là gì?

a)

Địa chỉ của biến x

b)

10

c)

Lỗi biên dịch

d)

Không xác định

119.

Khi khai báo const int x = 10;, hành vi nào là không được phép?

a)

Gán lại giá trị cho x

b)

Sử dụng x trong biểu thức toán học

c)

Lấy địa chỉ của x bằng toán tử &

d)

In giá trị của x

120.

Sự khác nhau giữa const và #define trong việc khai báo hằng là gì?

a)

const là lệnh thời gian biên dịch, #define là lệnh thời gian chạy

b)

const có kiểu dữ liệu, còn #define không có

c)

#define chỉ dùng cho số nguyên, còn const dùng cho mọi loại dữ liệu

d)

Không có sự khác biệt nào

121.

Câu lệnh nào khai báo biến số nguyên x và gán giá trị ban đầu là 10?

a)

x = int 10;

b)

int x = 10;

c)

int x : 10;

d)

x : 10;

122.

Khi sử dụng một hằng số #define PI 3.14, giá trị PI sẽ được xử lý như thế nào trong chương trình?

a)

Thay thế bằng giá trị 3.14 trong quá trình tiền xử lý

b)

Thay thế bằng giá trị 3.14 khi chương trình chạy

c)

Được lưu trữ trong bộ nhớ tại thời gian chạy

d)

Không được sử dụng trong câu lệnh toán học

123.

Khai báo const int MAX = 100; có nghĩa gì?

a)

MAX có thể thay đổi giá trị trong chương trình

b)

MAX là một hằng số nguyên không thể thay đổi giá trị

c)

MAX sẽ tự động tăng giá trị khi sử dụng

d)

MAX không được phép dùng trong biểu thức

124.

Việc khai báo static int x; trong một hàm thực hiện chức năng gì?

a)

Xóa giá trị của biến khi ra khỏi hàm

b)

Lưu giữ giá trị của biến giữa các lần gọi hàm

c)

Tăng hiệu suất chương trình

d)

Chuyển đổi kiểu dữ liệu của biến

125.

Toán tử trong C thực hiên chức năng nào ?

a)

TOán tử AND nhị phân

b)

Toán tử OR nhị phân

c)

Toán tử XOR nhị phân

d)

Toán tử NOT

126.

Kết quả của biểu thức (10 > 5) && (3 <7) tron ngôn ngữ C sẽ là gì?

a)

1

b)

0

c)

Không xác định

d)

Biểu thức lỗi

127.

Khi x=6;y=4,giá trị của biểu thức (x>y)?x:y là gì ?

a)

6

b)

4

c)

không xác định

d)

lỗi biên dịch

128.

Biểu thức 7 >> 1 trong ngôn ngữ C trả về giá trị nào?

a)

3

b)

7

c)

1

d)

14

129.

Trong lệnh switch-case, từ khóa nào được sử dụng để kết thúc một nhánh?

a)

end

b)

break

c)

exit

d)

stop

130.

Đâu là cú pháp đúng của vòng lặp while trong C?

a)

while điều_kiện

b)

while (điều_kiện)

c)

while {điều_kiện}

d)

while điều_kiện {}

131.

Câu lệnh nào được dùng để dừng ngay lập tức một vòng lặp trong C?

a)

exit

b)

continue

c)

break

d)

return

132.

Đâu là cách sử dụng đúng toán tử ba ngôi ? : trong C?

a)

biểu_thức ? kết_quả_1;

b)

biểu_thức : kết_quả_1 : kết_quả_2;

c)

biểu_thức ? kết_quả_1 : kết_quả_2;

d)

biểu_thức ? kết_quả_1 :

133.

Trong C, khai báo một hàm yêu cầu những thành phần nào?

a)

Tên hàm và tham số đầu vào

b)

Kiểu trả về, tên hàm và tham số đầu vào

c)

Tên hàm và kiểu trả về

d)

Chỉ cần tên hàm

134.

Trong C, hàm void được sử dụng để làm gì?

a)

Hàm không có tham số đầu vào

b)

Hàm không trả về giá trị

c)

Hàm chỉ thực hiện phép tính logic

d)

Hàm không cần định nghĩa

135.

Cú pháp đúng để gọi một hàm trong C là gì?

a)

tên_hàm;

b)

tên_hàm();

c)

tên_hàm {}

d)

tên_hàm []

136.

Phạm vi của một biến được khai báo trong một hàm gọi là gì?

a)

Biến toàn cục

b)

Biến tĩnh

c)

Biến địa phương

d)

Biến tổng thể

137.

Câu lệnh nào dưới đây sử dụng đúng từ khóa return trong một hàm?

a)

return giá_trị;

b)

giá_trị return;

c)

return; giá_trị;

d)

giá_trị return giá_trị;

138.

Đâu là cú pháp đúng của định nghĩa hàm trong C?

a)

void tên_hàm { Khối_Lệnh; }

b)

kiểu_trả_về tên_hàm (tham_số) { Khối_Lệnh }

c)

kiểu_trả_về tên_hàm { Khối_Lệnh }

d)

tên_hàm (tham_số) { Khối_Lệnh }

139.

Khi truy cập vào chỉ số ngoài phạm vi của mảng trong C, kết quả sẽ là gì?

a)

Giá trị mặc định là 0

b)

Lỗi biên dịch

c)

Lỗi trong thời gian chạy

d)

Kết quả không xác định

140.

Câu lệnh nào dưới đây dùng để khởi tạo mảng với các giá trị ban đầu?

a)

int arr[3] = {1, 2, 3};

b)

int arr[3] (1, 2, 3);

c)

int arr{1, 2, 3};

d)

int arr[3] = (1, 2, 3);

141.

Khi char str[] = "Hello";, số phần tử của mảng str là bao nhiêu?

a)

4

b)

5

c)

6

d)

Không xác định

142.

Đâu là cú pháp đúng để gán giá trị cho phần tử thứ 2 của mảng arr đã khai báo int arr[5];?

a)

arr[1] = 10;

b)

arr[2] = 10;

c)

arr{1} = 10;

d)

arr{2} = 10;

143.

Nếu mảng arr[3] chứa các giá trị {10, 20, 30}, kết quả của printf("%d", arr[1]); là gì?

a)

10

b)

20

c)

30

d)

Lỗi biên dịch

144.

Nếu x = 3; giá trị của biểu thức (x << 2) là gì?

a)

6

b)

12

c)

1

d)

9

145.

Đoạn mã sau thực hiện chức năng gì?

if (a > b) {

    printf("a lớn hơn b");

} else {

    printf("b lớn hơn hoặc bằng a");

}

a)
  • . Kiểm tra xem a có lớn hơn b không

b)
  • In ra giá trị lớn hơn giữa a và b

c)

So sánh hai biến a và b và in thông báo tương ứng

d)

Lỗi cú pháp

146.

Kết quả của đoạn mã sau là gì?

int a = 5;

if (a > 10)

    printf("a lớn hơn 10");

else

    printf("a nhỏ hơn hoặc bằng 10");

a)
  • In ra "a lớn hơn 10"

b)
  • In ra "a nhỏ hơn hoặc bằng 10"

c)

. Lỗi biên dịch

d)
  • . Không in gì cả

147.

Cú pháp nào duyệt đúng tất cả phần tử của mảng một chiều arr có n phần tử?

a)

for (i = 0; i < n; i++) printf("%d", arr[i]);

b)

for (i = 1; i <= n; i++) printf("%d", arr[i]);

c)

for (i = 0; i <= n; i++) printf("%d", arr[i]);

d)

for (i = 1; i < n; i++) printf("%d", arr[i]);

148.

Toán tử nào dùng để lấy địa chỉ bộ nhớ của biến x trong C?

a)

@x

b)

x

c)

&x

d)

*x

149.

Hằng số ký tự trong C được biểu diễn bằng cách nào?

a)

'A' (nháy đơn)

b)

"A" (nháy kép)

c)

(A) (ngoặc tròn)

d)

[A] (ngoặc vuông)

150.

Khi nào nên dùng biến toàn cục?

a)

Khi cần biến tạm thời trong khối

b)

Khi cần dùng chung cho nhiều hàm

c)

Khi không có biến cục bộ nào

d)

Khi cần phạm vi trong một hàm duy nhất

151.

Phép toán << trong C dùng để làm gì?

a)

Dịch bit sang trái

b)

Chia số nguyên cho hai

c)

Dịch bit sang phải

d)

Nhân số nguyên với hai

152.

Toán tử nào có độ ưu tiên cao nhất trong các lựa chọn sau?

a)

= (gán)

b)

+ (cộng)

c)

- (trừ một ngôi)

d)

( ) (ngoặc đơn)

153.

Giá trị của biểu thức (5 > 3) | (2 > 4) là gì?

a)

0

b)

Lỗi biên dịch

c)

1

d)

Không xác định

154.

Vòng lặp nào chắc chắn thực hiện thân lệnh ít nhất một lần?

a)

do-while

b)

for

c)

Tất cả phương án

d)

while

155.

Trong switch-case của C, kiểu dữ liệu hợp lệ cho biểu thức điều khiển là gì?

a)

Bất kỳ kiểu dữ liệu nào

b)

Mảng một chiều

c)

Số thực dấu chấm động

d)

Ký tự hoặc số nguyên

156.

Khi nào nên dùng lệnh break trong vòng lặp?

a)

Khi muốn bỏ qua phần còn lại của vòng

b)

Khi muốn thoát vòng lặp ngay lập tức

c)

Khi điều kiện vòng lặp sai

d)

Khi muốn quay lại đầu vòng lặp

157.

Cho hàm C: int add(int x, int y){ return x + y; } Gọi add(3,4) trả về giá trị nào?

a)

Không trả về giá trị

b)

7

c)

4

d)

3

158.

Đoạn mã:

int i=0;

while(i<5){

printf("%d ",i);

i+=2;

}

In ra gì?

a)

Không có đầu ra vì vô hạn

b)

0 2 4

c)

0 1 2 3 4

d)

0 2 4 6

Similar Resources on Wayground