5/3/2015
TRƯ NG Đ I H C BÁCH KHOA HÀ N I
Ngôn ng
l p trình C và C++
Bài 5: B ng và Con tr
TS. Đ Đăng Khoa
B môn Cơ h c
Vi n Cơ khí
ng d ng
http://chud-dhbkhn.blogspot.com/
1
5/3/2015
Khái ni m v B ng (M ng)
Khi c n lưu tr m t dãy n ph n t d li u chúng ta c n khai
báo n bi n tương ng v i n tên g i khác nhau -> khó khăn đ có
th nh và qu n lý h t đư c t t c các bi n
M t b ng trong C/C++ là m t t p h p các ph n t d li u liên
quan có cùng ki u và đư c truy c p b i m t tên chung
T t c các ph n t c a b ng chi m m t t p h p các v trí b
nh li n k nhau, và s d ng ch s đ xác đ nh t ng ph n t
Ch s b ng b t đ u t 0
M ng có th có nhi u chi u
Ví d : danh sách sinh viên, danh sách đi m s c a sinh viên,etc
2 TRƯ
NG Đ I H C
BÁCH KHOA HÀ N I
2
5/3/2015
M ng m t chi u
// m ng s
nguyên m t chi u có 10 ph n t
int A[10];
A[3]=1;
0
A
1
2
--
--
--
3
1
4
5
6
7
8
9
--
--
--
--
--
--
A[0] A[1] A[2] A[3] A[4] A[5] A[6] A[7] A[8] A[9]
TRƯ NG Đ I H C
BÁCH KHOA HÀ N I
3
5/3/2015
Khai báo b ng (m ng) m t chi u
Các đ c tính riêng c a b ng (m ng) c n đư c đ nh nghĩa.
Ki u d li u c a các ph n t
Tên m ng:
đ i di n cho v trí ph n t đ u tiên
Kích thư c m ng :
m t h ng s
Khai báo m ng gi ng như cách khai báo bi n. Ch khác là
tên m ng đư c theo sau b i m t ho c nhi u bi u th c đ t
trong c p d u ngo c vuông [], đ xác đ nh kích thư c c a
m ng.
int x[20];
// x có th
ch a 20 s
float price[10];
// price có th
char letter[70];
// letter có th
do c n c n có kí t
nguyên
ch a 10 s
th c
ch a t i ña 69 kí t
k t thúc không (\0) cu i xâu
TRƯ NG Đ I H C
BÁCH KHOA HÀ N I
4
5/3/2015
Các qui t c v b ng (m ng)
Các ph n t c a m ng có cùng ki u d li u
M i ph n t c a m ng có th đư c s d ng như m t bi n
riêng l
Ki u d li u c a m ng có th là int, char, float ho c double
M ng đư c “đ i x ” không gi ng hoàn toàn v i bi n
Hai m ng có cùng ki u và cùng kích thư c cũng không
đư c xem là tương đương nhau
Không th gán tr c ti p m t m ng cho m t m ng khác.
Không th gán tr cho toàn b m ng, mà ph i gán tr cho
t ng ph n t c a m ng
TRƯ NG Đ I H C
BÁCH KHOA HÀ N I
5
nguon tai.lieu . vn