Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 11 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
11
Dung lượng
168,29 KB
Nội dung
308 PHỤ LỤC 2 BẢNGMÃASCIIVÀMÃ QUYÉT 1. BảngmãASCII Bộ ký tự ASCII gồm 256 ký tự ñược phân bố như sau: + 32 ký tự ñầu tiên là các ký tự ñiều khiển không in ñược như ký tự Enter (mã 13), ký tự ESC (mã 27). + Các mãASCII 32-47, 58-64, 91-96 và 123-127 là các ký tự ñặc biệt như dấu chấm, dấu phẩy, dấu cách, dấu ngoặc, dấu móc, dấu hỏi, . + Các mãASCII 48-57 là 10 chữ số + Các mãASCII 65-90 là các chữ cái hoa từ A ñến Z + Các mãASCII 97-122 là các chữ cái thường từ a ñến z Lưu ý: Chữ thường có mãASCII lớn hơn 32 so với chữ hoa tương ứng. Ví dụ mãASCII của a là 97 còn mãASCII của A là 65. + Các mãASCII 128-255 là các ký tự ñồ hoạ. Bảng sau cho mãASCII của 128 ký tự ñầu tiên. ðể nhận ñược các ký tự ñồ hoạ (có mã từ 128 ñến 255) có thể dùng chương trình sau: // In các ký tự ñồ hoạ lên màn hình #include <stdio.h> #include <conio.h> main() { int i; clrscr(); for (i=128; i<=255; ++i) printf("%6d%2c",i,i); } 309 BẢNG MÃASCIIMÃ KÝ TỰ MÃ KÝ TỰ MÃ KÝ TỰ (Số TT) (Số TT) (Số TT) 0 NUL 26 SUB 52 4 1 SOH 27 ESC 53 5 2 STX 28 FS 54 6 3 ETX 29 GS 55 7 4 EOT 30 RS 56 8 5 ENQ 31 US 57 9 6 ACK 32 Space 58 : 7 BEL 33 ! 59 ; 8 BS 34 “ 60 < 9 HT 35 # 61 = 10 LF 36 $ 62 > 11 VT 37 % 63 ? 12 FF 38 & 64 @ 13 CR 39 ‘ 65 A 14 SO 40 ( 66 B 15 SI 41 ) 67 C 16 DLE 42 * 68 D 17 DC1 43 + 69 E 18 DC2 44 , 70 F 19 DC3 45 - 71 G 20 DC4 46 . 72 H 21 NAK 47 / 73 I 22 SYN 48 0 74 J 23 ETB 49 1 75 K 24 CAN 50 2 76 L 25 EM 51 3 77 M 310 MÃ KÝ TỰ MÃ KÝ TỰ MÃ KÝ TỰ (Số TT) (Số TT) (Số TT) 78 N 95 _ 112 p 79 O 96 * 113 q 80 P 97 a 114 r 81 Q 98 b 115 s 82 R 99 c 116 t 83 S 100 d 117 u 84 t 101 e 118 v 85 U 102 f 119 w 86 V 103 g 120 x 87 W 104 h 121 y 88 X 105 i 122 z 89 Y 106 J 123 { 90 Z 107 k 124 | 91 [ 108 l 125 } 92 \ 109 m 126 ~ 93 ] 110 n 127 DEL 94 ^ 111 o 2. Bảngmã scan từ bàn phím Mỗi phím trên bàn phím của IBM PC ñều ñược gán một con số, gọi là mã scan, từ 1 ñến 83. IBM PC AT ñùng một nhóm mã khác, từ 1 ñến 108 các mã này bắt ñầu bằng các phím số, các phím chữ, rồi ñến các phím chức năng và cuối cùng là các phím cho con trỏ, khi một phím ñược nhấn thì bộ xử lý của bàn phím gửi cho CPU mã scan tương ứng, khi nó ñược nhả thì mã scan cộng thêm 80 hex sẽ ñược gửi tiếp cho CPU. 311 Hex Thập phân Phím của PC Phím của PC-AT 1 1 ESC Tilde 2-B 2-11 1-9,0 1-9,0 C 12 trừ, gạch dưới trừ, gạch dưới D 13 =, + =, + E 14 Backspace \,thanh ñứng F 15 Tab Backspace 10 16 Q Tab 11 17 W Q 12 18 E W 13 19 R E 14 20 T R 15 21 Y T 16 22 U Y 17 23 I U 18 24 O I 19 25 P O 1A 26 [ P 1B 27 ] [ 1C 28 Enter ] 1D 29 Ctrl 1E 30 A Ctrl 1F 31 S A 20 32 D S 21 33 F D 22 34 G F 23 35 H G 24 36 J H 25 37 K J 26 38 L K 27 39 Chấm phẩy, : L 28 40 Nháy Chấm phẩy,: 312 Hex Thập phân Phím của PC Phím của PC-AT 29 41 Tidle Nháy 2A 42 Shift trái 2B 43 \, thanh ñứng Enter 2C 44 Z Shift trái 2D 45 X 2E 46 C Z 2F 47 V X 30 48 B C 31 49 N V 32 50 M B 33 51 Phảy N 34 52 Chấm M 35 53 /,? Phảy 36 54 Shift phải Chấm 37 55 *, PrtScr /, ? 38 56 Alt 39 57 Space bar Shift phải 3A 58 Caps Lock Alt 3B 59 F1 3C 60 F2 3D 61 F3 Space bar 3E 62 F4 3F 63 F5 40 64 F6 Caps Lock 41 65 F7 F2 42 66 F8 F4 43 67 F9 F6 44 68 F10 F8 45 69 Num Lock F10 46 70 Scroll Lock,Break F1 47 71 Home F3 313 Hex Thập phân Phím của PC Phím của PC-AT 48 72 mũi tên lên F5 49 73 PgUp F7 4A 74 Dấu trừ bàn tính F9 4B 75 Mũi tên trái 4C 76 5 của bàn tính 4D 77 Mũi tên phải 4F 79 End 50 80 Mũi tên xuống 51 81 PgDn 52 82 Ins 53 83 Del 5A 90 ESC 5B 91 Home 5C 92 Mũi tên trái 5D 93 End 5F 95 Num Lock 60 96 Mũi tên lên 61 97 5 của bàn tính 62 98 Mũi tên xuống 63 99 Ins 64 100 Scroll Lock 65 101 PgUp 66 102 Mũi tên phải 67 103 PgDn 68 104 Del 69 105 Sys 6A 106 *, PrtScr 6B 107 - 6C 108 + 314 PHỤ LỤC 3 CÁC CÂU HỎI TRẮC NGHIỆM § 1. PHẦN CÂU HỎI 1. ðiều nào sau ñây là SAI ñối với một hàm tạo? a. không có kiểu trả về b. ñược gọi một cách tự ñộng khi tạo ñối tượng c. có duy nhất một hàm tạo cho một lớp d. có tên trùng với tên lớp 2. ðiều nào sau ñây là SAI ñối với một hàm hủy? a. không có kiểu trả về b. ñược gọi một cách tự ñộng khi hủy ñối tượng c. không thể là hàm ảo d. có duy nhất một hàm hủy cho một lớp 3. Thành phần dữ liệu tĩnh (static) của một lớp là gì? a. là thành phần tồn tại cho cả lớp b. là thành phần chỉ ñược xác ñịnh khi chạy chương trình c. là thành phần không thể thay ñổi d. là thành phần chỉ truy nhập ñược bằng hàm ảo 4. Hàm tạo sao chép ñược gọi khi nào? a. khi truyền giá trị cho tham số là biến ñối tượng b. khi tạo một ñối tượng mới giống như ñối tượng ñã có c. khi thực hiện trả kết quả (là một ñối tượng) về cho hàm d. cả ba phương án trên ñều ñúng 5. Khi xây dựng hàm tạo sao chép cho lớp A, tiêu ñề hàm nào sau ñây là SAI? a. A(A a); b. A(const A& a); c. A(A& a); d. A(A&); 6. Những phương thức nào của lớp cơ sở không thể ñược kế thừa trong lớp dẫn xuất? a. hàm tạo và hàm hủy b. hàm tạo sao chép c. toán tử gán d. cả ba phương án trên ñều ñúng 7. ðiều nào sau ñây là SAI ñối với ñịnh nghĩa chồng các toán tử? a. chỉ có thể ñịnh nghĩa chồng các toán tử ñã có trong C++ b. các toán tử ñịnh nghĩa chồng cần ñược sử dụng theo quy tắc cú pháp của toán tử cơ sở ñã ñược ñịnh nghĩa trong ngôn ngữ c. hàm ñịnh nghĩa toán tử có thể là hàm thành phần hoặc hàm bạn của lớp d. mọi toán tử trong C++ ñều có thể ñịnh nghĩa chồng 315 8. ðiều nào sau ñây là SAI a. Mỗi thể hiện của một lớp có sở hữu riêng các thuộc tính thông thường b. các thể hiện của một lớp cùng chia sẻ các thuộc tính tĩnh của lớp ñó c. các thể hiện của một lớp có các ñịnh nghĩa riêng cho các phương thức của lớp ñó d. một ñối tượng là một thể hiện của một lớp 9. Chỉ ra lỗi với các khai báo cho lớp A class A { A(int i); }; … void main() { A a1; // dòng 1 A a2(5); // dòng 2 } a. chỉ dòng 1 có lỗi b. chỉ dòng 2 có lỗi c. cả hai dòng ñều có lỗi d. không dòng nào có lỗi 10. Cho biết kết quả khi thực hiện chương trình sau: #include <iostream.h> class A { public: static int i; }; int A::i = 5; void main() { A a1; a1.i++; A a2; int n = a2.i + 1; cout<<"n = "<<n; } a. n = 5 b. n = 6 c. n = 7 d. n = 8 11. Chỉ ra lỗi với các khai báo cho lớp A class A { public: 316 A(int i); }; … void main() { A a1(5); A a3; // dòng 1 A a2 = a1; // dòng 2 } a. chỉ dòng 1 có lỗi b. chỉ dòng 2 có lỗi c. cả hai dòng ñều có lỗi d. không dòng nào có lỗi 12. ðịnh nghĩa nào ñúng cho toán tử nhập (>>) của một lớp T a. istream& operator>>(istream&); b. istream& operator>>(istream); c. friend istream& operator>>(istream&, T&); d. friend istream& operator>>(istream&, T); 13. Câu nào trong những câu sau ñúng a. một lớp luôn có lớp cơ sở (lớp cha) b. một lớp luôn có một hoặc nhiều lớp dẫn xuất (lớp con) c. thể hiện của một lớp cơ sở cũng là thể hiện của lớp dẫn xuất từ nó d. thể hiện của một lớp dẫn xuất cũng là thể hiện của lớp cơ sở của nó 14. Chỉ ra lỗi cho các khai báo ñối tượng dưới ñây: class A { protected: A(int i); }; class B: public A { public: B(); }; … void main() { A a(5); // dòng 1 B b; // dòng 2 } a. chỉ dòng 1 có lỗi b. chỉ dòng 2 có lỗi c. cả hai dòng ñều có lỗi d. không dòng nào có lỗi 317 15. Chỉ ra lỗi cho các khai báo ñối tượng dưới ñây: class A { public: virtual void func() = 0; }; class B: public A { public: void func() { } }; … void main() { A a; // dòng 1 B b; // dòng 2 } a. chỉ dòng 1 có lỗi b. chỉ dòng 2 có lỗi c. cả hai dòng ñều có lỗi d. không dòng nào có lỗi . 308 PHỤ LỤC 2 BẢNG MÃ ASCII VÀ MÃ QUYÉT 1. Bảng mã ASCII Bộ ký tự ASCII gồm 256 ký tự ñược phân bố như sau: + 32 ký. thường có mã ASCII lớn hơn 32 so với chữ hoa tương ứng. Ví dụ mã ASCII của a là 97 còn mã ASCII của A là 65. + Các mã ASCII 128-255 là các ký tự ñồ hoạ. Bảng