Chúng ta hãy xem xét khái niệm mảng về thời gian biên dịch và khởi tạo thời gian chạy -
Mảng
Mảng là một tập hợp các mục được lưu trữ tại các vị trí bộ nhớ liền kề và các phần tử có thể truy cập bằng cách sử dụng các chỉ mục.
Khởi tạo mảng thời gian biên dịch
Trong khởi tạo thời gian biên dịch, người dùng phải nhập các chi tiết trong chính chương trình.
Khởi tạo thời gian biên dịch giống như khởi tạo biến. Hình thức khởi tạo chung của mảng như sau -
Cú pháp
type name[size] = { list_of_values }; //integer array initialization int rollnumbers[4]={ 2, 5, 6, 7}; //float array initialization float area[5]={ 23.4, 6.8, 5.5,7.3,2.4 }; //character array initialization char name[9]={ 'T', 'u', 't', 'o', 'r', 'i', 'a', 'l', '\0' };
Ví dụ
Sau đây là một chương trình C để hiển thị mảng -
#include<stdio.h> void main(){ //Declaring array with compile time initialization// int array[5]={1,2,3,4,5}; //Declaring variables// int i; //Printing O/p using for loop// printf("Displaying array of elements :"); for(i=0;i<5;i++){ printf("%d ",array[i]); } }
Đầu ra
Displaying array of elements :1 2 3 4 5
Thời gian chạy Khởi tạo mảng
Sử dụng khởi tạo thời gian chạy, người dùng có thể có cơ hội chấp nhận hoặc nhập các giá trị khác nhau trong các lần chạy chương trình khác nhau.
Nó cũng được sử dụng để khởi tạo mảng lớn hoặc mảng với các giá trị do người dùng chỉ định. Một mảng cũng có thể được khởi tạo trong thời gian chạy bằng hàm scanf ().
Ví dụ
Sau đây là một chương trình C để tính tổng và tích của tất cả các phần tử trong một mảng bằng cách sử dụng biên dịch thời gian chạy -
#include<stdio.h> void main(){ //Declaring the array - run time// int A[2][3],B[2][3],i,j,sum[i][j],product[i][j]; //Reading elements into the array's A and B using for loop// printf("Enter elements into the array A: \n"); for(i=0;i<2;i++){ for(j=0;j<3;j++){ printf("A[%d][%d] :",i,j); scanf("%d",&A[i][j]); } printf("\n"); } for(i=0;i<2;i++){ for(j=0;j<3;j++){ printf("B[%d][%d] :",i,j); scanf("%d",&B[i][j]); } printf("\n"); } //Calculating sum and printing output// printf("Sum array is : \n"); for(i=0;i<2;i++){ for(j=0;j<3;j++){ sum[i][j]=A[i][j]+B[i][j]; printf("%d\t",sum[i][j]); } printf("\n"); } //Calculating product and printing output// printf("Product array is : \n"); for(i=0;i<2;i++){ for(j=0;j<3;j++){ product[i][j]=A[i][j]*B[i][j]; printf("%d\t",product[i][j]); } printf("\n"); } }
Đầu ra
Enter elements into the array A: A[0][0] :A[0][1] :A[0][2] : A[1][0] :A[1][1] :A[1][2] : B[0][0] :B[0][1] :B[0][2] : B[1][0] :B[1][1] :B[1][2] : Sum array is : 000 000 Product array is : 000 000