... Th c - CCK02TH2 6 Trường: C CN Ph c Yên
Bài tậplậptrìnhhướngđốitượng C+ +
BÀI TẬP C+ +
Bài 1:Xây dựng lớp c sở HOCSINH ccc thông tin: Họ tên, Lớp, Điểm toán, lý, hoá và cc phương th c ... Xuân Th c - CCK02TH2 12 Trường: C CN Ph c Yên
Bài tậplậptrìnhhướngđốitượng C+ +
B C NG TH NGỘ ƯƠ
Tr ng Cao ng C ng Nghi p Ph c Yênườ Đẳ ệ
BÀI TẬPLẬPTRÌNHHƯỚNGĐỐITƯỢNG
C+ +
H Tên: ... Trường: C CN Ph c Yên
Bài tậplậptrìnhhướngđốitượng C+ +
}
Bài 3: Tạo lớp CARD để quản lý sách trong thư viện. Yêu c mỗi loại sách c n lưu trữ cc thong tin: Tựa đề sách,
T c giả, Số lượng sách.
Xây...
... Quan
Giáo trình chính:
LậpTrìnhHướngĐốiTượng C+ +”
Th c sĩ. Trương Văn Chí C ng
M c l c
Chương 1 Chương 2 Chương 3 Chương 4 Chương 5 Chương 6 Chương 7 Chương 8 Chương 9
Giới thiệu
Nội dung
Bài tập
Giới ... Tượng C+ +
Số đơn vị h c trình: 3
Kiến th c tiên quyết: Lậptrìnhc bản
Nội dung chính:
Truyền đạt những khái niệm, nguyên lý cbảnc a
LậpTrìnhHướngĐốiTượng (OOP).
Minh họa lập ... Thông
Đại H c Cần Thơ
Khoa C ng Nghệ Thông Tin - Đại H c Cần Thơ 7
Mở Đầu
M c tiêu
Giới thiệu cc khái niệm cbảnc a một
chương trình C+ +.
Nội dung
Viết và biên dịch chương trình C+ +
...
... kế chung cho nhiều đốitượng xe
đạp đư c tạo ra
Lớp định nghĩa cc thu c tính và cc phương th c chung cho tất c
c cđốitượngc a c ng một loại nào đó
Một đốitượng là một thể hiện c ... th c
(method)
11
Đối Tượng
Đốitượng (object) là một
th c thể phần mềm bao
b ccc thu c tính và
c c phương th c liên
quan.
Đối tượng phần mềm Đốitượng phần mềm Xe Đạp
Thu c tính đư c ... Thu c tính đư c lưu trữ hay
phương th c đư c cài đặt như thế nào
đư c che giấu đi từ ccđốitượng kh c
Vi c che giấu những chi
tiết thiết kế và c i đặt từ
những đốitượng kh c
đư c gọi...
... tự đư c định nghĩa là kiểu char.
Biến chuỗi đư c định nghĩa kiểu char*
(con trỏ ký tự).
2
Lịch Sử C a C+ +
Lịch Sử C a C+ +
C+ + dựa trên ngôn ngữ lậptrình C
C đư c phát minh trư c 1970 ... tiêu
Giới thiệu cc khái niệm cbảnc a một
chương trình C+ +
Nội dung
Viết và biên dịch chương trình C+ +
Biến, hằng, chú thích, kiểu dữ liệu
Bộ nhớ, nhập xuất
C ch đặt tên
Chương 1
... World\n";
}
Hello.cpp
C+ +
Program
C
Code
Object
Code
Execut-
able
C+ +
COMPILER
NATIVE
C+ +
TRANSLATOR
LINKER
C
COMPILER
C+ +
Program
Hello.cpp
Hello.obj
Hello.exe
5
Biến
Biến
Biến
Tên tượng trưng cho...
... tử điều kiện
Toán tử phẩy
Toán tử lấy kích thư c
8
Độ Ưu Tiên C a Cc Toán Tử
Độ Ưu Tiên C a Cc Toán Tử
M c Toán tử Loại Thứ tự
Cao nhất
::
Một ngôi C hai
() [] -> .
Hai ngôi Trái tới ... đư c '\036'
<<
Dịch trái bit
'\011' << 2 // đư c '\044'
>>
Dịch phải bit
'\011' >> 2 // đư c '\002'
3
Khái Niệm C Bản
Khái ...
Toán Tử Toán H c & Luận Lý
Toán Tử Toán H c & Luận Lý
Toán tử Tên Ví dụ
+
C ng
12 + 4.9 // cho 16.9
-
Trừ
3.98 - 4 // cho -0.02
*
Nhân
2 * 3.4 // cho 6.8
/
Chia
9 / 2.0 // cho 4.5
%
Lấy...
... (biểu th c)
lệnh;
Lệnh switch
switch (biểu th c) {
case hằng 1:
c c lệnh; break;
case hằng n:
c c lệnh; break;
default:
c c lệnh;
}
if (biểu th c)
lệnh 1;
else
lệnh 2;
Khi nào chúng ta ...
nhảy tr c tiếp đến nhãn
đư c chỉ định.
cho phép một hàm trả về
một giá trị cho thành phần
gọi nó.
1
Khoa C ng Nghệ Thông Tin & Truyền Thông
Đại H c Cần Thơ
LỆNH
LỆNH
CHƯƠNG 3:
CHƯƠNG ...
thể kết nối lại
thành một lệnh
ph c bằng c ch
rào chúng bên
trong cc dấu
ngo c xoắn.
{
int min, i = 10, j = 20;
min = (i < j ? i : j);
min + 5;
cout << min << '\n';
...
... gánh nặng phải chỉ định cc giá trị
c a đối số cho tất ccc tham số hàm
Đối số hàng lệnh
C thể nhận không hay nhiều đối số từ hàng
lệnh
đư c tạo ra sẵn cho một chương trình C+ + thông
qua ... -n;
}
int Factorial (unsigned int n)
{
return n == 0 ? 1 : n * Factorial(n-1);
}
Chương 4
5
Phạm Vi Toàn Cc – Cc Bộ
Phạm Vi Toàn Cc – Cc Bộ
Phạm vi toàn c c
Đư c định nghĩa ở
phạm vi chương ... xyz =2; // xyz là cc bộ cho khối này
cout <<xyz;
}
else {
cout<< ::xyz;
}
}
Chương 4
8
Đối Số M c Định - Hàng Lệnh
Đối Số M c Định - Hàng Lệnh
Đối số m c định
bỏ bớt đi...
... 20
First row Second row Third row
hàng đầu
hàng hai
hàng ba
C ch tổ ch c trong bộ nhớ
Chương 5
7
Con Trỏ
Con Trỏ
Con trỏ đơn giản chỉ là địa chỉ c a một vị
trí bộ nhớ và cung c p c ch gián tiếp ... một tậpccđốitượngc ng kiểu và đư c
sắp xếp liên tiếp trong bộ nhớ
Mỗi phần tử mảng đư c x c định bởi một chỉ
số biểu thị vị trí c a phần tử trong mảng
Phần tử đầu tiên c a mảng luôn c ... #
cout << *ptr1;
10
num
1000
1000
ptr1
2000
Chương 5
2
Mảng, Con Trỏ, Tham Chiếu
Mảng, Con Trỏ, Tham Chiếu
M c tiêu
Giới thiệu cc cách sử dụng mảng, con trỏ, và
tham chiếu
Nội...
...
c cđốitượngc ng kiểu
Ví dụ: lớp XeDap là một thiết kế chung cho nhiều đốitượng xe
đạp đư c tạo ra
Lớp định nghĩa cc thu c tính và cc phương th c chung
cho tất cccđốitượngc a ... này.
Tăng c ờng khả năng sử dụng lại
6.11
Đối Tượng
Đối Tượng
Đốitượng (object) là một
th c thể phần mềm bao
b ccc thu c tính và
c c phương th c liên
quan.
Đối tượng phần mềm Đốitượng ... Thu c tính đư c lưu trữ
hay phương th c đư c cài đặt như thế
nào đư c che giấu đi từ ccđối
tượng kh c
Vi c che giấu những chi
tiết thiết kế và c i đặt từ
những đốitượng kh c
đư c gọi...
... type; // kiểu đối tượng
Value val; // giá trị c a đối tượng
//
};
Khoa C ng Nghệ Thông Tin - Đại H c C
ần Thơ
16
Đối số m c định
Đối số m c định
Đối số m c định tính từ bên phải.
class
Point
Point ... botRight(right,bottom)
{ }
Khởi tạo cho cc
dữ liệu thành viên
qua danh sách khởi
tạo thành viên
Khoa C ng Nghệ Thông Tin - Đại H c C
ần Thơ
30
C u tr c và hợp
C u tr c và hợp
C u tr c (structure):
Bắt ... là đốitượngc a 1 lớp
Thành viên là đốitượngc a 1 lớp
Dữ liệu thành viên c thể c kiểu:
Dữ liệu (lớp) chuẩn c a ngôn ngữ.
Lớp do người dùng định nghĩa (c thể là chính lớp đó).
class...
... viên.
class
StringVec
StringVec {
public:
StringVec (const int dim);
~StringVec ();
char* operator [] (int);
int add(char* );
// ………
private:
char **elems; // cac phan tu
int dim; // kich thuoc ... định c a ngôn ngữ:
Nếu đốitượng kích thư c nhỏ, c thể sẽ gây ra quá
nhiều khối nhỏ => chậm.
Không đáng kể khi đốitượngc kích thư c lớn.
=> Toán tử new và delete ít đư c tái ... || [] () ,
C c phép toán không thể tái định nghĩa:
. .* :: ?: sizeof
Chương 8
Khoa C ng Nghệ Thông Tin - Đại H c C
ần Thơ
8
Chuyển kiểu
Chuyển kiểu
Muốn th c hiện cc phép c ng:
void main()...
... nhớ
Chương 9
*contacts 1
*contacts 2
*contacts 3
*contacts i
*contacts n
…
…
**contacts
dirSize
maxSize
**contacts
dirSize
maxSize
*recent
*recent
Contact 1
Contact 2
Contact i
…
*contacts 1
*contacts ... Thu c tính truy c p
protected
protected:
Cho phép lớp con truy xuất.
Chương 9
class
ContactDir
ContactDir {
//
protected:
int Lookup (const char *name);
Contact **contacts; // ds cac doi ... (ostream&, ContactDir&);
// …………
};
ContactDir
ContactDir
Contact
Contact
n
Ký hiệu
composition
Khoa C ng Nghệ Thông Tin - Đại H c C
ần Thơ
17
Lớp c sở ảo (tt)
Lớp c sở ảo (tt)
C ch xử...
... + X);
}
}
2.1 Cho biết kết quả c a chương trình trên? Liệt kê cc biến trong
chương trình? Cho biết cc biến c khai báo final c ý nghĩa gì?
Bài tập 5
class Demo
{
public static void main(String[] ... quả c a chương trình trên?
Bài tập 10
class WhileStruct
{
{
int n=10;
while(true){
if(n>0){
JAVA C BẢN
Mã sinh viên:
Họ và tên:
Lớp h c phần:
Ngày nộp bài:
Bài tập 1
Những từ khóa ho c ... 1985;
System.out.println(tuoi);
}
}
Hãy cho biết kết quả c a chương trình trên? Từ bài trên, hãy viết chương
trình cho nhập năm sinh và cho biết tuổi?
Bài tâp 4
class Demo
{
public static void main(String[] args)
{...