1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Đề thi kĩ thuật lập trình Đại học Bách Khoa TPHCM

6 2,4K 35

Đang tải... (xem toàn văn)

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 6
Dung lượng 38,74 KB

Nội dung

Câu 1. Nhận định nào sau đây đúng: A. Trình thông dịch tiến hành dịch chương trình nguồn theo từng phân đoạn rồi thực thi đoạn mã được dịch. Trình biên dịch tiến hành dịch toàn bộ chương trình nguồn rồi mới thực thi chương trình. B. Trình biên dịch tiến hành dịch chương trình nguồn theo từng phân đoạn rồi thực thi đoạn mã được dịch. Trình thông dịch tiến hành dịch toàn bộ chương trình nguồn rồi mới thực thi chương trình. C. Cả trình biên dịch và trình thông dịch đều tiến hành dịch toàn bộ chương trình nguồn rồi mới thực thi chương trình. D. Cả trình biên dịch và trình thông dịch đều tiến hành dịch chương trình nguồn theo từng phân đoạn rồi thực thi đoạn mã được dịch

Trang 1

Thi kiểm tra giữa kỳ II, năm học 2012-2013

KỸ THUẬT LẬP TRÌNH Thời gian : 45 phút

Sinh viên được phép mở tài liệu Sau khi thi, sinh viên nộp lại đề có ghi Tên SV, MSSV,

và bài giải phần I&II

Thang điểm tối đa : 10 điểm.

PHẦN I: TRẮC NGHIỆM (5 điểm, sinh viên trả lời các câu hỏi bằng cách khoanh tròn đáp án đúng nhất)

Câu 1. Nhận định nào sau đây đúng:

A Trình thông dịch tiến hành dịch chương trình nguồn theo từng phân đoạn rồi thực thi đoạn mã được dịch Trình biên dịch tiến hành dịch toàn bộ chương trình nguồn rồi mới thực thi chương trình

B Trình biên dịch tiến hành dịch chương trình nguồn theo từng phân đoạn rồi thực thi đoạn mã được dịch Trình thông dịch tiến hành dịch toàn bộ chương trình nguồn rồi mới thực thi chương trình

C Cả trình biên dịch và trình thông dịch đều tiến hành dịch toàn bộ chương trình nguồn rồi mới thực thi chương trình

D Cả trình biên dịch và trình thông dịch đều tiến hành dịch chương trình nguồn theo từng phân đoạn rồi thực thi đoạn mã được dịch

Câu 2. Biết rằng biến x được khai báo kiểu là int và được gán giá trị ban đầu là 0, cho biết câu lệnh nào

dưới đây không hợp lệ:

Câu 3. Đoạn chương trinh sau:

MOV AX, 3

INT 10h MOV AH, 9 MOV DX, OFFSET InputNumber INT 21h

được viết bằng:

A Ngôn ngữ máy B Ngôn ngữ cấp cao C Hợp ngữ D Cả A, B, C đều sai

Câu 4. Hãy cho biết đoạn chương trình sau xuất kết quả gì ra màn hình

Trang 2

int a = 5, b = 5;

if( a = 4)

b = 4;

cout << b;

Câu 5. Hãy cho biết câu lệnh sau xuất kết quả gì ra màn hình:

cout<< "|" <<setiosflags(ios::fixed | ios::showpos)

<<setprecision(2)

<< 1234567.89 << "|" ;

A |+1234567.89| B |+1234567.890000| C |+1.23457e+006| D |1234567.89|

Câu 6. Hãy cho biết đoạn chương trình sau xuất gì ra màn hình:

enum day { mon, tue, wed, thr, fri, sat, sun};

day a = tue;

cout << a;

Câu 7. Giả sử ta khai báo i và j là hai biến số nguyên Hãy cho biết câu lệnh sau đây:

switch (i) {

case 2:

case 3:

case 7: j = i; break;}

tương đương với câu lệnh nào dưới đây:

C if ((i == 1) && (i == 2) && (i == 3) && (i == 7)) j = i; D if ((i == 1) || (i == 2) || (i == 3) || (i == 7)) j = i;

Câu 8. Cho các định danh sau:

1. Main

2. Abc-123

3. If

4. F5

5. 5F

Những định danh hợp lệ là

Trang 3

C.Tất cả các định danh trên đều hợp lệ D Chỉ có F5 và Abc-123

Câu 9. Câu nào sau đây là đúng?

A Mỗi dòng trong một chương trình phải kết thúc bằng dấu chấm phẩy

B Mỗi dòng chú thích phải kết thúc bằng dấu chấm phẩy

C Mỗi câu lệnh trong một chương trình phải kết thúc bằng dấu chấm phẩy

D D Không thể khai báo nhiều biến trên cùng một dòng lệnh

Câu 10. Trong số những dòng chú thích sau:

1 // /*/*Comment 1*/*/

2 // Comment 2 //

3 /* Comment 3 */

4 /* Comment 4 */ /*Comment 4_1*/

5 /* /* Comment 5 */

6 // /*Comment 6*/

A có đúng 1 chú thích không hợp lệ B có đúng 2 chú thích không hợp lệ

C có đúng 3 chú thích không hợp lệ D Tất cả các chú thích trên đều hợp lệ

PHẦN II : ĐIỀN VÀO CHỖ TRỐNG (3 điểm, sinh viên trả lời các câu hỏi bằng cách điền vào chỗ trống)

Câu 11. Trong chương trình viết bằng C++, biểu thức 2*13%7 + 21/4 có giá trị bằng

_10

Câu 12. Sau khi thực hiện câu lệnh

float rate = (100 > 40)? ((6 < 3)? 1.3: 2.4):3.5;

biến rate có giá trị bằng 2.4 _

Câu 13. Hãy cho biết kết xuất của đoạn chương trình sau : _ Không xuất

int x = 4;

int y = 8;

if ( x > 5 )

if ( y > 5 )

Trang 4

cout<< "x and y are > 5" ;

else

cout<< "x is <= 5";

Câu 14. Hãy cho biết kết xuất của đoạn chương trình sau: _ _5, 7,

-6 _

int a = 5, b = 6, c = 7;

c = a++ - b++ - a ;

cout<< a << ", " << b << ", " << c;

Câu 15. Cho biết kết xuất ra màn hình của đoạn chương trình sau: pass

warning

int n = 'c';

switch(n++) {

default: cout<< "error "; break;

case 'a':

case 'b': cout<< "good "; break;

case 'c': cout<< "pass ";

case 'd': cout<< "warning "; } Câu 16. Sau khi đoạn mã sau được thực thi, hãy cho biết giá trị của x là 1

int a = 14, b = 15, x;

char c = 'A';

x = (a && b) && (c < 'C');

PHẦN III : LẬP TRÌNH (Sinh viên viết bài giải vào bài làm)

Câu 17. (2 điểm cho sinh viên lớp thường, 1.5 điểm cho sinh viên lớp KSTN) Viết flowchart hoặc viết code bằng

ngôn ngữ C++ cho một chương trình đoán “Giải mã chính mình” có nội dung như sau (được trích một phần từ

website: http://www.xemngay.com/quiz/giaima.aspx ):

1 Cảm giác của bạn khi nào là tốt nhất? 4 Gặp một chuyện buồn cười, phản ứng của bạn

Trang 5

A Sáng sớm

B Chiều và chập tối

C Ban đêm

2 Khi nói chuyện với ai đó, bạn thường

A Đứng khoanh tay

B Nắm chặt hai tay

C Một tay hoặc hai tay chống hông

D Chạm vào hoặc đẩy nhẹ

E Nghịch tai mình, sờ cằm hoặc vuốt tóc

3 Lúc ngồi nghỉ

A Hai chân khéo lại

B Chân nọ bẵt chéo lên chân kia

C Gập một chân lại

D Chân nọ bẵt chéo lên chân kia

A Cười một các sảng khoái

B Cười, nhưng không cười to

C Cười nhẹ

D Cười tủm tỉm

5 Khi đến tham gia một tổ chức hoặc một nhóm hoạt động xã hội, bạn

A Nói thật to khi vào để thu hút sự chú ý

B Đi vào thật lặng lẽ, tìm người quen của bạn

C Đi vào rất lặng lẽ, cố gắng không để bị chú ý

6 Khi bạn hết sức tập trung vào công việc, có người ngắt mạch làm việc của bạn, bạn sẽ

A Vui vẻ đón tiếp người đó

B Cảm thấy rất phiền

C Cảm giác ở giữa "A" và "B"

Hướng dẫn: Mỗi câu trả lời chỉ được chọn một đáp án Chương trình sẽ hỏi lần lượt từ câu hỏi số 1 đến câu hỏi số 6 Chỉ

khi người sử dụng trả lời câu hỏi trước, chương trình mới hiển thị câu hỏi sau.

Yêu cầu: dùng cấu trúc rẽ nhánh và chương trình cần xuất kết quả ra tuân theo các quy định dưới đây.

• Đa số câu A được chọn: « là người luôn mới mẻ, tràn đầy sức sống, thú vị và rất hấp dẫn »

• Đa số câu B được chọn: « là người thiếu tự tin, cần mẫn, khắc khổ, rất hay xoi mói và cô cùng cẩn thận »

• Các câu khác được chọn: « là người có nội tâm bi quan, đa sầu đa cảm, hay do dự, thiếu quyết đoán, lúc nào cũng cần người chăm sóc, luôn luôn cần người khác quyết định giúp »

• Trường hợp có hai câu cùng có số chọn nhiều nhất, xuất cả hai đáp án.

Lưu

ý : không được sử dụng từ khóa ‘goto’ (sẽ bị 0 điểm nếu dùng lệnh goto-label).

Trang 6

Câu 18. (0.5 điểm, chỉ dành cho sinh viên lớp KSTN) Hãy giải thích tại sao biểu thức E trong phát biểu

switch (E) { case }

chỉ có thể là các kiểu int, char, enum mà không thể có kiểu float, double?

Đáp án: Trong biểu thức switch case; các giá trị constant expression tại các nhãn được so sánh bằng với các nhãn của expression Bởi vì các kiểu float, double không thể dùng để so sánh bằng được Do đó switch chỉ chấp nhận kiểu int, char, enum (các kiểu dữ liệu có thể so sánh bằng được).

Ngày đăng: 07/06/2016, 19:51

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w