Open In App

C++ Program To Traverse an Array

Last Updated : 19 Jul, 2022
Improve
Improve
Like Article
Like
Save
Share
Report

Given an integer array of size N, the task is to traverse and print the elements in the array.

Examples:

Input: arr[] = {2, -1, 5, 6, 0, -3} 
Output: 2 -1 5 6 0 -3

Input: arr[] = {4, 0, -2, -9, -7, 1} 
Output: 4 0 -2 -9 -7 1 

There are three ways to traverse the elements of an array in C++:

  1. Using for loop.
  2. Using for_each loop.
  3. using range-based for loop.

Let’s start discussing each of these methods in detail.

1. Using for Loop

Below is the approach for traversing an array using the for loop.

Approach:

A. Start a loop from 0 to N-1, where N is the size of the array.

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

B. Access every element of the array with the help of

arr[index]

C. Print the elements.

cout << arr[i] << endl;

Below is the implementation of the above approach:

C++




// C++ program to traverse
// the array
#include <bits/stdc++.h>
using namespace std;
 
// Function to traverse and
// print the array
void printArray(int* arr, int n)
{
    int i;
 
    cout << "Array: ";
    for (i = 0; i < n; i++)
    {
        cout << arr[i] << "  ";
    }
}
 
// Driver code
int main()
{
    int arr[] = {2, -1, 5, 6, 0, -3};
    int n = sizeof(arr) / sizeof(arr[0]);
 
    printArray(arr, n);
    return 0;
}


Output

Array: 2  -1  5  6  0  -3  

Time Complexity: O(n)

Auxiliary Space: O(1)

2. Using a for-each loop

for_each is a powerful STL algorithm to operate on range elements and apply custom-defined functions. It takes range starting and the last iterator objects as the first two parameters and the function object as the third one. 
Below is the C++ program to implement the above approach:

C++




// C++ program to traverse the
// array using for_each loop
#include <bits/stdc++.h>
#include <iostream>
using namespace std;
 
// Driver code
int main()
{
    int arr[] = {2, -1, 5, 6, 0, -3};
   
    // Traverse array with for_each
    // using array's data type
    cout << "Traverse using array's data type";
    for(int x : arr)
      cout << x << " ";
    cout << endl;
   
    // Traverse array with for_each
    // using auto keyword
    cout << "Traverse using auto keyword";
    for(auto x : arr)
      cout << x << " ";
    return 0;
}


Output

Traverse using array's data type2 -1 5 6 0 -3 
Traverse using auto keyword2 -1 5 6 0 -3 

Time Complexity: O(n)
Auxiliary Space: O(1)

3. Using range-based Loop

The range-based loop is the readable version of the for loop. The following code shows how to implement the above code using a range-based loop.

C++




// C++ program to traverse the
// array using range-based loop
#include <bits/stdc++.h>
#include <iostream>
using namespace std;
 
// Driver code
int main()
{
    int arr[] = {2, -1, 5, 6, 0, -3};
   
    for (const auto &var : arr) 
    
      cout << var << " "
    }
    return 0;
}


Output

2 -1 5 6 0 -3 

Time Complexity: O(n)
Auxiliary Space: O(1)



Like Article
Suggest improvement
Share your thoughts in the comments

Similar Reads