C Mảng (Có Ví dụ)

Trong hướng dẫn này, bạn sẽ học cách làm việc với các mảng. Bạn sẽ học cách khai báo, khởi tạo và truy cập các phần tử của một mảng với sự trợ giúp của các ví dụ.

Mảng là một biến có thể lưu trữ nhiều giá trị. Ví dụ: nếu bạn muốn lưu trữ 100 số nguyên, bạn có thể tạo một mảng cho nó.

 int data(100); 

Cách khai báo mảng?

 dataType arrayName (arraySize); 

Ví dụ,

 dấu phao (5);

Ở đây, chúng ta đã khai báo một mảng, dấu, kiểu dấu phẩy động. Và kích thước của nó là 5. Có nghĩa là, nó có thể chứa 5 giá trị dấu phẩy động.

Điều quan trọng cần lưu ý là không thể thay đổi kích thước và kiểu của một mảng sau khi nó được khai báo.

Truy cập các phần tử mảng

Bạn có thể truy cập các phần tử của một mảng theo các chỉ số.

Giả sử bạn đã khai báo một dấu mảng như trên. Phần tử đầu tiên là dấu (0), phần tử thứ hai là dấu (1), v.v.

Vài chú thích chính :

  • Mảng có 0 là chỉ số đầu tiên, không phải 1. Trong ví dụ này, đánh dấu (0) là phần tử đầu tiên.
  • Nếu kích thước của một mảng là n, để truy cập phần tử cuối cùng, n-1chỉ mục được sử dụng. Trong ví dụ này, hãy đánh dấu (4)
  • Giả sử địa chỉ bắt đầu của mark(0)2120d . Sau đó, địa chỉ của di mark(1)chúc là 2124d . Tương tự, địa chỉ của mark(2)sẽ là 2128d , v.v.
    Điều này là do kích thước của a floatlà 4 byte.

Làm thế nào để khởi tạo một mảng?

Có thể khởi tạo mảng trong quá trình khai báo. Ví dụ,

 int mark(5) = (19, 10, 8, 17, 9);

Bạn cũng có thể khởi tạo một mảng như thế này.

 int mark() = (19, 10, 8, 17, 9);

Ở đây, chúng tôi chưa chỉ định kích thước. Tuy nhiên, trình biên dịch biết kích thước của nó là 5 vì chúng ta đang khởi tạo nó với 5 phần tử.

Đây,

 dấu (0) bằng 19 dấu (1) bằng 10 dấu (2) bằng 8 dấu (3) bằng 17 dấu (4) bằng 9

Thay đổi giá trị của các phần tử mảng

 int mark(5) = (19, 10, 8, 17, 9) // make the value of the third element to -1 mark(2) = -1; // make the value of the fifth element to 0 mark(4) = 0; 

Phần tử mảng đầu vào và đầu ra

Đây là cách bạn có thể lấy đầu vào từ người dùng và lưu trữ nó trong một phần tử mảng.

 // take input and store it in the 3rd element scanf("%d", &mark(2)); // take input and store it in the ith element scanf("%d", &mark(i-1)); 

Đây là cách bạn có thể in một phần tử riêng lẻ của một mảng.

 // print the first element of the array printf("%d", mark(0)); // print the third element of the array printf("%d", mark(2)); // print ith element of the array printf("%d", mark(i-1)); 

Ví dụ 1: Đầu vào / đầu ra của mảng

 // Program to take 5 values from the user and store them in an array // Print the elements stored in the array #include int main() ( int values(5); printf("Enter 5 integers: "); // taking input and storing it in an array for(int i = 0; i < 5; ++i) ( scanf("%d", &values(i)); ) printf("Displaying integers: "); // printing elements of an array for(int i = 0; i < 5; ++i) ( printf("%d", values(i)); ) return 0; ) 

Đầu ra

 Nhập 5 số nguyên: 1 -3 34 0 3 Hiển thị các số nguyên: 1 -3 34 0 3 

Ở đây, chúng tôi đã sử dụng một forvòng lặp để lấy 5 đầu vào từ người dùng và lưu trữ chúng trong một mảng. Sau đó, sử dụng một forvòng lặp khác , các phần tử này được hiển thị trên màn hình.

Ví dụ 2: Tính trung bình

 // Program to find the average of n numbers using arrays #include int main() ( int marks(10), i, n, sum = 0, average; printf("Enter number of elements: "); scanf("%d", &n); for(i=0; i  

Output

 Enter n: 5 Enter number1: 45 Enter number2: 35 Enter number3: 38 Enter number4: 31 Enter number5: 49 Average = 39 

Here, we have computed the average of n numbers entered by the user.

Access elements out of its bound!

Suppose you declared an array of 10 elements. Let's say,

 int testArray(10);

You can access the array elements from testArray(0) to testArray(9).

Now let's say if you try to access testArray(12). The element is not available. This may cause unexpected output (undefined behavior). Sometimes you might get an error and some other time your program may run correctly.

Hence, you should never access elements of an array outside of its bound.

Multidimensional arrays

In this tutorial, you learned about arrays. These arrays are called one-dimensional arrays.

In the next tutorial, you will learn about multidimensional arrays (array of an array).

thú vị bài viết...