w3resource

C Exercises: Sort an array using pointer


14. Sort Array Using Pointer

Write a program in C to sort an array using a pointer.

Visual Presentation:

C Exercises: Pictorial: Sort an array using pointer.

Sample Solution:

C Code:

#include <stdio.h>

int main() {
    int *a, i, j, tmp, n;
    printf("\n\n Pointer : Sort an array using pointer :\n");
    printf("--------------------------------------------\n");

    // Input the number of elements to store in the array
    printf(" Input the number of elements to store in the array : ");
    scanf("%d", &n);

    // Input elements into the array
    printf(" Input %d number of elements in the array : \n", n);
    for (i = 0; i < n; i++) {
        printf(" element - %d : ", i + 1);
        scanf("%d", a + i);
    }

    // Sorting the array using pointer
    for (i = 0; i < n; i++) {
        for (j = i + 1; j < n; j++) {
            if (*(a + i) > *(a + j)) {
                // Swap elements if they are in the wrong order
                tmp = *(a + i);
                *(a + i) = *(a + j);
                *(a + j) = tmp;
            }
        }
    }

    // Displaying the sorted array elements
    printf("\n The elements in the array after sorting : \n");
    for (i = 0; i < n; i++) {
        printf(" element - %d : %d \n", i + 1, *(a + i));
    }

    printf("\n");
}

Sample Output:

Pointer : Sort an array using pointer :                                                                      
--------------------------------------------                                                                  
 Input the number of elements to store in the array : 5                                                       
 Input 5 number of elements in the array :                                                                    
 element - 1 : 25                                                                                             
 element - 2 : 45                                                                                             
 element - 3 : 89                                                                                             
 element - 4 : 15                                                                                             
 element - 5 : 82                                                                                             
                                                                                                              
 The elements in the array after sorting :                                                                    
 element - 1 : 15                                                                                             
 element - 2 : 25                                                                                             
 element - 3 : 45                                                                                             
 element - 4 : 82                                                                                             
 element - 5 : 89

Flowchart :

Flowchart: Sort an array using pointer

For more Practice: Solve these Related Problems:

  • Write a C program to sort an array in ascending order using pointer arithmetic and bubble sort.
  • Write a C program to sort an array in descending order using pointer-based selection sort.
  • Write a C program to sort an array using insertion sort with pointers and then print the sorted array.
  • Write a C program to sort an array using a recursive pointer-based merge sort.

Go to:


PREV : Count Vowels and Consonants Using Pointer.
NEXT : Function Returning a Pointer.

C Programming Code Editor:



Have another way to solve this solution? Contribute your code (and comments) through Disqus.

What is the difficulty level of this exercise?

Test your Programming skills with w3resource's quiz.



Follow us on Facebook and Twitter for latest update.