﻿ C exercises: Print the elements of an array in reverse order - w3resource

C Exercises: Print the elements of an array in reverse order

C Pointer : Exercise-17 with Solution

Write a program in C to print the elements of an array in reverse order.

Sample Solution:

C Code:

#include <stdio.h>
void main()
{
int n, i, arr1[15];
int *pt;
printf("\n\n Pointer : Print the elements of an array in reverse order :\n");
printf("----------------------------------------------------------------\n");

printf(" Input the number of elements to store in the array (max 15) : ");
scanf("%d",&n);
pt = &arr1[0];  // pt stores the address of base array arr1
printf(" Input %d number of elements in the array : \n",n);
for(i=0;i<n;i++)
{
printf(" element - %d : ",i+1);
scanf("%d",pt);//accept the address of the value
pt++;
}

pt = &arr1[n - 1];

printf("\n The elements of array in reverse order are :");

for (i = n; i > 0; i--)
{
printf("\n element - %d : %d  ", i, *pt);
pt--;
}
printf("\n\n");
}

Sample Output:

Pointer : Print the elements of an array in reverse order :
----------------------------------------------------------------
Input the number of elements to store in the array (max 15) : 5
Input 5 number of elements in the array :
element - 1 : 2
element - 2 : 3
element - 3 : 4
element - 4 : 5
element - 5 : 6

The elements of array in reverse order are :
element - 5 : 6
element - 4 : 5
element - 3 : 4
element - 2 : 3
element - 1 : 2

Flowchart:

C Programming Code Editor:

#include <stdio.h>
void main()
{
int n, i, arr1[15];
int *pt;
printf("\n\n Pointer : Print the elements of an array in reverse order :\n");
printf("----------------------------------------------------------------\n");

printf(" Input the number of elements to store in the array (max 15) : ");
scanf("%d",&n);
pt = &arr1[0];  // pt stores the address of base array arr1
printf(" Input %d number of elements in the array : \n",n);
for(i=0;i<n;i++)
{
printf(" element - %d : ",i+1);
scanf("%d",pt);//accept the address of the value
pt++;
}

pt = &arr1[n - 1];

printf("\n The elements of array in reverse order are :");

for (i = n; i > 0; i--)
{
printf("\n element - %d : %d  ", i, *pt);
pt--;
}
printf("\n\n");
}

Improve this sample solution and post your code through Disqus.