Giáo trình ngôn ngữ C


Kiểu_mảng tên_mảng [sd][sc] = {{kđ_dòng_1},{ kđ_dòng_2},..,{ kđ_dòng_k}}



tải về 2.34 Mb.
Chế độ xem pdf
trang50/62
Chuyển đổi dữ liệu16.03.2023
Kích2.34 Mb.
#54376
1   ...   46   47   48   49   50   51   52   53   ...   62
C ĐHQGHN

1. Kiểu_mảng tên_mảng [sd][sc] = {{kđ_dòng_1},{ kđ_dòng_2},..,{ kđ_dòng_k}}; 
2. Kiểu_mảng tên_mảng [ ][sc] = {{kđ_dòng_1},{ kđ_dòng_2},..,{ kđ_dòng_k}}; 
3. Kiểu_mảng tên_mảng [sd][sc] = { gt_1, gt_2,...,gt_n }; 
4. Kiểu_mảng tên_mảng [ ][sc] = { gt_1, gt_2,...,gt_n }; 
Cú pháp trên có thể giải thích như sau: 
dạng 1: có k bộ giá trị sẽ được gán cho k dòng đầu tiên của mảng ( sd ), với mỗi 
dòng (được coi như mảng một chiều) được khởi tạo giá trị như mảng một chiều: 
dòng thứ nhất được khởi đầu bởi {kđ_dòng_1}, dòng thứ hai được khởi đầu bởi 
{kđ_dòng_1},.., dòng thứ k được khởi đầu bởi {kđ_dòng_k}. Yêu cầu k 
≤ sd, ngược 
lại chương trình sẽ báo lỗi. 
Các dòng cuối của mảng nếu không có bộ khởi đầu tương ứng thì sẽ được tự động gán 
giá trị 0 (hoặc NULL nếu là con trỏ). 
dạng 2: (không xác định số dòng) chương trình dịch sẽ tự động ấn định số dòng của 
mảng bằng số bộ khởi đầu ( = k), sau đó thực hiện khởi đầu như dạng 1. 
dạng 3: n  giá trị trong bộ khởi đầu được gán cho các phần tử mảng theo cách: sc giá 
trị đầu tiên trong các giá trị khởi đầu (gt_1,..,gt_sc) được gán tuần tự cho các phần tử 
của dòng thứ nhất trong mảng, sc  phần tử kế tiếp sẽ gán cho các phần tử ở dòng thứ 
2,... nếu phần tử nào của mảng không có giá trị khởi đầu sẽ được gán 0 (con trỏ là 
NULL) - với điều kiện
 sd*sc, ngược lại là lỗi
dạng 4: số dòng của mảng sẽ được chương trình tự tính theo số giá trị trong bộ khởi 
đầu theo công thức sd = (n/sc) +1, và khởi đầu như dạng 3. 
Ví dụ:


Gi¸o tr×nh tin häc c¬ së II - N
gôn ngữ
 C
76
à
int a[3][2] = {{1,2},{3},{4,5}}; thì các phần tử của a như sau:
a[0][0]=1, a[0][1]=2, a[1][0]=3, a[1][1]= 0, a[2][0]=4,a[2][1]=5; 
à
int b[ ][2] = {{1,2},{3},{4,5}};
thì là mảng 3 dòng, 2 cột các phần tử của a như sau:
b[0][0]=1, b[0][1]=2, b[1][0]=3,b[1][1]= 0, b[2][0]=4,b[2][1]=5; 
à
int c[ ][2] = {1,2,3,4,5};
thì số dòng của c là mảng 5/2 +1 =3 dòng, các phần tử của a như sau:
c[0][0]=1, c[0][1]=2, c[1][0]=3,c[1][1]= 4, b[2][0]=5,b[2][1]=0; 

tải về 2.34 Mb.

Chia sẻ với bạn bè của bạn:
1   ...   46   47   48   49   50   51   52   53   ...   62




Cơ sở dữ liệu được bảo vệ bởi bản quyền ©hocday.com 2024
được sử dụng cho việc quản lý

    Quê hương