logo

Trắc nghiệm Tin học 11 học kì 1 có đáp án (Phần 1)

icon_facebook

Câu 1: Hãy chọn phương án ghép phù hợp nhất. Ngôn ngữ lập trình là gì:

A. Phương tiện để soạn thảo văn bản trong đó có chương trình

B. Ngôn ngữ Pascal hoặc C

C. Phương tiện diễn đạt thuật toán để máy tính thực hiện công việc

D. Phương tiện diễn đạt thuật toán

Trả lời: Ngôn ngữ lập trình là ngôn ngữ để viết chương trình diễn đạt thuật toán giúp  máy tính hiểu và thực hiện.

Đáp án: C

Câu 2: Phát biểu nào dưới đây chắc chắn sai?

A. Lập trình là viết chương trình

B. Lập trình và chương trình là hai khái niệm tương đương, đều là cách mô tả thuật toán bằng ngôn ngữ lập trình

C. Chương trình được tạo thành từ tổ hợp các câu lệnh và các khai báo cần thiết về biến, hằng, hàm, …

D. Chương trình chưa chắc là đã đúng nếu cho kết quả đúng với rất nhiều bộ dữ liệu vào.

Trả lời:

+ Lập trình là sử dụng cấu trúc dữ liệu và các câu lệnh của ngôn ngữ lập trình cụ thể để mô tả dữ liệu và diễn đạt các thao tác của thuật toán. Hay lập trình chính là viết chương trình.

+ Chương trình được tạo thành từ tổ hợp các câu lệnh và các khai báo cần thiết về biến, hằng, hàm, …

→Lập trình và chương trình là hai không khái niệm tương đương⇒  Loại B.

Đáp án: B

Câu 3: Phát biểu nào sau đây chắc chắn sai?

A. Để giải bài toán bằng máy tính phải viết chương trình mô tả thuật toán giải bài toán đó

B. Mọi người sử dụng máy tính đều phải biết lập chương trình

C. Máy tính điện tử có thể chạy các chương trình

D. Một bài toán có thể có nhiều thuật toán để giải

Trả lời:

Lập chương trình là phải biết một hoặc một vài ngôn ngữ lập trình như: Pascal, C. C++…để viết trình. Việc học này thường rất khó và phức tạp vì vậy người sử dụng máy tính đơn thuần không nhất thiết phải biết lập trình mà chỉ việc biết thao tác đơn giản trên máy tính.

Đáp án: B

Câu 4: Phát biểu nào dưới đây là đúng

A. Ngữ nghĩa trong ngôn ngữ lập trình phụ thuộc nhiều vào ý muốn của người lập trình tạo ra

B. Mỗi ngôn ngữ lập trình đều có 3 thành phần là bảng chữ cái, cú pháp và ngữ nghĩa, nên việc khai báo kiểu dữ liệu, hằng, biến,… được áp dụng chung như nhau cho mọi ngôn ngữ lập trình

C. Cú pháp của một ngôn ngữ lập trình là bộ quy tắc cho phép người lập trình viết chương trình trên ngôn ngữ đó

D. Các ngôn ngữ lập trình đều có chung một bộ chữ cái

Trả lời: Cú pháp của một ngôn ngữ lập trình là bộ quy tắc cho phép người lập trình viết chương trình trên ngôn ngữ đó. Dựa vào chúng, người lập trình và chương trình dịch biết được tổ hợp nào của các kí tự trong bảng ch ữ cái là hợp lệ và tổ hợp nào là không hợp lệ. Nhờ đó, có thể mô tả chính xác thuật toán để máy thực hiện.

Đáp án: C

Câu 5: Chọn phát biểu đúng trong các phát biểu dưới đây:

A. Ngoài bảng chữ cái, cú pháp, ngữ nghĩa, một ngôn ngữ lập trình còn có các quy tắc để khai báo biến, hằng,…

B. Ngoài bảng chữ cái, có thể dùng các kí tự thông dụng trong toán học để viết chương trình

C. Chương trình có lỗi cú pháp có thể được dịch ra ngôn ngữ máy nhưng không thực hiện được

D. Cú pháp là bộ quy tắc dùng để viết chương trình

Trả lời:

Cú pháp là bộ quy tắc dùng để viết chương trình. Dựa vào chúng, người lập trình và chương trình dịch biết được tổ hợp nào của các kí tự trong bảng ch ữ cái là hợp lệ và tổ hợp nào là không hợp lệ. Nhờ đó, có thể mô tả chính xác thuật toán để máy thực hiện.

Đáp án: D

Câu 6: Phát biểu nào dưới đây là hợp lí nhất khi nói về biến?

A. Biến là đại lượng nhận giá trị trước khi chương trình thực hiện

B. Biến là đại lượng được đặt tên và có giá trị thay đổi trong quá trình thực hiện chương trình

C. Biến có thể lưu trữ nhiều loại giá trị khác nhau

D. Biến có thể đặt hoặc không đặt tên gọi

Trả lời: Biến là đại lượng được đặt tên, dùng để lưu trữ giá trị và có giá trị thay đổi trong quá trình thực hiện chương trình.

Đáp án: B

Câu 7: Phát biểu nào sau đây là đúng?

A. Phần tên chương trình nhất thiết phải có

B. Phần khai báo bắt buộc phải có

C. Phần thân chương trình nhất thiết phải có

D. Phần thân chương trình có thể có hoặc không

Trả lời:

Cấu trúc một chương trình gồm:

+ Phần khai báo : có thể có hoặc không

+ Phần thân: Bắt buộc phải có

Đáp án: C

Câu 8: Từ khóa USES dùng để:

A. Khai báo tên chương trình

B. Khai báo hằng

C. Khai báo biến

D. Khai báo thư viện

Trả lời:

Mỗi ngôn ngữ lập trình thường có sẵn một số thư viện cung cấp một số chương trình thông dụng đã được lập sẵn. Để sử dụng chương trình đó cần khai báo thư viện chứa nó. Ví dụ trong Pascal từ khóa USES dùng để khai báo thư viện, trong C++ là từ khóa # include.

Đáp án: D

Câu 9: Khai báo hằng nào là đúng trong các khai báo sau:

A. Const A : 50;

B. CONst A=100;

C. Const : A=100;

D. Tất cả đều sai

Trả lời: Khai báo hằng thường được sử dụng cho những giá trị xuất hiện nhiều lần trong chương trình. Cấu trúc khai báo hằng trong Pascal là: Const <tên hằng> = <Giá trị>;

Đáp án: B

Câu 10: Chương trình dịch Pascal sẽ cấp phát bao nhiêu byte bộ nhớ cho các biến trong khai báo sau?

VAR M, N, P: Integer; A. B: Real; C: Longint;

B. 24 byte

C. 22 byte

D. 18 byte

Trả lời:

Kiểu Interger bộ nhớ lưu trữ một giá tri là 2 byte → 3 biến M, N, P cần 3 x 2= 6 byte

Kiểu Real  bộ nhớ lưu trữ một giá tri là 6 byte → 2 biến A. B cần 2 x 6 = 12 byte

Kiểu Longint  bộ nhớ lưu trữ một giá tri là 4 byte → 1 biến C cần 1 x 4 = 4 byte

→ Vậy cần cấp 6+ 12+ 4 = 22 byte bộ nhớ cho các biến.

Đáp án: C

Câu 11: Biến x nhận giá trị nguyên trong đoạn [-300 ; 300], kiểu dữ liệu nào sau đây là phù hợp nhất để khai báo biến x?

A. Longint

B. Integer

C. Word

D. Real

Trả lời:

X thuộc kiểu nguyên (byte, integer, word, longint) nằm trong đoạn [-300 ; 300], kiểu dữ liệu phù hợp nhất để khai báo biến x là kiểu integer vì kiểu này nằm trong đoạn [-32768; 32767].

Đáp án: B

Câu 12: Trong ngôn ngữ lập trình Pascal, giả sử x:= a/b; thì x phải khai báo kiểu dữ liệu nào?

A. Longint

B. integer

C. word

D. real

Trả lời:

X:=a/b; thì x phải khai báo kiểu số thực Real vì a có thể chia hết hoặc không chia hết cho b. Còn các kiểu Longint, word, integer là kiểu số nguyên nên  không được.

Đáp án: D

Câu 13: Khai báo nào sau đây đúng?

A. Var x, y: Integer;

B. Var x, y=Integer;

C. Var x, y Of Integer;

D. Var x, y := Integer;

Trả lời:

Cấu trúc khai báo biến có dạng : var <danh sách biến> : < kiểu dữ liệu> ;

Trong đó danh sách biến được cách nhau bởi dấu phẩy.

Đáp án: A

Câu 14: Danh sách các biến là một hoặc nhiều tên biến, các tên biến được viết cách nhau bởi:

A. Dấu chấm phẩy (;)

B. Dấu phẩy (,)

C. Dấu chấm (.)

D. Dấu hai chấm (:)

Trả lời:

Trong khai báo biến, Danh sách các biến là một hoặc nhiều tên biến, các tên biến được viết cách nhau bởi dấu phẩy (,). Sau từ khóa var có thể khai báo nhiều danh sách biến khác nhau, tức là cấu trúc  <danh sách biến> : < kiểu dữ liệu> ;

 Có thể xuất hiện nhiều lần.

Đáp án: B

Câu 15: Trong Pascal, cú pháp để khai báo biến là:

A. Var < Danh sách biến > = < Kiểu dữ liệu >;

B. Var < Danh sách biến > : < Kiểu dữ liệu >;

C. < Danh sách biến > : < Kiểu dữ liệu >;

D. Var < Danh sách biến >;

Trả lời:

Trong Pascal, Cấu trúc khai báo biến có dạng : Var <danh sách biến> : < kiểu dữ liệu> ;

Trong đó :

+ danh sách biến được cách nhau bởi dấu phẩy.

+ Kiểu dữ liệu thường là một trong các kiểu dữ liệu chuẩn hoặc do người lập trình định nghĩa.

Đáp án: B

Câu 16: Hãy chọn phương án đúng. Biểu thức: 25 mod 3 + 5 / 2 * 3 có giá trị là :

A. 8.0;

B. 15.5;

C. 15.0;

D. 8.5;

Trả lời:

 + Trong  Pascal phép Mod là phép chia lấy phần dư, phép (/) là phép chia, (*) là phép nhân trong toán học.

+ Thứ tự thực hiện: Trong ngoặc trước, nếu không có ngoặc thực hiện nhân, chia, lấy phần nguyên (div), lấy phần dư  (mod) thực hiện trước và cộng, trừ thực hiện sau.

Vậy giá trị của biểu thức là :

25 mod 3 + 5 / 2 * 3 = 1 + 2.5 x 3= 1+ 7.5 = 8.5

Đáp án: D

Câu 17: Những biểu thức nào sau đây có giá trị TRUE ?

A. ( 20 > 19 ) and ( ‘B’ < ‘A’ );

B. ( 4 > 2 ) and not( 4 + 2 < 5 ) or ( 2 >= 4 div 2 );

C. ( 3 < 5 ) or ( 4 + 2 < 5 ) and ( 2 < 4 div 2 );

D. 4 + 2 * ( 3 + 5 ) < 18 div 4 * 4 ;

Trả lời:

Trong pascal phép and, or, not có nghĩa là phép và, hoặc, phủ định trong toán học. vì vậy phép toán 4 > 2→ đúng

Phép toán not( 4 + 2 < 5 ) nghĩa là phủ định của 6 <5 là 6 > 5 → đúng.

Phép toán ( 2 >= 4 div 2 ) nghĩa là 2>=2→ đúng

⇒ Biểu thức có giá trị TRUE (đúng) là ( 4 > 2 ) and not( 4 + 2 < 5 ) or ( 2 >= 4 div 2 );

Đáp án: B

Câu 18: Biểu thức nào sau kiểm tra "n là một số nguyên dương chẵn"?

A. (n>0) and (n mod 2 = 0)

B. (n>0) and (n div 2 = 0)

C. (n>0) and (n mod 2 <> 0)

D. (n>0) and (n mod 2 <> 0)

Trả lời:

N là một số nguyên dương chẵn → n>0 và n chia hết cho 2 hay số dư bằng 0. Tương đương với phép mod trong Pascal ( n mod 2 = 0).

Đáp án: A

Câu 19: Đoạn chương trình sau sẽ hiển thị kết quả:

Begin

Writeln ('Day la lop TIN HOC');

End.

A. 'Day la lop TIN HOC'

B. Không chạy được vì có lỗi

C. Day la lop TIN HOC

D. "Day la lop TINHOC"

Trả lời: Trong Pascal, lệnh Write hoặc Writeln dùng để đưa kết quả ra màn hình và giá trị đó được bao bởi cặp dấu nháy.

Đáp án: A

Câu 20: Cho x là biến thực đã được gán giá trị 12.41235. Để thực hiện lên màn hình nội dung “x=12.41” cần chọn câu lệnh nào sau đây ?

A. Writeln(x);

B. Writeln(x:5);

C. Writeln(x:5:2);

D. Writeln(‘x=’ ,x:5:2);

Trả lời: Trong thủ tục Write hoặc Writeln để đưa kết quả ra màn hình (biến, hằng, biểu thức) có thể có quy cách ra. Đối với kết quả số thực có dạng:

                   : <độ rộng> : <số chữ số thập phân>

Vì x là biến thực đã được gán giá trị 12.41235→ lệnh đúng nhất là Writeln(‘x=’ ,x:5:2);

Đáp án: D

Câu 21: Cho x, y, z là ba biến nguyên. Cách nhập giá trị nào sau đây là sai khi muốn nhập giá trị 3, 4, 5 cho ba biến này từ bàn phím bằng câu lệnh readln(x,y,z); ?

A. Gõ 3, 4, 5 sau đó nhấn phím Enter (giữa hai số liên tiếp gõ dấu phẩy);     

B. Gõ 3, 4, 5 sau đó nhấn phím Enter (giữa hai số liên tiếp gõ một dấu cách);

C. Gõ 3 sau đó nhấn phím Enter rồi gõ 4 sau đó nhấn phím Enter rồi gõ 5 sau đó nhấn phím Enter;

D. Gõ 3 sau đó nhấn phím Tab rồi gõ 4 sau đó nhấn phím Tab rồi gõ 5 sau đó nhấn phím Enter;

Trả lời: Muốn nhập giá trị 3, 4, 5 cho ba biến x, y, z từ bàn phím bằng câu lệnh readln(x,y,z);  ta có thể :

+ Gõ 3, 4, 5 các số cách nhau bởi dấu cách rồi nhấn Enter.

+ Gõ 3 sau đó nhấn phím Enter (hoặc phím Tab) rồi gõ 4 sau đó nhấn phím Enter  (hoặc phím Tab) rồi gõ 5 sau đó nhấn phím Enter;

Đáp án: A

Câu 22: Trong Turbo Pascal, để thoát khỏi phần mềm:

A. Nhấn tổ hợp phím Alt + X

B. Nhấn tổ hợp phím Ctrl + E

C. Nhấn tổ hợp phím Ctrl + X

D. Nhấn tổ hợp phím Alt + E

Trả lời: Trong Turbo Pascal, để thoát khỏi phần mềm nhấn tổ hợp phím Alt + X.

Để đóng một chương trình Alt + F3.

Đáp án: A

Câu 23: Trong Turbo Pascal, để chạy chương trình:

A. Nhấn tổ hợp phím Shift + F9

B. Nhấn phím Ctrl + F9

C. Nhấn tổ hợp phím Ctrl + F7

D. Nhấn tổ hợp phím Alt + F9  

Trả lời: Trong Turbo Pascal, để chạy chương trình ta nhấn tổ hợp phím Ctrl + F9.

Để biên dịch ta nhấn Alt + F9.

Đáp án: B

Câu 24: Trong Turbo Pascal, đang ở cửa sổ chương trình nguồn muốn xem lại màn hình Output:

A. Nhấn tổ hợp phím Alt + F5

B. Nhấn tổ hợp phím Alt + F7

C. Nhấn tổ hợp phím Alt + F6

D. Nhấn tổ hợp phím Alt + F8

Trả lời: Trong Turbo Pascal, đang ở cửa sổ chương trình nguồn muốn xem lại màn hình Output ta nhấn tổ hợp phím Alt + F5.

Đáp án: A

Câu 25. Hãy chọn phương án ghép đúng nhất . Để mô tả cấu trúc rẽ nhánh trong thuật toán, nhiều ngôn ngữ lập trình bậc cao dùng câu lệnh IF – THEN, sau IF là <điều kiện> . Điều kiện là

A. biểu thức lôgic;          

B. biểu thức số học;       

C. biểu thức quan hệ;     

D. một câu lệnh;

Trả lời: Câu lệnh IF – THEN, sau IF là <điều kiện> . Điều kiện là biểu thức lôgic (biể thức cho giá trị đúng hoặc sai)

Đáp án: A

Câu 26. Hãy chọn phương án ghép đúng . Với cấu trúc rẽ nhánh IF <điều kiện> THEN <câu lệnh>, câu lệnh đứng sau THEN được thực hiện khi

A. điều kiện được tính toán xong;               

B. điều kiện được tính toán và cho giá trị đúng;

C. điều kiện không tính được;                     

D. điều kiện được tính toán và cho giá trị sai;

Trả lời: Cấu trúc rẽ nhánh IF <điều kiện> THEN <câu lệnh>, câu lệnh đứng sau THEN được thực hiện khi điều kiện được tính toán và cho giá trị đúng. Nếu sai câu lệnh không được thực hiện.

Đáp án: B

Câu 27. Hãy chọn phương án ghép đúng . Với cấu trúc rẽ nhánh IF <điều kiện>  THEN <câu lệnh 1> ELSE <câu lệnh 2>, câu lệnh 2 được thực hiện khi

A. biểu thức điều kiện đúng và câu lệnh 1 thực hiện xong;        

B. câu lệnh 1 được thực hiện;

C. biểu thức điều kiện sai;                                              

D. biểu thức điều kiện đúng;

Trả lời: Với cấu trúc rẽ nhánh IF <điều kiện>  THEN <câu lệnh 1> ELSE <câu lệnh 2>, Câu lệnh 1 được thực hiện khi điều kiện là đúng, câu lệnh 2 được thực hiện khi biểu thức điều kiện sai.

Đáp án: C

Câu 28: Vòng lặp While – do kết thúc khi nào

A. Khi một điều kiện cho trước được thỏa mãn

B. Khi đủ số vòng lặp

C. Khi tìm được Output

D. Tất cả các phương án

Trả lời: Vòng lặp While – do  là vòng lặp chưa biết trước số lần lặp vì vậy việc lặp chỉ kết thúc khi một điều kiện cho trước được thỏa mãn.

Đáp án: A

Câu 29: Mọi quá trình tính toán đều có thể mô tả và thực hiện dựa trên cấu trúc cơ bản là:

A. Cấu trúc tuần tự

B. Cấu trúc rẽ nhánh

C. Cấu trúc lặp

D. Cả ba cấu trúc

Trả lời: Mọi quá trình tính toán đều có thể mô tả và thực hiện dựa trên cấu trúc cơ bản là cấu trúc tuần tự, cấu trúc rẽ nhánh, cấu trúc lặp. Tùy theo từng bài toán mà lựa chọ cấu trúc cho hợp lí.

Đáp án: D

Câu 30: Tính tống S = 1 + 2 + 3 + … + n + … cho đến khi S>108. Điều kiện nào sau đây cho vòng lặp while – do là đúng:

A. While S>=108 do

B. While S < 108 do

C. While S < 1.0E8 do

D. While S >= E8 do

Trả lời:  Cấu trúc câu lệnh While- do có dạng:

While <điều kiện> do < câu lệnh>;

Ý nghĩa: Câu lệnh được thực hiện khi điều kiện được thỏa mãn. Do vậy mỗi lần thực hiện câu lệnh nó sẽ kiểm tra điều kiện, đúng sẽ thực hiện, sai thì dừng vòng lặp.

Mà điều kiện của bài là S>108 vì vậy nó sẽ kiểm tra S< 108 thì tính tổng đến khi S>108 thì dừng. Trong Pascal S< 108 được viết là S< 1.0E8.

Đáp án: C

icon-date
Xuất bản : 17/11/2021 - Cập nhật : 17/11/2021

Câu hỏi thường gặp

Đánh giá độ hữu ích của bài viết

😓 Thất vọng
🙁 Không hữu ích
😐 Bình thường
🙂 Hữu ích
🤩 Rất hữu ích
image ads