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

Ch03 to chuc du lieu

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 (823.95 KB, 52 trang )

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

Trần Quang
© 2016

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

Kỹ thuật lập trình
1


Nội dung










Dữ liệu cố định
Hằng
Biến
Kiểu dữ liệu
Từ khoá
Tầm vực biến
Phép toán và biểu thức


Kiểu enum, struct
Chuyển đổi kiểu dữ liệu

Trần Quang
© 2016

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

Kỹ thuật lập trình
2


Dữ liệu




Dữ liệu được lưu trữ trong RAM của máy tính
trong q trình chương trình thực thi
Dữ liệu trong các chương trình C thường xuất hiện
dưới 3 hình thức:



Literals hay Fixed Value: giá trị cố định
Constant: hằng





Variable: biến


Trần Quang
© 2016

có tên (name) và giá trị thay thế (value)
có tên (name), kiểu (type) và nội dung chứa bên
trong (value)

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

Kỹ thuật lập trình
3


Giá trị cố định


Giá trị số:


Số nguyên hệ bát phân (octal): bắt đầu bằng số 0




Ví dụ:

0x3D


-0x3AF8

Ví dụ:

169

-2053

Số thực dấu chấm đợng: (floating point)


Trần Quang
© 2016

-0203

Số ngun hệ thập phân (decimal): như bình thường




0165

Số nguyên hệ thập lục (hexadecimal): bắt đầu bằng 0x




Ví dụ:


Ví dụ:

3.14159

13.5f

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

-83.1E-9

Kỹ thuật lập trình
4


Giá trị cố định




Giá trị cố định kiểu số nguyên có thể có phần hậu
tố (suffix) là sự kết hợp của U và L, cho kiểu
Unsigned và kiểu Long. Có thể là chữ hoa hoặc
chữ thường theo bất cứ thứ tự nào.
Ví dụ:
078
032UU
30
30u
30l

30ul

Trần Quang
© 2016

/* Khơng hợp lệ: 8 khơng có trong hệ bát phân*/
/* Khong hop le: không thể lặp lại hậu tố */
/* int */
/* unsigned int */
/* long */
/* unsigned long */
Chương 03: Tổ chức dữ liệu trong chương trình

Kỹ thuật lập trình
5


Giá trị cố định


Giá trị kiểu ký tự - chuỗi


Ký tự: đặt trong 2 dấu nháy đơn ('). Có thể ký tự
bình thường (plain character) hay escape sequence
('\n', '\t', …)





'A'

'7'

'\101' '\t'

Ch̃i: đặt trong 2 dấu nháy kép (“)


Trần Quang
© 2016

Ví dụ:

Ví dụ:

"Dai Hoc Bach Khoa"

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

Kỹ thuật lập trình
6


Escape sequence
Escape
sequenc
e

Meaning


Escape
sequence

Meaning

\\

\ character

\n

Newline

\'

' character

\r

Carriage return

\"

" character

\t

Horizontal tab


\?

? character

\v

Vertical tab

\a

Alert or bell

\ooo

Octal number of one to three digits

\b

Backspace

\f

Form feed

\xhh . . .

Hexadecimal number of one or
more digits

Trần Quang

© 2016

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

Kỹ thuật lập trình
7


Hằng






Hằng là một giá trị được đặt tên (thường dùng chữ
in hoa)
Cú pháp định nghĩa hằng:
const <type> <name> = <value> ;
hay
#define <ConstName> <value>
Ví dụ:




Trần Quang
© 2016

const int MAX = 15;

#define MAX 15

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

Kỹ thuật lập trình
8


Ví dụ


Kiểu ký tự
const char c = ‘a’;
const char c = ‘A’;



Kiểu chuỗi
const char c[] = “LAP TRINH C/C++”;
const char c[] = “SAI GON”;



Kiểu số
const int a = 100;
const float f = 10.5f;
const double d = 10.5;

Trần Quang
© 2016


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

Kỹ thuật lập trình
9


Biến


Biến là mợt vùng trong bợ nhớ của máy tính và có
các đặc điểm sau:






Trần Quang
© 2016

Có tên (name): do người dùng tự đặt ra để dùng
thay cho địa chỉ trong bộ nhớ
Có kiểu (type): liên quan đến loại và độ lớn của giá
trị mà biến có thể chứa.
Có dữ liệu: là giá trị chứa trong biến.

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

Kỹ thuật lập trình

10


Biến







Là nơi lưu trữ dữ liệu của chương trình, nói khác
nó là 1 vùng nhớ được đặt tên
Do có tên, nên khi cần đọc/ghi với vùng nhớ này,
người lập trình chỉ cần dùng tên thay cho một địa
chỉ của nó.
Biến cần được khai báo trước khi dùng (đọc/ghi)
Chương trình tự động cấp phát vùng nhờ khi gặp
một khai báo biến

Trần Quang
© 2016

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

Kỹ thuật lập trình
11


Khai báo biến



Cú pháp:
<type> <VariableName> [=<ConstExpr>];
trong đó:
 <type> : kiểu có sẵn hay người dùng tự định nghĩa
 <VariableName> : tên biến do người dùng tự đặt
 <ConstExpr> : giá trị ban đầu, có thể có hoặc khơng

Trần Quang
© 2016

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

Kỹ thuật lập trình
12


Khai báo biến
Ví dụ:
 Tạo mợt biến
int a;
char c;


Tạo nhiều biến cùng kiểu
int a, b;
char c1, c2;




Tạo biến và khởi đợng giá trị
int a=10, b;
char c1=‘A’, c2=‘a’;

Trần Quang
© 2016

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

Kỹ thuật lập trình
13


Khai báo biến


Khai báo biến đã được định nghĩa trong module
khác:
extern <type> <variable> ;




Ví dụ: extern int so;

Khai báo biến tĩnh:
static <type> <variable> [=<ConstExpr>];



Trần Quang
© 2016

Ví dụ: static long dem;

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

Kỹ thuật lập trình
14


Quy tắc đặt tên biến




Quy tắc đặt tên biến theo quy tắc đặt tên danh hiệu
(tên hằng, tên biến, …)
Quy tắc đặt tên danh hiệu:





Trần Quang
© 2016

Ký tự đầu là một chữ cái hay dấu gạch dưới (_)
Các ký tự tiếp theo là chữ cái, số, dấu gạch dưới
Không được là ký hiệu nào khác: ! @ # $ % ^ & * …

Khơng được trùng với từ khố

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

Kỹ thuật lập trình
15


Từ khoá




Là từ có ý nghĩa đặc biệt đã được quy định trước
bởi ngơn ngữ lập trình.
Người lập trình khơng được dùng từ khố để đặt
tên cho các tên mình tạo ra như tên biến, tên kiểu,
tên hàm, tên hằng, v.v.

Trần Quang
© 2016

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

Kỹ thuật lập trình
16


Từ khoá


Trần Quang
© 2016

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

Kỹ thuật lập trình
17


Kiểu dữ liệu
Dữ liệu mà chương trình lưu trữ có thể thuộc nhiều
dạng khác nhau, gọi là kiểu dữ liệu (data type)




Ký tự (character)
Kiểu số








Trần Quang
© 2016

Số nguyên (integer)

Số thực (float)

Kiểu chuỗi
Kiểu mảng (array)
Kiểu cấu trúc (struct)
Kiểu kiệt kê (enum)

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

Kỹ thuật lập trình
18


Kiểu dữ liệu


Mỗi kiểu dữ liệu có cách tổ chức lưu trữ, cũng như
các phép toán đi kèm khác nhau


Cách tổ chức lưu trữ


Ví dụ: với số nguyên, ý nghĩa bit có trọng số lớn nhất
(MSB) phụ thuộc vào nó là số có dấu hay khơng dấu






Các phép tốn


Trần Quang
© 2016

Số khơng dấu: bit này tham gia vào tính đợ lớn giá trị
Số có dấu: bit này chỉ ra là số dương hay âm

Ví dụ: có thể thực hiện các phép tốn nhân hay chia
với kiểu số, nhưng khơng thể thực hiện nhân với kiểu
chuỗi ký tự
Chương 03: Tổ chức dữ liệu trong chương trình

Kỹ thuật lập trình
19


Các loại kiểu dữ liệu


Kiểu dữ liệu cơ bản (fundamental data type)





Kiểu dữ liệu do người lập trình định nghĩa (userdefined data type)






Ngôn ngữ C/C++ cung cấp sẵn một số các tên kiểu
Tên các kiểu này cũng là từ khoá

Tên kiểu do người lập trình tự đặt ra
Mợt số kiểu như: struct, enum

Kiểu dữ liệu dẫn xuất (derived data type)



Trần Quang
© 2016

Mảng (array)
Con trỏ (pointer)
Chương 03: Tổ chức dữ liệu trong chương trình

Kỹ thuật lập trình
20



Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay
×