1. Tuyển Mod quản lý diễn đàn. Các thành viên xem chi tiết tại đây

Tìm và hiểu dữ liệu kiểu mảng của C

Chủ đề trong 'Gia sư - luyện thi' bởi FrankLee, 23/03/2016.

  1. 0 người đang xem box này (Thành viên: 0, Khách: 0)
  1. FrankLee

    FrankLee Thành viên mới

    Tham gia ngày:
    07/03/2016
    Bài viết:
    31
    Đã được thích:
    0
    GIỚI THIỆU KIỂU DỮ LIỆU “KIỂU MẢNG” TRONG C


    Mảng là một xếp hàng các phần tử cố định có cùng một kiểu , làm gọi là kiểu phần tử. Kiểu phần tử có xác xuất là có các kiểu bất kỳ: ký tự , số , chuỗi ký tự…; cũng có khi ta sử dụng kiểu mảng để làm mẫu phần tử cho một mảng ( trong trường hợp này ta làm gọi là mảng của mảng hay mảng nhiều chiều ).

    Ta có xác xuất chia mảng làm 2 loại: mảng 1 chiều và mảng nhiều chiều.

    Mảng là kiểu dữ liệu được sử dụng rất thường xuyên. Chả hạn người ta cần quản lý một danh sách họ và tên của khoảng 100 sinh viên trong một lớp. Nhận thấy rằng mỗi họ và tên để lưu trữ ta cần 1 biến kiểu chuỗi , như vậy 100 họ và tên thì cần khai báo 100 biến kiểu chuỗi. Ví như khai báo như thế này thì đoạn khai báo cũng như các thao tác trên các họ tên sẽ rất dài dòng và rắc rối. Vì thế , kiểu dữ liệu mảng giúp ích xã hội ta trong trường hợp này; chỉ cần khai báo 1 biến , biến này có xác xuất coi như là tương đương với 100 biến chuỗi ký tự; đó là 1 mảng mà các phần tử của nó là chuỗi ký tự. Hay như để lưu trữ các từ khóa của ngôn ngữ máy C , ta cũng dùng đến một mảng để lưu trữ chúng.

    MẢNG 1 CHIỀU
    Nếu xét dưới giác độ toán học , mảng 1 chiều giống như một vector. Mỗi phần tử của mảng một chiều đáng được coi trọng không phải là một mảng khác.
    Khai báo

    Khai báo mảng với số phần tử rõ ràng ( khai bích báo minh )
    Cú pháp:

    Ý nghĩa:

    - Tên mảng: đây là một cái tên đặt đúng theo quy tắc tam suất đặt tên của danh biểu. Tên này cũng mang tác phong là tên biến mảng.

    - Số phần tử: là một đối lập với biến số nguyên , cho biết số lượng phần tử tối đa trong mảng là bao lăm ( hay nói khác đi kích cỡ của mảng là gì ).

    - Kiểu: mỗi phần tử của mảng có dữ liệu thuộc kiểu gì.

    - Ở đây , ta khai báo một biến mảng gồm có số phần phu phần tử , phần tử thứ nhất là tên mảng [ 0 ] , phần tử cuối cùng là tên mảng [ số phần tử -1 ] dap an bai tap lap trinh c co ban

    Hình ảnh mảng a trong bộ nhớ
    Khai báo mảng với số phần tử không xác định ( khai báo không tường minh )

    Cú pháp:

    Khi khai báo , không cho biết rõ số phần tử của mảng , kiểu khai báo này thường được ứng dụng trong các trường hợp: vừa khai báo vừa gán giá trị , khai báo mảng là thông số hình thức của hàm.

    a. Vừa khai báo vừa gán giá trị

    Cú pháp:

    []= Các giá trị cách nhau bởi dấu phẩy

    Nếu vừa khai báo vừa gán giá trị thì thản nhiên C sẽ hiểu số phần tử của mảng là số giá trị mà chúng ta gán cho mảng trong cặp dấu . Chúng ta có xác xuất sử dụng hàm sizeof( ) để lấy số phần tử của mảng như sau:

    Số phần tử= sizeof( tên mảng )/ sizeof( kiểu )

    b.Khai báo mảng là thông số hình thức của hàm , trong trường hợp này ta không để ý chỉ định số phần tử của mảng là bao nhiêu.

    Truy xuất từng phần tử của mảng

    Mỗi phần tử của mảng được truy xuất phê duyệt Tên biến mảng theo sau là chỉ số nằm trong cặp dấu ngoặc vuông [ ]. Chả hạn a[0] là phần tử đầu tiên của mảng a được khai báo ở trên. Chỉ số của phần tử mảng là một biểu thức mà giá trị là kiểu số nguyên.

    Với cách truy xuất theo kiểu này , Tên biến mảng[Chỉ số] có xác xuất coi như là một biến có kiểu dữ liệu là kiểu được chỉ ra trong khai báo biến mảng.

    MẢNG NHIỀU CHIỀU
    Mảng nhiều chiều là mảng có từ 2 chiều trở lên. Điều đó có tức thị mỗi phần tử của mảng là một mảng khác.

    Người ta thường sử dụng mảng nhiều chiều để lưu các ma trận , các tọa độ 2 chiều , 3 chiều…

    Phần dưới đây là các vấn đề liên tưởng đến mảng 2 chiều; các mảng 3 , 4 , … chiều thì na ná ( chỉ cần tổng quát hóa lên ).

    Khai báo
    Khai báo mảng 2 chiều tường minh
    Cú pháp:



    Khai báo mảng 2 chiều không tường minh
    Để khai báo mảng 2 chiều không tường minh , ta vẫn phải chỉ ra số phần tử của chiều thứ hai ( chiều cuối cùng ).

    Cú pháp:

    Cách khai báo này cũng được ứng dụng trong trường hợp vừa khai báo , vừa gán trị hay đặt mảng 2 chiều là thông số hình thức của hàm.

    Truy xuất từng phần tử của mảng 2 chiều

    Ta có xác xuất truy xuất một phần tử của mảng hai chiều bằng cách viết ra tên mảng theo sau là hai chỉ số đặt trong hai cặp dấu ngoặc vuông. Chả hạn ta viết m[2][3].

    Với cách truy xuất theo cách này , Tên mảng[Chỉ số 1][Chỉ số 2] có xác xuất coi là 1 biến có kiểu được chỉ ra trong khai báo biến mảng.
    Nguồn : bai tap lap trinh c co loi giai

Chia sẻ trang này