This program reverses the array elements. For example if a is an array of integers with three elements
such that
a[0] = 1
a[1] = 2
a[2] = 3
then on reversing the array will be
a[0] = 3
a[1] = 2
a[0] = 1
Given below is the c code to reverse an array .
such that
a[0] = 1
a[1] = 2
a[2] = 3
then on reversing the array will be
a[0] = 3
a[1] = 2
a[0] = 1
Given below is the c code to reverse an array .
C programming code
#include<stdio.h> main() { int n, c, d, a[100], b[100]; printf("Enter the number of elements in array\n"); scanf("%d",&n); printf("Enter the array elements\n"); for ( c = 0 ; c < n ; c++ ) scanf("%d",&a[c]); for ( c = n - 1, d = 0 ; c >= 0 ; c--, d++ ) b[d] = a[c]; for ( c = 0 ; c < n ; c++ ) a[c] = b[c]; printf("Reverse array is\n"); for( c = 0 ; c < n ; c++ ) printf("%d\n", a[c]); return 0; }
c program to reverse an array using pointers
#include<stdio.h> #include<stdlib.h> void reverse_array(int*, int); main() { int n, c, *pointer; scanf("%d",&n); pointer = (int*)malloc(sizeof(int)*n); if( pointer == NULL ) exit(EXIT_FAILURE); for ( c = 0 ; c < n ; c++ ) scanf("%d",(pointer+c)); reverse_array(pointer, n); printf("Original array on reversal is\n"); for ( c = 0 ; c < n ; c++ ) printf("%d\n",*(pointer+c)); free(pointer); return 0; } void reverse_array(int *pointer, int n) { int *s, c, d; s = (int*)malloc(sizeof(int)*n); if( s == NULL ) exit(EXIT_FAILURE); for ( c = n - 1, d = 0 ; c >= 0 ; c--, d++ ) *(s+d) = *(pointer+c); for ( c = 0 ; c < n ; c++ ) *(pointer+c) = *(s+c); free(s); }
No comments:
Post a Comment