Introduction of Arrays
- An array is a data structure used to process multiple elements with the same data type when a number of such elements are known.
- Arrays form an important part of almost all-programming languages.
- It provides a powerful feature and can be used as such or can be used to form complex data structures like stacks and queues.
- An array can be defined as an infinite collection of homogeneous(similar type) elements.
- This means that an array can store either all integers, all floating point numbers, all characters, or any other complex data type, but all of same type.
- Arrays are always stored in consecutive memory locations.
Types of Arrays
There are two types of Arrays
One Dimensional Arrays
- A one-dimensional array is one in which only one subscript specification is needed to specify a particular element of the array.
- A one-dimensional array is a list of related variables. Such lists are common in programming.
One-dimensional array can be declared as follows :
Data_type var_name[Expression];
Initializing One-Dimensional Array
ANSI C allows automatic array variables to be initialized in declaration by constant initializers as we have seen we can do for scalar variables.
These initializing expressions must be constant value; expressions with identifiers or function calls may not be used in the initializers.
The initializers are specified within braces and separated by commas.
int ex[5] = { 10, 5, 15, 20, 25} ;
char word[10] = { 'h', 'e', 'l', 'l', 'o' } ;
Example:-
// Program to print the element of Array
#include <stdio.h>
int main()
{
/*an array with 5 rows and 2 columns*/
int a[5][2] = {{0,0},{1,2},{2,4},{3,6},{4,8}};
int i,j;
/* Output each array elements value*/
for(i=0; i<5; i++);
{
for(j=0; j<2; j++);
{
printf("a[%d][%d]=%d",i,j,a[i][j]);
}
}
return 0;
}
Output:-
a[0][0] = 0
a[0][1] = 0
a[1][0] = 1
a[1][1] = 2
a[2][0] = 2
a[2][1] = 4
a[3][0] = 3
a[3][1] = 6
a[4][0] = 4
Passing Arrays to Function
- Arrays like other simple variables can be passed to function. To pass, its name is written inside the argument list in the call statement.
- Arrays are by default passed to function by call by reference method because array name is itself a pointer to the first memory location of the array.
- However we can pass individul array elements through call by value method also.