w3resource logo
C Programming Exercises

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:

Flowchart: Print the elements of an array in reverse order

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.