1. Trang chủ
  2. » Công Nghệ Thông Tin

PHƯƠNG PHÁP LẬP TRÌNH_2 docx

50 250 0
Tài liệu đã được kiểm tra trùng lặp

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

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Biểu Thức
Trường học Trường Đại Học Công Nghệ Thông Tin
Chuyên ngành Lập Trình
Thể loại Bài Giảng
Thành phố Thành Phố Hồ Chí Minh
Định dạng
Số trang 50
Dung lượng 610,54 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Khái niệm về biểu thức‰ Biểu thức là một sự kết hợp giữa các toán tử operator và các toán hạng operandtheo đúng một trật tự nhất định.. ‰ Trong trường hợp, biểu thức có nhiều toán tử, ta

Trang 1

BIỂU THỨC

CHƯƠNG 2

BIỂU THỨC BIỂU THỨC (Expressions)

Trang 2

1 Khái niệm về biểu thức

‰ Biểu thức là một sự kết hợp giữa các toán

tử (operator) và các toán hạng (operand)theo đúng một trật tự nhất định

‰ Mỗi toán hạng có thể là một hằng, một biếnhoặc một biểu thức khác

‰ Trong trường hợp, biểu thức có nhiều toán

tử, ta dùng cặp dấu ngoặc đơn () để chỉ

đị h t á tử à đượ thự hiệ t ướ

định toán tử nào được thực hiện trước

Trang 3

2 Kiểu dữ liệu(Data type)

‰C/C++ có năm kiểu dữ liệu cơ sở:

−Kiểu vô định (void)

‰Kích thước và phạm vi của những kiểu dữliệu này có thể thay đổi tùy theo loại CPU vàtrình biên dịch

Trang 4

2 Kiểu dữ liệu(Data type)

‰ Kiểu char chứa giá trị của bộ mã ASCII

(Amercican Standard Code for Information Interchange) Kích thước là 1 byte.

‰ Kích thước của kiểu int là 16 bits (2 bytes)trên môi trường 16-bit như DOS và 32 bits(4 b t ) t ê ôi t ườ 32 bit hư

(4 bytes) trên môi trường 32-bit nhưWindows 95

Kiể id dù để kh i bá hà khô t ả

‰ Kiểu void dùng để khai báo hàm không trả

về giá trị hoặc tạo nên các con trỏ tổngquát (generic pointers)

quát (generic pointers)

Trang 5

2 Kiểu dữ liệu(Data type)

Trang 6

3 Định danh (Identifier Name)

‰ Trong C/C++, tên biến, hằng, hàm,…

được gọi là định danh

‰ Những định danh này có thể là 1 hoặc nhiều

ký tự Ký tự đầu tiên phải là một chữ cáihoặc dấu _ (underscore), những ký tự theo

hải là hữ ái hữ ố h ặ dấ

sau phải là chữ cái, chữ số, hoặc dấu _

‰ C/C++ phân biệt ký tự HOA và thường

‰ Định danh không được trùng với từ khóa(keywords)

Trang 8

‰ Tất cả biến phải được khai báo trước khi sử

‰ Tất cả biến phải được khai báo trước khi sửdụng

‰ Cách khai báo:

‰ Cách khai báo:

type variableNames ;

t là ột t á kiể dữ liệ hợ lệ

− type: là một trong các kiểu dữ liệu hợp lệ

− variableNames: tên của một hay nhiềubiến phân cách nhau bởi dấu phẩy

biến phân cách nhau bởi dấu phẩy

Trang 10

6 Phạm vi của biến

‰ Biến cục bộ (local variables)

− Những biến được khai báo bên trong mộthàm gọi là biến cục bộ

− Các biến cục bộ chỉ được tham chiếu đếnbởi những lệnh trong khối (block) có khaibáo biến

− Một khối được đặt trong cặp dấu { }

− Biến cục bộ chỉ tồn tại trong khi khối chứa

nó đang thực thi và bị hủy khi khối chứa nó

thực thi xong

Trang 12

6 Phạm vi của biến

‰ Tham số hình thức(formal parameters)

− Nếu một hàm có nhận các đối số truyềnvào hàm thì nó phải khai báo các biến

để nhận giá trị của các đối số khihàm được gọi

− Những biến này gọi là các tham sốhình thức Những biến này được sử dụng

iố hư á biế bộ

giống như các biến cục bộ

Trang 13

for(int i=from ; i<=to ; i++) ( ; ; )total +=i;

return total;

return total;

}

Trang 14

6 Phạm vi của biến

‰ Biến toàn cục (global variables)

− Biến toàn cục có phạm vi là toàn bộchương trình

− Tất cả các lệnh có trong chương trìnhđều có thể tham chiếu đến biến toàncục

− Biến toàn cục được khai báo bên ngoài tấtụ ợ g

cả hàm

Trang 15

cout << “Value of gVar= “ << gVar; increase();

cout << “After increased, gVar= “ << gVar; decrease(); cout << “After decreased, gVar= “ << gVar;

}

Trang 17

ứng Hằng còn được gọi là literals.

‰ Hằng ký tự được đặt trong cặp nháy đơn

Ví d ' ’

Ví dụ: 'a’

‰ Hằng nguyên là những số mà không cóphần thập phân

phần thập phân

Ví dụ 100 , -100

Trang 22

Lưu ý: phía bên trái dấu = phải là một biến

hay con trỏ và không thể là hàm hay hằng

Ví dụ:

total = a + b + c + d;

Trang 23

11 Chuy

11 Chuyểển đ n đổ ổi ki i kiểểu trong câu l u trong câu lệệnh gán nh gán

11 Chuy

11 Chuyểển đ n đổ ổi ki i kiểểu trong câu l u trong câu lệệnh gán nh gán

y Đối với câu lệnh gán, giá trị của biểu thức

Trang 24

11 Chuy

11 Chuyểển đ n đổ ổi ki i kiểểu trong câu l u trong câu lệệnh gán nh gán

11 Chuy

11 Chuyểển đ n đổ ổi ki i kiểểu trong câu l u trong câu lệệnh gán nh gán

y Khi chuyển đổi từ kiểu dữ liệu có miền giá

trị nhỏ sang kiểu dữ liệu có miền giá trị lớnhơn:charÆintÆlongÆfloatÆdouble, thì việcchuyển đổi kiểu này là không mất mátthông tin

Khi h ể đổi từ kiể dữ liệ ó iề iá

y Khi chuyển đổi từ kiểu dữ liệu có miền giátrị lớn sang kiểu dữ liệu có miền giá trị nhỏhơn:doubleÆfloatÆlongÆintÆchar thì

hơn:doubleÆfloatÆlongÆintÆchar, thìviệc chuyển đổi kiểu này là mất mát thôngtin

Trang 26

12 Toán t

12 Toán tử ử ssố ố hhọ ọc (arithmetic operators) c (arithmetic operators)

12 Toán t

12 Toán tử ử ssố ố hhọ ọc (arithmetic operators) c (arithmetic operators)

y Khi tử số và mẫu số của phép chia là sốnguyên thì đó là phép chia nguyên nênphần dư của phép chia nguyên bị cắt bỏ

Ví dụ: 5/2 cho kết quả là 2

y Toán tử lấy phần dư % (modulus operator)y p ( p )chỉ áp dụng với số nguyên

Trang 27

13 Toán tử gán phức hợp

Trang 29

y Ví dụ:

a++;//tương đương với a+=1; và a=a+1; g g ;a ;//tương đương với a-=1; và a=a-1

Trang 30

y Tiền tố (prefix) : Toán tử ++/ đặt trước

toán hạng, hành động tăng/giảm trên toán

hạng được thực hiện trước, sau đó giá trịmới của toán hạng sẽ tham gia định trị củabiểu thức

biểu thức

y Ví dụ:

B 3;

A=++B;

Kết quả: A chứa giá trị 4, B chứa giá trị 4

Kết quả: A chứa giá trị 4, B chứa giá trị 4

Trang 31

y Hậu tố (postfix): Toán tử ++/ đặt sau

toán hạng, giá trị trong toán hạng được

tăng/giảm sau khi đã tính toán

Trang 33

biểu thức, thì độ ưu tiên thực hiện như sau:

Toán tử Độ ưu tiên

Toán tử Độ ưu tiên

Trang 34

15

15 Toán tử quan hệ & luận lý Toán tử quan hệ & luận lý

(relational & logical operators)

y Toán tử quan hệ được định trị là true hoặc false

>= So sánh lớn hơn hoặc bằng 6 3 >= 5 //kết quả1

>= So sánh lớn hơn hoặc bằng 6.3 >= 5 //kết quả1

Trang 36

15

15 Toán tử quan hệ & luận lý Toán tử quan hệ & luận lý

(relational & logical operators)

y Độ ưu tiên của toán tử quan hệ và luận lý:

Toán tử Độ ưu tiên

Trang 38

16 Toán tử ?? (( ?? operator)

16 Toán tử ?? (( ?? operator)

y Toán tử ? là một toán tử ba ngôi do đó phải

có ba toán hạng

y Dạng tổng quát của toán tử ? là:

Exp1 ? Exp2 : Exp3;

y Exp1, Exp2, và Exp3 là các biểu thức

y Ý nghĩa:

−Nếu Exp1 đúng thì Exp2 được định trị và

nó trở thành giá trị của biểu thức

−Ngược lại, nếu Exp1 sai, Exp3 được định

à ở hà h á ủ b ể hứtrị và trở thành giá trị của biểu thức

Trang 40

mà mỗi kiểu dữ liệu có số byte khác nhau

mà mỗi kiểu dữ liệu có số byte khác nhau

Trang 41

18

18 Toán t Toán tử ử ddấấu ph u phẩẩy (comma operator) y (comma operator)

18

18 Toán t Toán tử ử ddấấu ph u phẩẩy (comma operator) y (comma operator)

y Toán tử comma buộc các biểu thức cùngvới nhau

y Biểu thức bên trái của toán tử comma luônluôn được định trị như void, biểu thức bênphải được định trị và trở thành giá trị củabiể thứ

biểu thức

y Dạng tổng quát của toán tử comma:

(exp_1, exp_2, , exp_n)

Trang 42

18

18 Toán t Toán tử ử ddấấu ph u phẩẩy (comma operator) y (comma operator)

18

18 Toán t Toán tử ử ddấấu ph u phẩẩy (comma operator) y (comma operator)

y Các biểu thức được định trị từ trái sang

phải, biểu thức cuối cùng (exp_n) được địnhtrị và trở thành giá trị của toàn bộ biểuthức

Trang 43

19 Độ ưu tiên của các toán tử

Trang 44

20 Biểu thức (expressions)

20 Biểu thức (expressions)

y Một biểu thức trong C/C++ là sự kết hợpcủa các thành phần: toán tử, hằng, biến, vàhàm có trả về giá trị

hứ đ h ủ b ể hứ ù h ộ à

y Thứ tự định trị của biểu thức tùy thuộc vào

độ ưu tiên của các toán tử

Để biể thứ õ à à thự hiệ iệ đị h

y Để biểu thức rõ ràng và thực hiện việc địnhtrị đúng, nên dùng cặp dấu ngoặc tròn ()bao quanh các biểu thức con của biểu thứcbao quanh các biểu thức con của biểu thức

Trang 46

21 Chuy Chuyểển ki n kiểểu trong bi u trong biểểu th u thứ ứcc

21

21 Chuy Chuyểển ki n kiểểu trong bi u trong biểểu th u thứ ức c

y Khi các hằng và biến của những kiểu khác

nhau tồn tại trong một biểu thức, giá trịcủa chúng phải được chuyển thành cùngkiểu trước khi các phép toán giửa chúngđược thực hiện

y Trình biên dịch sẽ thực hiện việc chuyển

y Trình biên dịch sẽ thực hiện việc chuyểnkiểu (convert) tự động đến kiểu của toánhạng có kiểu lớn nhất Việc chuyển kiểu nàygọi là thăng cấp kiểu (type promotion)

Ngày đăng: 27/06/2014, 11:20