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

Bài giảng Nhập môn về lập trình - Chương 3: Tổ chức dữ liệu trong chương trình

26 31 0

Đ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

Định dạng
Số trang 26
Dung lượng 550,71 KB

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

Nội dung

Bài giảng Nhập môn về lập trình - Chương 3: Tổ chức dữ liệu trong chương trình với mục tiêu giúp sinh viên biết được tên và các thuộc tính của các kiểu dữ liệu cơ bản về số, ký tự, enum và logic (logic trong mở rộng của C, C++); nhập được giá trị của các biến từ bàn phím và xuất được giá trị của các biến ra màn hình... Mời các bạn cùng tham khảo chi tiết nội dung bài giảng.

Trang 1

Chương 3

Tổ chức dữ liệu trong chương trình

Presenter:

Trang 2

Learning outcomes

L.O.2.1 – Biết được tên và các thuộc tính của các kiểu dữ

liệu cơ bản về số, ký tự, enum và logic (logic trong

mở rộng của C, C++)

L.O.2.2 – Khai báo được các biến và hằng

L.O.2.3 – Xác định và giải thích rõ các kiểu lưu trữ biến

L.O.2.4 – Sử dụng được các toán tử có thể thực hiện được

với các kiểu dữ liệu để thành lập biểu thức

L.O.2.5 – Nhập được giá trị của các biến từ bàn phím và

xuất được giá trị của các biến ra màn hình (nhắc

lại có nâng cao)

L.O.2.6 – Định nghĩa được các kiểu có cấu trúc và sử dụng

chúng

Trang 3

Tổ chức dữ liệu trong chương trình C

Phân loại

 Dữ liệu dùng trong các chương trình C thường xuất hiện dưới 3 hình thức:

• Giá trị tức thời (value)

• Hằng (constant): có tên (name) và giá trị thay thế (value)

• Biến (variable): có tên (name), kiểu (type) và nội dung chứa bên trong (value)

Trang 4

Giá trị tức thời

Cách viết

 Dữ liệu số :

• Số nguyên hệ 8: bắt đầu bằng chữ „O‟ (Octal)

Ví dụ: O165 -O203

• Số nguyên hệ 16: bắt đầu bằng 0x (Hexadecimal)

Ví dụ: 0x3D -0x3AF8

• Số nguyên hệ 10: (Decimal)

Ví dụ: 169 -2053

• Số thực chấm động: (floating point)

Ví dụ: 3.14159 -0.31459e1 -83.1E-9

 Dữ liệu ký tự / chuỗi

• Ký tự: đặt trong 2 dấu nháy đơn („)

Ví dụ: „A‟ „7‟ „\064‟ „\t‟

• Chuỗi: đặt trong 2 dấu nháy kép (“)

Ví dụ: “Nhap so: “ “%-10.3f\n”

Trang 5

Hằng

 Hằng là một giá trị được đặt tên (thường dùng chữ lớn)

 Cú pháp định nghĩa hằng gợi nhớ cơ bản :

const <type> <name> = <value> ;

hay

Ví dụ: const int VMAX = 15;

#define VMAX 15

Lưu ý : dấu < > chỉ để miêu tả phần tử do người sử dụng đặt

Trang 6

• Có nội dung: là giá trị chứa trong biến

 Kiểu dữ liệu cung cấp bởi C++ chia ra thành kiểu có sẳn

(tên kiểu do C++ qui định) và kiểu của người sử dụng (tên kiểu do người sử dụng đặt thông qua đặc tả kiểu)

Trang 7

Kiểu dữ liệu có sẳn của C++

 void : 0 byte (không có giá trị nào), được dùng để miêu tả kiểu trả về

của hàm mà không muốn trả về giá trị

 short / short int : 2 bytes (-32,768  32,767)

 unsigned short : 2 bytes (0 to 65535)

 int / long (long integer) : 4 bytes (-2,147,483,648  2,147,483,647)

 unsigned int / unsigned long : 4 bytes (0 to 4,294,967,295)

 float (single-precision floating-point) :4 bytes [6 chữ số]

(1.175494351E-38F 3.402823466E+38)

 double (double-precision floating-point) : 8 bytes [15 chữ số]

(2.2250738585072014E-308 1.7976931348623158E+308)

Trang 8

Biến

Định nghĩa và khai báo

 Định nghĩa biến theo cú pháp:

<type> <variable> [ =<ConstExpr>] ;

trong đó <type> có thể là kiểu có sẳn hay kiểu của người sử dụng

<ConstExpr> là trị ban đầu, có thể không có

Ví dụ: int so=3;

char kytu; float x1,x2;

hoso sv1;

 Khai báo biến (đã được định nghĩa trong module khác):

extern <type> <variable> ;

Ví dụ: extern int so;

extern char gioitinh;

 Định nghĩa biến tĩnh:

static <type> <variable> [=<ConstExpr>];

Ví dụ: static long dem;

Biến static là biến toàn cục

Biến automatic là biến cục bộ

Biến dynamic cấp phát lúc chạy

Trang 9

Biểu thức

Các thành phần của biểu thức

 Biểu thức thể hiện cách xử lý dữ liệu trong chương trình

 Biểu thức là cách tính toán của chương trình

 Các thành phần xác định biểu thức :

• Các toán hạng : các biến, hằng dữ liệu,

• Các toán tử tham gia biểu thức : +,-,*,/,

• Qui trình tính biểu thức của phần mềm

• Kiểu kết quả sau khi tính biểu thức

Trang 10

Biểu thức

Biểu thức cơ bản

Biểu thức cơ bản là phần tử nhỏ nhất tạo ra biểu thức

 Các biểu thức cơ bản gồm :

• Giá trị ( kiểu nguyên, thực, chuỗi, ) [ chính giá trị ]

• ( Biểu thức ) [ giá trị Biểu thức ]

 Biểu thức cơ bản là biểu thức

 Nhiều biểu thức cơ bản kết hợp với nhau bằng các toán

tử cũng là biểu thức

Trang 11

Biểu thức

Các toán tử

 Phân loại theo số lượng toán hạng :

• Toán tử 1 ngôi : chỉ cần 1 toán hạng [ & , * , + , - , ~ , ! ]

Ví dụ: toán tử '-' (số âm), toán tử „!‟ (not luận lý)

• Toán tử 2 ngôi : cần dùng 2 toán hạng

Ví dụ: toán tử '*' (nhân 2 số), „%‟ (chia lấy phần dư),

• Toán tử 3 ngôi : cần dùng 3 toán hạng

Ví dụ: toán tử 'c ? v1 : v2 ' (kiểm tra điều kiện c, nếu c đúng trả về

v1, c sai trả về v2)

 VC++ thường dùng các ký tự đặc biệt để miêu tả toán tử

Ví dụ: '+ ' là cộng, '- ' là trừ, '* ' là nhân, '/ ' là chia,

Trang 12

Biểu thức

Qui trình tính biểu thức

 Qui trình tính : Từ trái sang phải, mỗi lần gặp 1 toán tử

( CurrentOp ) thì phải nhìn tiếp toán tử đi ngay sau nó

quyết định như sau :

• Nếu không có SussesorOp thì tính ngay toán tử CurrentOp (trên

1, 2 hay 3 toán hạng của nó)

• Nếu toán tử CurrentOp có độ ưu tiên cao hơn hay bằng toán tử

SussesorOp thì tính ngay toán tử CurrentOp (trên 1, 2 hay 3

toán hạng của nó)

• Các trường hợp còn lại thì cố gắng thực hiện toán tử

bước đầu,

Trang 13

 Bảng liệt kê độ ưu tiên các toán tử từ cao xuống thấp :

Member selection (object) Left to right

Biểu thức

Nhóm toán tử và độ ưu tiên (1)

Trang 14

Operator Name or Meaning Associativity

Arithmetic negation (unary) None

% Remainder (modulus) Left to right

Biểu thức

Nhóm toán tử và độ ưu tiên (2)

Trang 15

Biểu thức

Nhóm toán tử và độ ưu tiên (3)

^ Bitwise exclusive OR Left to right

Trang 16

Biểu thức

Nhóm toán tử và độ ưu tiên (4)

*= Multiplication assignment Right to left

/= Division assignment Right to left

%= Modulus assignment Right to left

+= Addition assignment Right to left

-= Subtraction assignment Right to left

|= Bitwise inclusive OR assignment Right to left

^= Bitwise exclusive OR assignment Right to left

Trang 17

Biểu thức

Kiểu của biểu thức

 Kiểu của biểu thức lấy theo kiểu của toán hạng lớn nhất

 So sánh các kiểu số dựa trên độ lớn (10x) và độ chính xác

(số chữ số có nghĩa)

Kiểu Số byte Độ chính xác Độ lớn

 char < short < int/long < double

 char < short < float < double

Trang 18

+= iNum1 += iNum2 iNum1 = iNum1 + iNum2

-= iNum1 -= iNum2 iNum1 = iNum1 - iNum2

*= iNum1 *= iNum2 iNum1 = iNum1 * iNum2

/= iNum1 /= iNum2 iNum1 = iNum1 / iNum2

%= iNum1 %= iNum2 iNum1 = iNum1 % iNum2

Ví dụ : tính tổng S=1+2+3+ +7

tong=0;

for (dem=1; dem<=7; dem++) tong += dem;

Trang 19

Biểu thức

Toán tử tăng / giảm

-

++ Cộng 1 vào toán hạng

Trừ 1 vào toán hạng

 ++ hay là các toán tử một toán hạng có thể dùng ở trước (prefix)

hoặc sau (postfix) tên biến

 Toán tử prefix sẽ được thực hiện trước khi sử dụng toán hạng

Ví dụ : dem = ++tridau; tương đương

tridau++; dem=tridau;

 Toán tử postfix sẽ được thực hiện sau khi sử dụng toán hạng

Trang 20

Biểu thức

Biểu thức số học

 Toán tử số học gồm các nhóm:

• Một ngôi : + (dương), - (âm)

• Nhân/Chia : *, /, %

• Cộng/Trừ : +, -

• Bit : ~ (not), & (and), | (or), ^ (xor)

 Biểu thức số học là biểu thức gồm các biểu thức cơ bản

kết hợp với nhau chỉ bằng toán tử số học

 Toán hạng đầu vào kiểu số , kết quả đầu ra kiểu số

 Thường dùng để tính toán dữ liệu số

Trang 21

Biểu thức

Biểu thức so sánh

 Toán tử so sánh trả về trị true (khác 0) hay false (bằng 0)

 Biểu thức so sánh có dạng

<biểu thức số học> <toán tử so sánh> <biểu thức số học>

Trang 22

Biểu thức

Biểu thức luận lý

 Toán tử luận lý thực hiện phép toán luận lý dựa trên trị luận lý đúng

 Biểu thức luận lý có dạng

 Toán hạng đầu vào kiểu đúng/sai, kết quả đầu ra kiểu đúng/sai

 Dùng để ghép các điều kiện trong lệnh

Trang 23

Biểu thức

Nguyên tắc hoạt động của toán tử luận lý

 Các toán tử luận lý hoạt động theo bảng sự thật sau:

Trang 24

Biểu thức

Ví dụ

Trang 25

Lệnh gán

Cú pháp và mục đích

 Cú pháp lệnh gán dùng toán tử gán '=' :

<biến> = <biểu thức>;

 Sau khi thực hiện, giá trị <biểu thức> sẽ được tính và cất

vào <biến> , nội dung cũ của <biến> sẽ bị mất

 Ta có thể thực hiện phép gán liên tiếp như sau :

a = b = c = 25; // a,b,c đều chứa số 25

Ngày đăng: 07/07/2021, 09:26

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm