wayground logo

Free Printable Worksheets

NEW

Font size

S
M
L
XL
Worksheets

Lập trình C Bản Phao 1

Total questions: 77

Worksheet time: 39mins

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 dùng để 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)

#import

b)

#include

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 là 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 bằng ký tự nào dưới đây?

a)

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

b)

Chữ cái hoặc số

c)

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

d)

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

15.

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

a)

const

b)

char

c)

int

d)

static

16.

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

a)

sum1

b)

float

c)

numberOfItems

d)

_totalAmount

17.

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

a)

32

b)

28

c)

34

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)

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

b)

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

c)

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

d)

Sử dụng từ khóa và định danh một cách thay thế

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)

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

b)

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

c)

Là cùng một biến

d)

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

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)

int

c)

volatile

d)

const

22.

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

a)

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

b)

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

c)

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

d)

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

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ư

24.

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

a)

Tìm kiếm trên internet

b)

Cả ba đều đúng

c)

Chạy ứng dụng

d)

Chơi nhạc

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 tài liệu và phần liên kết

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 định nghĩa hàm do người dùng định nghĩa

26.

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

a)

Chữ cái

b)

Số

c)

Dấu chấm phẩy

d)

Dấu gạch dưới

27.

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

a)

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

b)

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

c)

Một bộ nhớ

d)

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

28.

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

a)

PIC18

b)

PIC32

c)

PIC16

d)

PIC24

29.

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

a)

25

b)

40

c)

33

d)

20

30.

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

a)

EEPROM

b)

SRAM

c)

Flash

d)

DRAM

31.

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

a)

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

b)

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

c)

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

d)

Cung cấp nguồn cho vi điều khiể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

d)

Khởi tạo bộ định thời

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.

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.

Để 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.

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.

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á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.

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.

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.

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.

Toán tử + trong C là loại toán tử gì?

a)

Số học

b)

Logic

c)

Quan hệ

d)

Gán

64.

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ị

65.

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

a)

1

b)

2

c)

0

d)

5

66.

Toán tử && là loại toán tử gì?

a)

Phép gán

b)

Logic

c)

Số học

d)

Quan hệ

67.

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;

68.

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ị của biến

d)

Xóa giá trị của biến

69.

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

70.

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

71.

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ị

72.

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

73.

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

74.

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

75.

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

76.

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 tham số

c)

Luôn phải có 2 tham số

d)

Không thể có tham số

77.

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