Tải bản đầy đủ (.pdf) (50 trang)

Bài giảng phương pháp lập trình chương 2 GV từ thị xuân hiền

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (983 KB, 50 trang )

CHƯƠNG 2

BIỂU THỨC
(Expressions)


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ến
hoặ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ỉ
định toán tử nào được thực hiện trước.


2. Kiểu dữ liệu(Data type)
 C/C++

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

−Ký tự (char)


−Số nguyên (int)
−Số thực (float)
−Số thực có độ chính xác gấp đôi (double)
−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.


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 bytes) trên môi trường 32-bit như
Windows 95



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ổng
quát (generic pointers).



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


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ái
hoặc dấu _ (underscore), những ký tự theo
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).


4. Từ khóa (keywords)



Là những từ được dành riêng bởi ngôn ngữ
lập trình cho những mục đích riêng của nó



Tất cả các từ khóa trong C/C++ đều là chữ
thường (lowercase).



Danh sách các từ khóa trong C/C++


5. Biến (variables)


Biến là định danh của một vùng trong bộ
nhớ dùng để giữ một giá trị mà có thể bị
thay đổi bởi chương trình.



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



Cách khai báo:
type variableNames;

− type: là một trong các kiểu dữ liệu hợp lệ.
− variableNames: tên của một hay nhiều
biến phân cách nhau bởi dấu phẩy.


5. Biến (variables)
Ngoài ra, ta có thể vừa khai báo vừa khởi
tạo giá trị ban đầu cho biến:
type varName1=value, ... ,varName_n=value;
 Ví dụ:
float mark1, mark2, mark3, average = 0;



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ột
hàm gọi là biến cục bộ.

− Các

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


− Một
− Biến

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

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.


6. Phạm vi của biến
Ví dụ:
void func1(void)
{
int x;
x = 10;
}
void func2(void)
{
int x;
x = -199;
}


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ền
vào hàm thì nó phải khai báo các biến

để nhận giá trị của các đối số khi
hà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
giống như các biến cục bộ.


6. Phạm vi của biến
Ví dụ:
int sum(int from, int to)
{
int total=0;
for(int i=from ; i<=to ; i++)
total +=i;
return total;
}


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àn
cục.



Biến toàn cục được khai báo bên ngoài tất
cả hàm.


6. Phạm vi của biến
#include <iostream.h>
int gVar = 100;
void increase()
{ gVar = gVar + 1;}
void decrease()
{ gVar = gVar -1;}
void main()
{
cout << “Value of gVar= “ << gVar; increase();
cout << “After increased, gVar= “ << gVar; decrease();
cout << “After decreased, gVar= “ << gVar;
}


7. Từ khóa const


Giá trị của biến thay đổi trong suốt quá
trình thực thi chương trình.




Để giá trị của biến không bị thay đổi, ta đặt
trước khai báo biến từ khóa const.



Thông thường ta dùng chữ HOA để đặt tên
cho những biến này.

Ví dụ:
const int MAX = 200;


8. Hằng (constants)






Hằng là những giá trị cố định (fixed
values) mà chương trình không thể thay
đổi. Mỗi kiểu dữ liệu đều có hằng tương
ứng. Hằng còn được gọi là literals.
Hằng ký tự được đặt trong cặp nháy đơn.
Ví dụ: 'a’
Hằng nguyên là những số mà không có
phần thập phân.

Ví dụ 100 , -100


8. Hằng (constants)


Hằng số thực yêu cầu một dấu chấm
phân cách phần nguyên và phần thập phân.
Ví dụ: 123.45



Cách viết một số loại hằng số


8. Hằng chuỗi ký tự (string
constants)


Hằng chuỗi ký tự là một tập các ký tự đặt
trong cặp nháy kép “”.

Ví dụ:
• "This is a string" //là một chuỗi.
• ‘a’ //là một hằng ký tự.
• “a” //là một hằng chuỗi.


9. Hằng ký tự đặc biệt(escape
sequences)



9. Hằng ký tự đặc biệt(escape
sequences)
#include <iostream.h>
void main(void)
{
cout <<"Items:\n";
cout <<”\tItem1\n”;
cout <<”\tItem2\n”;
cout <<”\tItem3\n”;
}


10. Toán tử (operators)
Toán tử gán (assignment operator)
Cú pháp tổng quát
variableName = expression;
− variableName: Tên biến
− expression: Biểu thức
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;




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

Đối với câu lệnh gán, giá trị của biểu thức
bên phải dấu = được tự động chuyển thành
kiểu dữ liệu của biến bên trái dấu =
Ví dụ:
int i=100;
double d = 123.456;
 Nếu thực thi lệnh i = d; thì i = 123 (chuyển
đổi kiểu mất mát thông tin).
 Nếu thực thi lệnh d = i; thì d =100.0
(chuyển đổi kiểu không mất mát thông tin).



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


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ớn
hơn:charintlongfloatdouble, thì việc
chuyển đổi kiểu này là không mất mát
thông tin



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ì
việc chuyển đổi kiểu này là mất mát thông

tin


12. Toán tử số học (arithmetic
operators)
Toán tử

Tên

Ví dụ

+

Cộng

-

Trừ

*

Nhân

12 + 4.9 // kết quả
16.9
3.98 - 4 // kết quả 0.02
2 * 3.4 // kết quả 6.8

/


Chia

9 / 2.0 // kết quả 4.5

%

Lấy phần dư 13 % 3 // kết quả 1


×