# C Program to sort half of the Array elements in ascending order and next half in descending order

Get array size n and n elements of array, then sort the first half elements of array in ascending order and sort second half elements of array in descending order.

Sample Input 1:

5 5 7 9 3 1

Sample Output 1:

1 3 9 7 5

#### Program or Solution

``` #include<stdio.h> #include<stdlib.h> int main() { int *a,n,i,j,temp; printf("Enter size of array:"); scanf("%d",&n); a=malloc(sizeof(int)*n); printf("Enter %d Elements:",n); for(i=0;i<n;i++) { scanf("%d",&a[i]); } for(i=0;i<n-1;i++) { for(j=0;j<n/2;j++) { if(a[j]>a[j+1]) { temp=a[j]; a[j]=a[j+1]; a[j+1]=temp; } } for(j=n/2;j<n-1;j++) { if(a[j]<a[j+1]) { temp=a[j]; a[j]=a[j+1]; a[j+1]=temp; } } } printf("After sorting first half in ascending and second half in descending order:\n"); for(i=0;i<n;i++) { printf("%d ",a[i]); } return 0; } ```

#### Program Explanation

Bubble Sort Algorithm: Refer : https://www.tutorialspoint.com/data_structures_algorithms/bubble_sort_algorithm.htm