0% found this document useful (0 votes)
27 views23 pages

C Programming: Understanding Arrays

The document provides a comprehensive overview of arrays in C programming, covering their declaration, initialization, and types including one-dimensional and multi-dimensional arrays. It explains the syntax for declaring arrays, accessing and updating elements, and the advantages and disadvantages of using arrays. Additionally, it includes code examples to illustrate the concepts discussed.

Uploaded by

muskandel2006
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
27 views23 pages

C Programming: Understanding Arrays

The document provides a comprehensive overview of arrays in C programming, covering their declaration, initialization, and types including one-dimensional and multi-dimensional arrays. It explains the syntax for declaring arrays, accessing and updating elements, and the advantages and disadvantages of using arrays. Additionally, it includes code examples to illustrate the concepts discussed.

Uploaded by

muskandel2006
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 23

Programming For Problem Solving

Unit lll: “Arrays in Programming”


Arrays in Programming

Array in C is one of the most used data structures in C programming. It


is a simple and fast way of storing multiple values under a single name.
In this article, we will study the different aspects of array in C language
such as array declaration, definition, initialization, types of arrays, array
syntax, advantages and disadvantages, and many more.
What is Array in C?
An array in C is a fixed-size collection of similar data items stored in
contiguous memory locations. It can be used to store the collection of
primitive data types such as int, char, float, etc., and also derived and
user-defined data types such as pointers, structures, etc.

Assist Professor. Varinder Singh (Dept. Engineering)


Arrays in Programming

C Array Declaration
In C, we have to declare the array like any other variable before using it. We can declare an array by
specifying its name, the type of its elements, and the size of its dimensions. When we declare an array
in C, the compiler allocates the memory block of the specified size to the array name.

Assist Professor. Varinder Singh (Dept. Engineering)


Arrays in Programming

Syntax of Array Declaration


data_type array_name [size];
or
data_type array_name [size1] [size2]...[sizeN];
where N is the number of dimensions.

The C arrays are static in nature, i.e., they are allocated memory at the compile time.
Assist Professor. Varinder Singh (Dept. Engineering)
Arrays in Programming

Example of Array Declaration

// declaring array of integers


int arr_int[5];

// declaring array of characters


char arr_char[5];

Assist Professor. Varinder Singh (Dept. Engineering)


Arrays in Programming
C Array Initialization
Initialization in C is the process to assign some initial value to the variable. When the array is
declared or allocated memory, the elements of the array contain some garbage value. So, we need to
initialize the array to some meaningful value. There are multiple ways in which we can initialize an
array in C.
1. Array Initialization with Declaration
In this method, we initialize the array
along with its declaration. We use an
initializer list to initialize multiple
elements of the array. An initializer list
is the list of values enclosed within
braces { } separated b a comma.
data_type array_name [size] = {value1,
value2, ... valueN};

Assist Professor. Varinder Singh (Dept. Engineering)


Arrays in Programming
2. Array Initialization with Declaration without Size
If we initialize an array using an initializer list, we can skip declaring the size of the array as the
compiler can automatically deduce the size of the array in these cases. The size of the array in these
cases is equal to the number of elements present in the initializer list as the compiler can
automatically deduce the size of the array.
data_type array_name[] = {1,2,3,4,5};
The size of the above arrays is 5 which is automatically deduced by the compiler.

3. Array Initialization after Declaration (Using Loops)


We initialize the array after the declaration by assigning the initial value to each element
individually. We can use for loop, while loop, or do-while loop to assign the value to each element
of the array.

for (int i = 0; i < N; i++) {


array_name[i] = valuei;
}

Assist Professor. Varinder Singh (Dept. Engineering)


Arrays in Programming
Example of Array Initialization in C

Assist Professor. Varinder Singh (Dept. Engineering)


Arrays in Programming

Access Array Elements


We can access any element of an array in C using the array subscript operator [ ] and the index value
i of the element.
array_name [index];
One thing to note is that the indexing in the array always starts with 0, i.e., the first element is
at index 0 and the last element is at N – 1 where N is the number of elements in the array.

Assist Professor. Varinder Singh (Dept. Engineering)


Arrays in Programming

// C Program to illustrate element access using array


// subscript
#include <stdio.h>

int main()
{

// array declaration and initialization


int arr[5] = { 15, 25, 35, 45, 55 };

// accessing element at index 2 i.e 3rd element


printf("Element at arr[2]: %d\n", arr[2]);

// accessing element at index 4 i.e last element


printf("Element at arr[4]: %d\n", arr[4]);

// accessing element at index 0 i.e first element


printf("Element at arr[0]: %d", arr[0]);

return 0;
}

Assist Professor. Varinder Singh (Dept. Engineering)


Arrays in Programming

Update Array Element


We can update the value of an element at the given index i in a similar way to accessing an element
by using the array subscript operator [ ] and assignment operator =.

array_name[i] = new_value;

C Array Traversal

Traversal is the process in which we visit every element


of the data structure. For C array traversal, we use
loops to iterate through each element of the array.
Array Traversal using for Loop

for (int i = 0; i < N; i++) {


array_name[i];
}

Assist Professor. Varinder Singh (Dept. Engineering)


Arrays in Programming

Assist Professor. Varinder Singh (Dept. Engineering)


Arrays in Programming

1. One Dimensional Array in C


The One-dimensional arrays, also known as 1-D arrays in C are those arrays that have only one
dimension.

Syntax of 1D Array in C
array_name [size];

Assist Professor. Varinder Singh (Dept. Engineering)


Arrays in Programming
Example of 1D Array in C
// C Program to illustrate the use of 1D array
#include <stdio.h>
int main(){
// 1d array declaration
int arr[5];
// 1d array initialization using for loop
for (int i = 0; i < 5; i++) {
arr[i] = i * i - 2 * i + 1;
}
printf("Elements of Array: ");
// printing 1d array by traversing using for loop
for (int i = 0; i < 5; i++) {
printf("%d ", arr[i]);
}
return 0;
}
Assist Professor. Varinder Singh (Dept. Engineering)
Arrays in Programming
Array of Characters (Strings)
// C Program to illustrate strings
#include <stdio.h>

int main()
{
// creating array of character
char arr[6] = { 'G', 'e', 'e', 'k', 's', '\0' };

// printing string
int i = 0;
while (arr[i]) {
printf("%c", arr[i++]);
}
return 0;
}

Assist Professor. Varinder Singh (Dept. Engineering)


Arrays in Programming

2. Multidimensional Array in C
Multi-dimensional Arrays in C are those arrays that have more than one dimension. Some of the
popular multidimensional arrays are 2D arrays and 3D arrays. We can declare arrays with more
dimensions than 3d arrays but they are avoided as they get very complex and occupy a large amount
of space.

A. Two-Dimensional Array in C

A Two-Dimensional array or 2D array in C is an array that has exactly two dimensions. They can be visualized in
the form of rows and columns organized in a two-dimensional plane.
Syntax of 2D Array in C

array_name[size1] [size2];

Here,

size1: Size of the first dimension.


size2: Size of the second dimension.

Assist Professor. Varinder Singh (Dept. Engineering)


Arrays in Programming
Example of 2D Array in C

// C Program to illustrate 2d array


#include <stdio.h>

int main()
{

// declaring and initializing 2d array


int arr[2][3] = { 10, 20, 30, 40, 50, 60 };

printf("2D Array:\n");
// printing 2d array
for (int i = 0; i < 2; i++) {
for (int j = 0; j < 3; j++) {
printf("%d ",arr[i][j]);
}
printf("\n");
}

return 0;
}

Assist Professor. Varinder Singh (Dept. Engineering)


Arrays in Programming

B. Three-Dimensional Array in C

Another popular form of a multi-dimensional array is Three Dimensional Array or 3D Array. A 3D array has exactly
three dimensions. It can be visualized as a collection of 2D arrays stacked on top of each other to create the third
dimension.
Syntax of 3D Array in C

array_name [size1] [size2] [size3];

Assist Professor. Varinder Singh (Dept. Engineering)


Arrays in Programming

Example of 3D Array
// C Program to illustrate the 3d array
#include <stdio.h>
int main(){
// 3D array declaration
int arr[2][2][2] = { 10, 20, 30, 40, 50, 60 };
// printing elements
for (int i = 0; i < 2; i++) {
for (int j = 0; j < 2; j++) {
for (int k = 0; k < 2; k++) {
printf("%d ", arr[i][j][k]);
}
printf("\n");
}
printf("\n \n");
}
return 0;
}

Assist Professor. Varinder Singh (Dept. Engineering)


Arrays in Programming

Example of 3D Array
// C Program to illustrate the 3d array
#include <stdio.h>
int main(){
// 3D array declaration
int arr[2][2][2] = { 10, 20, 30, 40, 50, 60 };
// printing elements
for (int i = 0; i < 2; i++) {
for (int j = 0; j < 2; j++) {
for (int k = 0; k < 2; k++) {
printf("%d ", arr[i][j][k]);
}
printf("\n");
}
printf("\n \n");
}
return 0;
}

Assist Professor. Varinder Singh (Dept. Engineering)


Arrays in Programming

Advantages of Array in C
The following are the main advantages of an array:
1.Random and fast access of elements using the array index.
2.Use of fewer lines of code as it creates a single array of multiple elements.
3.Traversal through the array becomes easy using a single loop.
4.Sorting becomes easy as it can be accomplished by writing fewer lines of code.

Disadvantages of Array in C
5.Allows a fixed number of elements to be entered which is decided at the time of declaration.
Unlike a linked list, an array in C is not dynamic.
2.Insertion and deletion of elements can be costly since the elements are needed to be rearranged
after insertion and deletion.

Assist Professor. Varinder Singh (Dept. Engineering)


Arrays in Programming

•Any Question?

Assist Professor. Varinder Singh (Dept. Engineering)


Arrays in Programming

•THANK YOU

Assist Professor. Varinder Singh (Dept. Engineering)

You might also like