
Đề thi môn Kĩ thuật lập trình - đề 2
lượt xem 80
download

Tham khảo tài liệu 'đề thi môn kĩ thuật lập trình - đề 2', tài liệu phổ thông, ôn thi đh-cđ phục vụ nhu cầu học tập, nghiên cứu và làm việc hiệu quả
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Đề thi môn Kĩ thuật lập trình - đề 2
- Đề thi môn K ĩ thuật lập trình – CNTT K52 (thày Vũ Đức Vượng) – Đề số 2 Đề thi số 2 Môn : Kĩ thuật lập trình (IT3040) Thời gian : 90 phút SV được phép sử dụng tài liệu, nhưng không được dùng máy tính, điện thoại DĐ Câu 1 : (0.75 đ) Cần viết một đoạn lệnh in ra kết quả so sánh hai số nguyên : nếu hai số bằng nhau thì in ra thông báo “Bang nhau”, ngược lại in ra thông báo “Khong bang nhau”. Quan sát đoạn lệnh dưới đây và chỉ ra tất cả các trường hợp in ra thông báo. Sửa lại đoạn lệnh cho đúng với yêu cầu đặt ra. int i, j; … /* Gán giá trị cho i và j */ … if ( i = j) printf (“Bang nhau \n”); else printf (“Khong bang nhau \n”); Câu 2 : (1,0 đ) Cho một số nguyên được biểu diễn dưới dạng nhị phân, cần viết một hàm để tính số cặp bit liền kề (bit chẵn và lẻ) có giá trị khác nhau. Ví dụ: Dạng nhị phân của số 52 là “00 11 01 00” hàm trả về giá trị 1 (chỉ có cặp bit 01 là cặp bit liền kề có giá trị khác nhau). Dạng nhị phân của số 102 là “01 10 01 10” hàm trả về giá trị 4 (có 4 cặp bit liền kề có giá trị khác nhau). Hãy chỉ ra các trường hợp hàm oddeven() được định nghĩa dưới đây trả về kết quả sai ? 1
- Đề thi môn K ĩ thuật lập trình – CNTT K52 (thày Vũ Đức Vượng) – Đề số 2 int oddeven (unsigned int x) { int b; for (b = 0; x! = 0; x >>= 2) b += ((x & 1) ^ (x & 2)); return b; } Sửa lại hàm cho đúng với yêu cầu đặt ra. Lưuý : sinh viên không ư đ ợc dùng lệnh “if” Câu 3 : (1 đ) Hàm CompareFloats() dưới đây dùng để so sánh hai số thực x và y : Hàm trả về giá trị dương nếu x > y, trả về giá trị 0 nếu x = y, trả về giá trị â m nếu x < y. Hãy chỉ ra các trường hợp sai sót của hàm và chỉnh sửa để hàm thực hiện đúng trong mọi trường hợp và cho kết quả hợp lý hơn. int CompareFloats(void *p1, void *p2) { float *fp1 = (float *) p1; float *fp2 = (float *) p2; return (int) ( *fp1 - *fp2) ; } Câu 4 : (0,75 đ) Tính giá trị của các phần tử của mảng A sau khi thực hiện đoạn lệnh dưới đây : int A[ ] = {16, 23, 34, 19} ; int *p = A ; *p += 2 ; p += 2 ; *p - - ; *p += 2 ; 2
- Đề thi môn K ĩ thuật lập trình – CNTT K52 (thày Vũ Đức Vượng) – Đề số 2 Câu 5 : (1 đ) Hãy tinh chỉnh đoạn mã lệnh sau bằng mọi kỹ thuật và tạo mọi vị trí có thể và giải thích lý do (Biết rằng n > 20, x,y,z là các số nguyên và các hàm trong đoạn lệnh đã tối ưu). for ( int i = 0 ; i < n ; i++ ) { if ( x == y *16 ) DoOneThing(i); else if ( x == y/8 + z/8 ) DoSomeThingElse(i); else DoAnotherThing(i); } Câu 6 : (0,75 đ) Một lập trình viên chuyên nghiệp tiến hành tinh chỉnh chương trnh ì bằng cách sửa các đoạn khai báo : char MaTran [80][60]; thành char MaTran [80][64]; Em hãy cho biết ý nghĩa, tác d ụng của việc sửa đổi đó ? Câu 7 : (0,75 đ) Hãy cải tiến đoạn mã lệnh sau ( b là hằng số) : for ( i = 0; i < 10; i ++ ) { printf (“%f\n”, i*2*sin(b)); } Câu 8 : (2,0 đ) Cho a và b là hai mảng được cấp phát động với kích thước bằng đúng số phần tử của mảng và chứa hai dãy các số thực A = [a1, a2, … , an] và B = [b1, b2, … , bm] Sử dụng ngôn ngữ lập trình C/C++ đ ể viết hàm … DiffElem(…) với : Đầu vào : danh sách A và danh sách B (và các tham số khác nếu cần …) 3
- Đề thi môn K ĩ thuật lập trình – CNTT K52 (thày Vũ Đức Vượng) – Đề số 2 Đầu ra : con trỏ đến danh sách C; danh sách này bao gồm : - Tất cả các số thuộc A và không thuộc B - Tất cả các số thuộc B và không thuộc A Bên cạnh đó, thông qua tham số truyền, gửi ra số phần tử của mảng kết quả C Yêu cầu : phong cách lập trình thống nhất, chú thích đầy đủ, áp dụng các kĩ thuật viết mã nguồn hiểu quả, bẫy lỗi và lập trình phòng ngừa đã áp dụng. Liệt kê các kỹ thuật viết mã nguồn hiểu quả, bẫy lỗi và lập trình phòng ngừa đã áp dụng. Câu 9 : (2 đ) Cho một danh sách liên kết đơn với các nút được khai báo như sau : struct node { int info; struct node *next; }; Hãy xây dựng hàm (hoặc phương thức) Sort để sắp xếp danh sách theo thứ tự giảm dần của info. 4

CÓ THỂ BẠN MUỐN DOWNLOAD
-
Đề thi môn Kĩ thuật lập trình - đề 1
4 p |
1270 |
93
-
Đề thi kết thúc học phần môn Kỹ thuật lập trình PLC năm 2022 có đáp án - Trường CĐ Kỹ thuật Cao Thắng
8 p |
69 |
7
-
Đề thi tốt nghiệp cao đẳng nghề khóa 3 (2009-2012) - Nghề: Kỹ thuật sửa chữa, lắp ráp máy tính - Môn thi: Lý thuyết chuyên môn nghề - Mã đề thi: SCLRMT-LT25 (kèm đáp án)
5 p |
83 |
7
-
Đề thi học kì 1 môn Lập trình ứng dụng trong kỹ thuật năm 2020-2021 có đáp án - Trường ĐH Sư Phạm Kỹ Thuật TP.HCM
20 p |
25 |
6
-
Đề thi tốt nghiệp cao đẳng nghề khóa 3 (2009-2012) - Nghề: Kỹ thuật sửa chữa, lắp ráp máy tính - Môn thi: Lý thuyết chuyên môn nghề - Mã đề thi: SCLRMT-LT08 (kèm đáp án)
5 p |
90 |
5
-
Đề thi tốt nghiệp cao đẳng nghề khóa 3 (2009-2012) - Nghề: Kỹ thuật sửa chữa, lắp ráp máy tính - Môn thi: Lý thuyết chuyên môn nghề - Mã đề thi: SCLRMT-LT09 (kèm đáp án)
5 p |
97 |
5
-
Đề thi học kì 1 môn Lập trình ứng dụng trong kỹ thuật năm 2020-2021 - Trường ĐH Sư Phạm Kỹ Thuật TP.HCM
20 p |
18 |
5
-
Đề thi tốt nghiệp cao đẳng nghề khóa 3 (2009-2012) - Nghề: Kỹ thuật sửa chữa, lắp ráp máy tính - Môn thi: Lý thuyết chuyên môn nghề - Mã đề thi: SCLRMT-LT36 (kèm đáp án)
8 p |
55 |
4
-
Đề thi tốt nghiệp cao đẳng nghề khóa 3 (2009-2012) - Nghề: Kỹ thuật sửa chữa, lắp ráp máy tính - Môn thi: Lý thuyết chuyên môn nghề - Mã đề thi: SCLRMT-LT24 (kèm đáp án)
6 p |
66 |
4
-
Đề thi tốt nghiệp cao đẳng nghề khóa 3 (2009-2012) - Nghề: Kỹ thuật sửa chữa, lắp ráp máy tính - Môn thi: Lý thuyết chuyên môn nghề - Mã đề thi: SCLRMT-LT34 (kèm đáp án)
5 p |
72 |
3
-
Đề thi tốt nghiệp cao đẳng nghề khóa 3 (2009-2012) - Nghề: Kỹ thuật sửa chữa, lắp ráp máy tính - Môn thi: Lý thuyết chuyên môn nghề - Mã đề thi: SCLRMT-LT37 (kèm đáp án)
5 p |
66 |
3
-
Đề thi tốt nghiệp cao đẳng nghề khóa 3 (2009-2012) - Nghề: Kỹ thuật sửa chữa, lắp ráp máy tính - Môn thi: Lý thuyết chuyên môn nghề - Mã đề thi: SCLRMT-LT23 (kèm đáp án)
5 p |
62 |
3
-
Đề thi tốt nghiệp cao đẳng nghề khóa 3 (2009-2012) - Nghề: Kỹ thuật sửa chữa, lắp ráp máy tính - Môn thi: Lý thuyết chuyên môn nghề - Mã đề thi: SCLRMT-LT10 (kèm đáp án)
5 p |
83 |
3
-
Đề thi kết thúc học phần học kỳ 2 môn Cơ sở lập trình 2 năm 2023-2024
4 p |
6 |
2
-
Đề thi kết thúc học phần học kì 3 môn Kỹ thuật lập trình năm 2023-2024 có đáp án
6 p |
6 |
1
-
Đề thi kết thúc học phần học kì 2 môn Kỹ thuật lập trình năm 2023-2024
6 p |
4 |
1
-
Đề thi kết thúc học phần học kì 2 môn Kỹ thuật lập trình năm 2023-2024 có đáp án
5 p |
4 |
1


Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn
