[r]
Trang 1Ch ươ ng 5 Ki u m ng và xâu ký t ể ả ự
I M ng ả
II Xâu ký tự
III Bài t p ch ng 5 ậ ươ
Trang 2I M ng ả
1 Khái ni m v ki u m ng ệ ề ể ả
2 Khai báo bi n m ng m t chi u ế ả ộ ề
3 Truy nh p các ph n t c a m ng m t chi u ậ ầ ử ủ ả ộ ề
4 Kh i t o m ng m t chi u ở ạ ả ộ ề
5 M ng nhi u chi u ả ề ề
6 Chú ý v ch s c a ph n t m ng ề ỉ ố ủ ầ ử ả
7 Vào/ra v i bi n m ng ớ ế ả
Trang 3I.1 Khái ni m v ki u m ng ệ ề ể ả
Trang 4I.2 Khai báo bi n m ng m t chi u ế ả ộ ề
Khai báo bi n m ng là xác đ nh tên bi n m ng, ki u ế ả ị ế ả ể
ph n t , s chi u và kích th c m i chi u.ầ ử ố ề ướ ỗ ề
Cú pháp khai báo bi n m ng m t chi u:ế ả ộ ề
Ki u_ph n_t Tên_bi n_m ng[Kích th c]; ể ầ ử ế ả ướ
trong đó kích th c là s ph n t c a m ng, ph i cho d i ướ ố ầ ử ủ ả ả ướ
d ng h ng ho c bi u th c h ng Ki u ph n t có th là b t kỳ ạ ằ ặ ể ứ ằ ể ầ ử ể ấ
ki u nào ể
Ví d này đ nh nghĩa m t bi n m ng có tên là a, ụ ị ộ ế ả
ki u ph n t là int, s chi u là m t và kích th c (s ể ầ ử ố ề ộ ướ ố
Trang 5I.3 Truy nh p các ph n t c a m ng m t chi u ậ ầ ử ủ ả ộ ề
n-1.
Ví d : ụ n u ta đ nh nghĩa m t bi n m ng ế ị ộ ế ả
int a[5];
Trang 6I.3 Truy nh p các ph n t c a m ng m t chi u ậ ầ ử ủ ả ộ ề
Ví d : ụ 5 ph n t c a m ng a ví d trên có ầ ử ủ ả ở ụ
sau:
a[0]=100; cout<<a[1];
for(int i=0;i<5;++i) scanf(“%d”,&a[i]);
Trang 7I.4 Kh i t o m ng m t chi u ở ạ ả ộ ề
Ví d : ụ Các giá tr kh i t oị ở ạ
int a[5] = {12, 6, 10, 7, 19};
Trang 8I.4 Kh i t o m ng m t chi u (ti p) ở ạ ả ộ ề ế
N u s giá tr kh i t o ít h n kích th c m ng thì ế ố ị ở ạ ơ ướ ả các ph n t còn l i s đ c kh i t o b ng 0 N u s ầ ử ạ ẽ ượ ở ạ ằ ế ố giá tr kh i t o l n h n kích th c m ng thì trình ị ở ạ ớ ơ ướ ả biên d ch s báo l i.ị ẽ ỗ
Ví d :ụ int a[3] = {6,8}; //a[0]=6, a[1]=8, a[2]=0
int a[2] = {8, 6, 9}; //Báo l i ỗ
V i nh ng m ng đ c kh i t o có th không c n ớ ữ ả ượ ở ạ ể ầ xác đ nh kích th c m ng Khi đó trình biên d ch s ị ướ ả ị ẽ
đ m s giá tr kh i t o và dùng s đó làm kích ế ố ị ở ạ ố
th c m ng ướ ả Ví d :ụ
int a[] = {3, 5, 8}; //s đ c m ng có kích th c là 3ẽ ượ ả ướ
Trang 9I.5 M ng nhi u chi u ả ề ề
M ng m t chi u là m ng mà các ph n t c a nó đ c ả ộ ề ả ầ ử ủ ượ truy nh p qua m t ch s M ng nhi u chi u là m ng ậ ộ ỉ ố ả ề ề ả
mà các ph n t đ c truy nh p qua nhi u ch s ầ ử ượ ậ ề ỉ ố
C cho phép khai báo các m ng nhi u chi u v i kích ả ề ề ớ
th c m i chi u có th khác nhau Cú pháp chung nh ướ ỗ ề ể ư sau:
Ki u Tên_bi n_m ng[Kích th c chi u 1][Kích th c chi u 2]…; ể ế ả ướ ề ướ ề
Ví d :ụ
Trang 10I.5 M ng nhi u chi u (ti p) ả ề ề ế
Đ truy nh p ph n t c a m ng m chi u thì ta ph i ể ậ ầ ử ủ ả ề ả dùng m ch s Ch s c a m i chi u có giá tr t 0 đ n ỉ ố ỉ ố ủ ỗ ề ị ừ ế kích th c c a chi u đó tr đi 1 Cú pháp chung nh ướ ủ ề ừ ư sau:
Tên_bi n_m ng[ch s chi u 1][Ch s chi u 2]… ế ả ỉ ố ề ỉ ố ề
M ng 2 chi u có th xem nh là m ng m t chi u có ả ề ể ư ả ộ ề các ph n t là m t m ng m t chi u.ầ ử ộ ả ộ ề
Ta cũng có th kh i t o giá tr cho các ph n t c a ể ở ạ ị ầ ử ủ
m ng nhi u chi u ngay khi đ nh nghĩa Ví d :ả ề ề ị ụ
int a[2][3] = {{5, 7, 9},{3, 6, 7}};