bsc

Comprehensive codebase and cou...
Log | Files | Refs | Activity | README | LICENSE

root / semester_1 / assignment-secondary / assignment-s-16.c

assignment-s-16.c (1430B)


      1 /* Write a program that reads 10 integers into an array (using pointers), and prints the
      2 array in ascending and descending order. */
      3 
      4 #include <stdio.h>
      5 #include <stdlib.h>
      6 
      7 #define true 1
      8 #define false 0
      9 
     10 void input_arr(int *, int);
     11 void print(int *, int);
     12 
     13 int main()
     14 {
     15     int arr[10];
     16     input_arr(arr, 10);
     17     print(arr, 10);
     18     return 0;
     19 }
     20 
     21 void input_arr(int *arr, int n)
     22 {
     23     int i;
     24     for (i = 0; i < n; i++)
     25     {
     26         printf("Enter element %d: ", i + 1);
     27         scanf("%d", arr + i);
     28     }
     29 }
     30 
     31 void print(int *arr, int n)
     32 {
     33     int i, j, isSwaped = true, backup;
     34     int *temp = (int *)malloc(n * sizeof(int));
     35     if (temp == NULL)
     36     {
     37         printf("\nMemory Allocation Failed.");
     38         return;
     39     }
     40     for (i = 0; i < n; i++)
     41     {
     42         *(temp + i) = *(arr + i);
     43     }
     44     for (i = 0; i < n - 1 && isSwaped == true; i++)
     45     {
     46         isSwaped = false;
     47         for (j = 0; j < n - i - 1; j++)
     48         {
     49             if (*(temp + j) > *(temp + j + 1))
     50             {
     51                 backup = *(temp + j);
     52                 *(temp + j) = *(temp + j + 1);
     53                 *(temp + j + 1) = backup;
     54                 isSwaped = true;
     55             }
     56         }
     57     }
     58     printf("\nAscending Order:");
     59     for (i = 0; i < n; i++)
     60     {
     61         printf(" %d", *(temp + i));
     62     }
     63     printf("\nDescending Order:");
     64     for (i = n - 1; i >= 0; i--)
     65     {
     66         printf(" %d", *(temp + i));
     67     }
     68     free(temp);
     69 }
© notamitgamer • Site Built: 2026-09-05 01:53:16 UTC • git-mirror commit: c170d72 [view raw info]
Originally created with stagit • modified by notamitgamer
Forked from github.com/notamitgamer/git-mirror