Explore Courses
Liverpool Business SchoolLiverpool Business SchoolMBA by Liverpool Business School
  • 18 Months
Bestseller
Golden Gate UniversityGolden Gate UniversityMBA (Master of Business Administration)
  • 15 Months
Popular
O.P.Jindal Global UniversityO.P.Jindal Global UniversityMaster of Business Administration (MBA)
  • 12 Months
New
Birla Institute of Management Technology Birla Institute of Management Technology Post Graduate Diploma in Management (BIMTECH)
  • 24 Months
Liverpool John Moores UniversityLiverpool John Moores UniversityMS in Data Science
  • 18 Months
Popular
IIIT BangaloreIIIT BangalorePost Graduate Programme in Data Science & AI (Executive)
  • 12 Months
Bestseller
Golden Gate UniversityGolden Gate UniversityDBA in Emerging Technologies with concentration in Generative AI
  • 3 Years
upGradupGradData Science Bootcamp with AI
  • 6 Months
New
University of MarylandIIIT BangalorePost Graduate Certificate in Data Science & AI (Executive)
  • 8-8.5 Months
upGradupGradData Science Bootcamp with AI
  • 6 months
Popular
upGrad KnowledgeHutupGrad KnowledgeHutData Engineer Bootcamp
  • Self-Paced
upGradupGradCertificate Course in Business Analytics & Consulting in association with PwC India
  • 06 Months
OP Jindal Global UniversityOP Jindal Global UniversityMaster of Design in User Experience Design
  • 12 Months
Popular
WoolfWoolfMaster of Science in Computer Science
  • 18 Months
New
Jindal Global UniversityJindal Global UniversityMaster of Design in User Experience
  • 12 Months
New
Rushford, GenevaRushford Business SchoolDBA Doctorate in Technology (Computer Science)
  • 36 Months
IIIT BangaloreIIIT BangaloreCloud Computing and DevOps Program (Executive)
  • 8 Months
New
upGrad KnowledgeHutupGrad KnowledgeHutAWS Solutions Architect Certification
  • 32 Hours
upGradupGradFull Stack Software Development Bootcamp
  • 6 Months
Popular
upGradupGradUI/UX Bootcamp
  • 3 Months
upGradupGradCloud Computing Bootcamp
  • 7.5 Months
Golden Gate University Golden Gate University Doctor of Business Administration in Digital Leadership
  • 36 Months
New
Jindal Global UniversityJindal Global UniversityMaster of Design in User Experience
  • 12 Months
New
Golden Gate University Golden Gate University Doctor of Business Administration (DBA)
  • 36 Months
Bestseller
Ecole Supérieure de Gestion et Commerce International ParisEcole Supérieure de Gestion et Commerce International ParisDoctorate of Business Administration (DBA)
  • 36 Months
Rushford, GenevaRushford Business SchoolDoctorate of Business Administration (DBA)
  • 36 Months
KnowledgeHut upGradKnowledgeHut upGradSAFe® 6.0 Certified ScrumMaster (SSM) Training
  • Self-Paced
KnowledgeHut upGradKnowledgeHut upGradPMP® certification
  • Self-Paced
IIM KozhikodeIIM KozhikodeProfessional Certification in HR Management and Analytics
  • 6 Months
Bestseller
Duke CEDuke CEPost Graduate Certificate in Product Management
  • 4-8 Months
Bestseller
upGrad KnowledgeHutupGrad KnowledgeHutLeading SAFe® 6.0 Certification
  • 16 Hours
Popular
upGrad KnowledgeHutupGrad KnowledgeHutCertified ScrumMaster®(CSM) Training
  • 16 Hours
Bestseller
PwCupGrad CampusCertification Program in Financial Modelling & Analysis in association with PwC India
  • 4 Months
upGrad KnowledgeHutupGrad KnowledgeHutSAFe® 6.0 POPM Certification
  • 16 Hours
O.P.Jindal Global UniversityO.P.Jindal Global UniversityMaster of Science in Artificial Intelligence and Data Science
  • 12 Months
Bestseller
Liverpool John Moores University Liverpool John Moores University MS in Machine Learning & AI
  • 18 Months
Popular
Golden Gate UniversityGolden Gate UniversityDBA in Emerging Technologies with concentration in Generative AI
  • 3 Years
IIIT BangaloreIIIT BangaloreExecutive Post Graduate Programme in Machine Learning & AI
  • 13 Months
Bestseller
IIITBIIITBExecutive Program in Generative AI for Leaders
  • 4 Months
upGradupGradAdvanced Certificate Program in GenerativeAI
  • 4 Months
New
IIIT BangaloreIIIT BangalorePost Graduate Certificate in Machine Learning & Deep Learning (Executive)
  • 8 Months
Bestseller
Jindal Global UniversityJindal Global UniversityMaster of Design in User Experience
  • 12 Months
New
Liverpool Business SchoolLiverpool Business SchoolMBA with Marketing Concentration
  • 18 Months
Bestseller
Golden Gate UniversityGolden Gate UniversityMBA with Marketing Concentration
  • 15 Months
Popular
MICAMICAAdvanced Certificate in Digital Marketing and Communication
  • 6 Months
Bestseller
MICAMICAAdvanced Certificate in Brand Communication Management
  • 5 Months
Popular
upGradupGradDigital Marketing Accelerator Program
  • 05 Months
Jindal Global Law SchoolJindal Global Law SchoolLL.M. in Corporate & Financial Law
  • 12 Months
Bestseller
Jindal Global Law SchoolJindal Global Law SchoolLL.M. in AI and Emerging Technologies (Blended Learning Program)
  • 12 Months
Jindal Global Law SchoolJindal Global Law SchoolLL.M. in Intellectual Property & Technology Law
  • 12 Months
Jindal Global Law SchoolJindal Global Law SchoolLL.M. in Dispute Resolution
  • 12 Months
upGradupGradContract Law Certificate Program
  • Self paced
New
ESGCI, ParisESGCI, ParisDoctorate of Business Administration (DBA) from ESGCI, Paris
  • 36 Months
Golden Gate University Golden Gate University Doctor of Business Administration From Golden Gate University, San Francisco
  • 36 Months
Rushford Business SchoolRushford Business SchoolDoctor of Business Administration from Rushford Business School, Switzerland)
  • 36 Months
Edgewood CollegeEdgewood CollegeDoctorate of Business Administration from Edgewood College
  • 24 Months
Golden Gate UniversityGolden Gate UniversityDBA in Emerging Technologies with Concentration in Generative AI
  • 36 Months
Golden Gate University Golden Gate University DBA in Digital Leadership from Golden Gate University, San Francisco
  • 36 Months
Liverpool Business SchoolLiverpool Business SchoolMBA by Liverpool Business School
  • 18 Months
Bestseller
Golden Gate UniversityGolden Gate UniversityMBA (Master of Business Administration)
  • 15 Months
Popular
O.P.Jindal Global UniversityO.P.Jindal Global UniversityMaster of Business Administration (MBA)
  • 12 Months
New
Deakin Business School and Institute of Management Technology, GhaziabadDeakin Business School and IMT, GhaziabadMBA (Master of Business Administration)
  • 12 Months
Liverpool John Moores UniversityLiverpool John Moores UniversityMS in Data Science
  • 18 Months
Bestseller
O.P.Jindal Global UniversityO.P.Jindal Global UniversityMaster of Science in Artificial Intelligence and Data Science
  • 12 Months
Bestseller
IIIT BangaloreIIIT BangalorePost Graduate Programme in Data Science (Executive)
  • 12 Months
Bestseller
O.P.Jindal Global UniversityO.P.Jindal Global UniversityO.P.Jindal Global University
  • 12 Months
WoolfWoolfMaster of Science in Computer Science
  • 18 Months
New
Liverpool John Moores University Liverpool John Moores University MS in Machine Learning & AI
  • 18 Months
Popular
Golden Gate UniversityGolden Gate UniversityDBA in Emerging Technologies with concentration in Generative AI
  • 3 Years
Rushford, GenevaRushford Business SchoolDoctorate of Business Administration (AI/ML)
  • 36 Months
Ecole Supérieure de Gestion et Commerce International ParisEcole Supérieure de Gestion et Commerce International ParisDBA Specialisation in AI & ML
  • 36 Months
Golden Gate University Golden Gate University Doctor of Business Administration (DBA)
  • 36 Months
Bestseller
Ecole Supérieure de Gestion et Commerce International ParisEcole Supérieure de Gestion et Commerce International ParisDoctorate of Business Administration (DBA)
  • 36 Months
Rushford, GenevaRushford Business SchoolDoctorate of Business Administration (DBA)
  • 36 Months
Liverpool Business SchoolLiverpool Business SchoolMBA with Marketing Concentration
  • 18 Months
Bestseller
Golden Gate UniversityGolden Gate UniversityMBA with Marketing Concentration
  • 15 Months
Popular
Jindal Global Law SchoolJindal Global Law SchoolLL.M. in Corporate & Financial Law
  • 12 Months
Bestseller
Jindal Global Law SchoolJindal Global Law SchoolLL.M. in Intellectual Property & Technology Law
  • 12 Months
Jindal Global Law SchoolJindal Global Law SchoolLL.M. in Dispute Resolution
  • 12 Months
IIITBIIITBExecutive Program in Generative AI for Leaders
  • 4 Months
New
IIIT BangaloreIIIT BangaloreExecutive Post Graduate Programme in Machine Learning & AI
  • 13 Months
Bestseller
upGradupGradData Science Bootcamp with AI
  • 6 Months
New
upGradupGradAdvanced Certificate Program in GenerativeAI
  • 4 Months
New
KnowledgeHut upGradKnowledgeHut upGradSAFe® 6.0 Certified ScrumMaster (SSM) Training
  • Self-Paced
upGrad KnowledgeHutupGrad KnowledgeHutCertified ScrumMaster®(CSM) Training
  • 16 Hours
upGrad KnowledgeHutupGrad KnowledgeHutLeading SAFe® 6.0 Certification
  • 16 Hours
KnowledgeHut upGradKnowledgeHut upGradPMP® certification
  • Self-Paced
upGrad KnowledgeHutupGrad KnowledgeHutAWS Solutions Architect Certification
  • 32 Hours
upGrad KnowledgeHutupGrad KnowledgeHutAzure Administrator Certification (AZ-104)
  • 24 Hours
KnowledgeHut upGradKnowledgeHut upGradAWS Cloud Practioner Essentials Certification
  • 1 Week
KnowledgeHut upGradKnowledgeHut upGradAzure Data Engineering Training (DP-203)
  • 1 Week
MICAMICAAdvanced Certificate in Digital Marketing and Communication
  • 6 Months
Bestseller
MICAMICAAdvanced Certificate in Brand Communication Management
  • 5 Months
Popular
IIM KozhikodeIIM KozhikodeProfessional Certification in HR Management and Analytics
  • 6 Months
Bestseller
Duke CEDuke CEPost Graduate Certificate in Product Management
  • 4-8 Months
Bestseller
Loyola Institute of Business Administration (LIBA)Loyola Institute of Business Administration (LIBA)Executive PG Programme in Human Resource Management
  • 11 Months
Popular
Goa Institute of ManagementGoa Institute of ManagementExecutive PG Program in Healthcare Management
  • 11 Months
IMT GhaziabadIMT GhaziabadAdvanced General Management Program
  • 11 Months
Golden Gate UniversityGolden Gate UniversityProfessional Certificate in Global Business Management
  • 6-8 Months
upGradupGradContract Law Certificate Program
  • Self paced
New
IU, GermanyIU, GermanyMaster of Business Administration (90 ECTS)
  • 18 Months
Bestseller
IU, GermanyIU, GermanyMaster in International Management (120 ECTS)
  • 24 Months
Popular
IU, GermanyIU, GermanyB.Sc. Computer Science (180 ECTS)
  • 36 Months
Clark UniversityClark UniversityMaster of Business Administration
  • 23 Months
New
Golden Gate UniversityGolden Gate UniversityMaster of Business Administration
  • 20 Months
Clark University, USClark University, USMS in Project Management
  • 20 Months
New
Edgewood CollegeEdgewood CollegeMaster of Business Administration
  • 23 Months
The American Business SchoolThe American Business SchoolMBA with specialization
  • 23 Months
New
Aivancity ParisAivancity ParisMSc Artificial Intelligence Engineering
  • 24 Months
Aivancity ParisAivancity ParisMSc Data Engineering
  • 24 Months
The American Business SchoolThe American Business SchoolMBA with specialization
  • 23 Months
New
Aivancity ParisAivancity ParisMSc Artificial Intelligence Engineering
  • 24 Months
Aivancity ParisAivancity ParisMSc Data Engineering
  • 24 Months
upGradupGradData Science Bootcamp with AI
  • 6 Months
Popular
upGrad KnowledgeHutupGrad KnowledgeHutData Engineer Bootcamp
  • Self-Paced
upGradupGradFull Stack Software Development Bootcamp
  • 6 Months
Bestseller
upGradupGradUI/UX Bootcamp
  • 3 Months
upGradupGradCloud Computing Bootcamp
  • 7.5 Months
PwCupGrad CampusCertification Program in Financial Modelling & Analysis in association with PwC India
  • 5 Months
upGrad KnowledgeHutupGrad KnowledgeHutSAFe® 6.0 POPM Certification
  • 16 Hours
upGradupGradDigital Marketing Accelerator Program
  • 05 Months
upGradupGradAdvanced Certificate Program in GenerativeAI
  • 4 Months
New
upGradupGradData Science Bootcamp with AI
  • 6 Months
Popular
upGradupGradFull Stack Software Development Bootcamp
  • 6 Months
Bestseller
upGradupGradUI/UX Bootcamp
  • 3 Months
PwCupGrad CampusCertification Program in Financial Modelling & Analysis in association with PwC India
  • 4 Months
upGradupGradCertificate Course in Business Analytics & Consulting in association with PwC India
  • 06 Months
upGradupGradDigital Marketing Accelerator Program
  • 05 Months

What is Array in C? With Examples

Updated on 20 December, 2023

6K+ views
9 min read

An array is a data structure in C programming that contains a group of items of the same data type in a contiguous memory block. Each element in the array is accessible through its index, which is a numeric integer representing the element’s location within the array.

Depending on the programming language and the program’s needs, an array in C programming can be built with either a fixed or dynamic size. The array size defines the maximum number of items that can be stored in the array.

Arrays are commonly used in C programming to store and manipulate data effectively. They are capable of representing vectors, matrices, tables, and several other data structures. 

According to a survey conducted by StackOverflow in 2022, more than 5000 developers who have worked with C still want to keep working with the same language.

Source

Properties and Characteristics of An Array

An array in C++ and C programming has the following properties:

Arrays can hold values of the same data type

Elements of an array can only be of the same data type. For instance, an array with an integer data type can only hold integer values, whilst an array with a character data type can only hold characters.

The size of an array cannot be modified

After an array has been defined, the size of the array cannot be changed at any point during the runtime. So you need to declare the array size before using it for any operations.

An array is index based

An array allows each element to be recognised by its unique index number, which ranges from 0 all the way up to its ‘size – 1’. You can locate specific items inside the array with the element’s index.
For example:

int arr[5] = {1, 2, 3, 4, 5};
printf(%d, arr[1]);

Will produce an output: 2

Contiguous memory allocation

The elements in an array are stored in contiguous memory locations. Due to this property, the items of an array can be accessed and processed more quickly. 

The name of the array is a pointer

The name of an array is, in fact, a reference to the first element contained within the array. This indicates that you can use a pointer to send an array to a function.

Multi-dimensional arrays

C programming allows the creation of arrays with several dimensions called multi-dimensional arrays. For instance, a two-dimensional array is a collection of arrays in which each member is itself an array.

Check out our free technology courses to get an edge over the competition.

Instantiation

The term “instantiation” refers to the process of constructing an array in memory, allocating space for it, and giving it a variable name. Instance involves setting the array’s size and data type.

To begin using an array in your code, you must first instantiate it. After an array has been created, you can then start initialising it, i.e. storing information in it.

Instantiation and Initialisation of a 1-D Array

Let’s say you want to instantiate an array in C programming and initialise it with 5 elements. Below is the syntax to do the same:

int arr[5];
arr[5] = {1, 2, 3, 4, 5};

You can also choose to instantiate and initialise an array in the same line:

int arr[5] = {1, 2, 3, 4, 5};

‘int’ here is the data type ‘Integer’, the ‘[5]’ is the size of the array and the content within the curly braces are the elements of the array 

Check Out upGrad’s Software Development Courses to upskill yourself.

Instantiation and Initialisation of a 2-D Array

A two-dimensional array, or 2-D array, holds information in a matrix of rows and columns. Declaring the number of rows and columns together with the data type is a prerequisite to creating and initialising a two-dimensional array. So, let’s say that we want a 2-D array of the ‘Integer’ data type of 3 rows and 4 columns we type the following syntax in C programming:
int my_array[3][4];

After we have instantiated the array, we want to store the elements 1-12 in a grid:

my_array[3][4] = {{1, 2, 3, 4}, {5, 6, 7, 8},{9, 10, 11, 12}};

The output of the array looks like:

1  2  3  4

5  6  7  8

9 10 11 12

How to loop over an array to enter and print elements?

Now that we have learnt how to instantiate and initialise an array fundamentally let’s dive a little deeper into entering elements and printing those elements. 

Let’s say you want to create a program that asks a user to enter 5 elements into the array and print the elements. Here’s how you would write the code:

#include <stdio.h>
int main() {
    int arr[5];
    printf(“Enter 5 elements into the array:\n”);
    // Loop over the array to enter the elements
    for (int i = 0; i < 5; i++) {
        printf(“Enter element %d: “, i + 1);
        scanf(“%d”, &arr[i]);
    }
    printf(“The elements you entered are:\n”);
    // Loop over the array to print the elements
    for (int i = 0; i < 5; i++) {
        printf(“%d “, arr[i]);
    }
    printf(“\n”);
    return 0;
}

First, we create an array with the size of 5 elements, called arr. Then, using a for loop, we ask the user for the array’s first five elements. The scanf()method is then used within the loop to read the user’s inputted value and assign it to the array’s current index.

In order to print the user’s input using the printf() function, we use another for loop after all the items have been inputted. Lastly, we prepare output by printing a newline character and return 0 to signify the successful completion of the program.

General Operations on An Array

Linear Search in an array

A linear search, also known as a sequential search, involves going through a list or array’s elements one by one, starting at the beginning and continuing until the sought-after item is located or the end of the list is reached.

In simpler words, a linear search algorithm works by iteratively comparing each element of the array or list to the target element, beginning with the first member and continuing until the target element is located or the end of the array or list is reached. The algorithm returns the index of the element in the array or list at which the sought-after item was first located, or else it sends a signal indicating that the item was not found.

Source

Below is a simple program using a linear search on an array to find out the target element:

#include <stdio.h>
int main() {
    int arr[] = {5, 7, 12, 8, 3};
    int n = sizeof(arr)/ sizeof(arr[0]); // using the sizeof function to find out the length of the array
    int target = 8; // this is the element we want to find
    int flag = 0; // flag to indicate whether target element is found, originally set to false
    for (int i = 0; i < n; i++) { // using a for loop to iterate through the array
        if (arr[i] == target) {
            flag = 1;
            printf(“Element found at index %d\n”, i);
            break; // exiting the loop once target element is found
        }
    }
    if (!flag) {
        printf(“Element not found\n”);
    } 
    return 0;
}

Bubble Sorting an array

Bubble sort is a straightforward technique for sorting an array in ascending or descending order. It constantly compares nearby array items and exchanges them if their order is incorrect. The procedure is continued until the array is in the desired order.

Source

The syntax for implementing a bubble sort in C programming is given below:
#include <stdio.h>
int main() {
    int arr[] = {64, 34, 25, 12, 22, 11, 90};
    int n = sizeof(arr)/sizeof(arr[0]); // returns the length of the array 
    int i, j, temp;
    for (i = 0; i < n-1; i++) { // outer loop
        for (j = 0; j < n-i-1; j++) { // inner loop
            if (arr[j] > arr[j+1]) { // checking if element at current index is greater than the element at the next index
// performing standard swapping using a temporary variable
                temp = arr[j];
                arr[j] = arr[j+1];
                arr[j+1] = temp;
            }
        }
    }
    printf(“Sorted array: “);
    for (i = 0; i < n; i++) {
        printf(“%d “, arr[i]);
    }
    printf(“\n”);
    return 0;
}

Conclusion

Arrays are useful for implementing a wide variety of data structures, including stacks, queues, and hash tables, and allow for quick access to specific items by index. Arrays are a cornerstone of many data structures, as mentioned above; therefore, they naturally come up in interviews for software engineering roles.
Candidates are typically asked to develop code to perform tasks like sorting, searching, and manipulating data using arrays. Interviewers often ask candidates to demonstrate their familiarity with fundamental programming principles by answering questions on arrays.

upGrad’s MS in Computer Science programme with Liverpool John Moores University

Do you feel prepared to advance to the next level in computer science? If so, upGrad’s MS programme in Computer Science from LJMU could be precisely what you need. This comprehensive programme offers a unique combination of expert instructors, hands-on experience, and a cutting-edge curriculum designed to prepare you for success in today’s fast-paced tech industry.

With this program, you’ll gain a deep understanding of the latest computer science techniques, including a specialisation in full-stack web development. You will also acquire the skills necessary to efficiently manage software projects and succeed in the often confusing field of software engineering.

In addition to the classroom, you’ll have hands-on experience developing complex software systems and applications through a variety of exciting capstone projects. With LJMU’s reputation for success in the IT sector, you’ll have the confidence and skills to thrive in whatever software engineering career you choose.

So why wait? Enrol in upGrad’s Master’s programme in Computer Science from LJMU now!

Frequently Asked Questions (FAQs)

1. What is an array in C?

An array is a type of data structure that stores a group of elements with the same data type in memory locations that are contiguous.

2. What are the limitations of an array in C++ and C programming?

The maximum number of items an array may hold is set at the moment it is created since arrays are of fixed size. This makes dynamically adding or removing items hard; if the array is bigger than required, it might waste RAM. A further limitation of arrays is that they cannot contain elements of varying data types.

3. What is an array index out-of-bounds error?

An array index out-of-bounds error occurs when an attempt is made to access an element of an array that does not exist. This can happen if the index value is negative or greater than or equal to the size of the array.

RELATED PROGRAMS