Mảng là một biến có thể lưu trữ nhiều giá trị. Ví dụ bạn muốn lưu trữ 100 số nguyên thì có thể tạo mảng cho nó
int data[100];Cách khai báo mảng?
dataType arrayName[arraySize];Ví dụ,
float mark[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à loại của một mảng sau khi đã 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 bằng các chỉ số
Giả sử bạn đã khai báo một mảng như trên. Phần tử đầu tiên là mark[0], phần tử thứ hai là mark[1], v.v.
Vài bài phát biểu
- Mảng có 0 làm chỉ mục đầu tiên, không phải 1. Trong ví dụ này, mark[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, chỉ số dataType arrayName[arraySize]; 4 được sử dụng. Trong ví dụ này, đánh dấu [4]
- Giả sử địa chỉ bắt đầu của dataType arrayName[arraySize];
5 là 2120d. Khi đó, địa chỉ của dataType arrayName[arraySize];
6 sẽ là 2124d. Tương tự, địa chỉ của dataType arrayName[arraySize];
7 sẽ là 2128d, v.v.
Điều này là do kích thước của một dataType arrayName[arraySize]; 8 là 4 byte
Làm thế nào để khởi tạo một mảng?
Có thể khởi tạo mảng trong khi khai báo. Ví dụ,
________số 8_______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ử
Nơi đây,
mark[0] is equal to 19 mark[1] is equal to 10 mark[2] is equal to 8 mark[3] is equal to 17 mark[4] is equal to 9Thay đổ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;Các 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 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\n", values[i]); } return 0; }đầu ra
dataType arrayName[arraySize]; 0Ở đây, chúng ta đã sử dụng vòng lặp dataType arrayName[arraySize]; 9 để 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 vòng lặp dataType arrayName[arraySize]; 9 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
dataType arrayName[arraySize]; 1đầu ra
dataType arrayName[arraySize]; 2Ở đây, chúng tôi đã tính trung bình cộng của n số được nhập bởi người dùng
Truy cập các phần tử ra khỏi giới hạn của nó
Giả sử bạn đã khai báo một mảng gồm 10 phần tử. Hãy cùng nói nào,
dataType arrayName[arraySize]; 3Bạn có thể truy cập các phần tử mảng từ float mark[5];1 đến float mark[5];2
Bây giờ, giả sử nếu bạn cố truy cập vào float mark[5];3. Phần tử không có sẵn. Điều này có thể gây ra kết quả không mong muốn (hành vi không xác định). Đôi khi bạn có thể gặp lỗi và đôi khi chương trình của bạn có thể chạy đúng
mảng một chiều trong lập trình c;
Mảng một chiều trong C với các ví dụ
- Định nghĩa mảng 1 D trong C
- Quy tắc khai báo mảng một chiều
- Khai báo mảng 1 D trong C
- 1 D Khởi tạo mảng C
- 1 D Truy cập các phần tử mảng trong C
- Ví dụ 1 – Mảng một chiều trong C
- Ví dụ 2 – Chương trình in phần tử lớn nhất, lớn thứ hai của mảng trong c
Định nghĩa mảng 1 D trong C
Mảng một chiều là một biến có thể chứa nhiều giá trị hoặc các loại dữ liệu tương tự. Ví dụ;
Quy tắc khai báo mảng một chiều
- Biến mảng phải được khai báo trước khi sử dụng trong chương trình
- Khai báo phải có kiểu dữ liệu (int, float, char, double, v.v. ), tên biến và chỉ số
- Chỉ số dưới đại diện cho kích thước của mảng. Nếu kích thước được khai báo là 10 thì lập trình viên có thể lưu trữ 10 phần tử
- Chỉ số mảng luôn bắt đầu từ 0. Ví dụ, nếu một biến mảng được khai báo là s[10], thì nó nằm trong khoảng từ 0 đến 9
- Mỗi phần tử mảng được lưu trữ trong một vị trí bộ nhớ riêng biệt
Khai báo mảng 1 D trong C
Bạn có thể sử dụng cú pháp sau để khai báo một mảng trong ngôn ngữ lập trình c;
data_type array_name[array_size];Hãy xem ví dụ sau để biết cách khai báo mảng trong lập trình c;
float mark[5];Ở đây, Mark là kiểu dữ liệu float. Nó có nghĩa là nó giữ các loại giá trị nổi trong đó. Và kích thước của nó là 5
1 D Khởi tạo mảng C
Để khởi tạo một mảng trong c bằng cách sử dụng chỉ số của từng phần tử. Xem cách dễ dàng sau để khởi tạo mảng trong lập trình c;
marks[0]=80;//initialization of array marks[1]=60; marks[2]=70; marks[3]=85; marks[4]=75;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};1 D Truy cập các phần tử mảng trong C
Sử dụng chỉ mục mảng, bạn có thể dễ dàng truy cập bất kỳ phần tử nào được lưu trữ trong mảng c; .
Giả sử, bạn đã khai báo một mảng có tên là mark như trên. Vì vậy, bạn có thể truy cập các giá trị phần tử trong mảng bằng cách sử dụng chỉ mục mảng;
mark[0] /* first element of array mark*/ mark[4] /* last (4th) element of array mark*/Ví dụ 1 – Mảng một chiều trong C
#include<stdio.h> int main() { int i; int arr[5] = {10,20,30,40,50}; // declaring and Initializing array in C //To initialize all array elements to 0, use int arr[5]={0}; /* Above array can be initialized as below also arr[0] = 10; arr[1] = 20; arr[2] = 30; arr[3] = 40; arr[4] = 50; */ for (i=0;i<5;i++) { // Accessing each variable printf("value of arr[%d] is %d \n", i, arr[i]); } }
đầu ra
Value of arr[0] is 10 Value of arr[1] is 20 Value of arr[2] is 30 Value of arr[3] is 40 Value of arr[4] is 50Ví dụ 2 – Chương trình in phần tử lớn nhất, lớn thứ hai của mảng trong c
Sử dụng các bước sau để viết chương trình in phần tử lớn nhất và lớn thứ hai của mảng trong c