#include<stdio.h> #include<stdlib.h> int main() { int *p,*q,i=1,j,k,temp; //q for storing address of 1st number printf("Enter infinite Numbers(-1 to stop reading) :: \n"); printf("\nEnter %d Number :: ",i); p=(int*)malloc(sizeof(int)); scanf("%d",&p[0]); while(p[i-1]!=-1) //read until -1 is entered { i++; p=(int*)realloc(p,sizeof(int)*i); q=p; printf("\nEnter %d Number :: ",i); scanf("%d",&p[i-1]); } p=q; //sorting numbers using bubble sort for(j=1;j<i;++j) { for(k=0;k<i-j-1;++k) { if(p[k]>p[k+1]) { temp=p[k]; p[k]=p[k+1]; p[k+1]=temp; } } } printf("\n"); printf("\nAfter Sorting, Numbers are :: "); for(j=0;j<i-1;++j) { printf(" %d",p[j]); } printf("\n"); return 0; }
Output:
Enter infinite Numbers(-1 to stop reading) :: Enter 1 Number :: 3 Enter 2 Number :: 1 Enter 3 Number :: 5 Enter 4 Number :: 2 Enter 5 Number :: 4 Enter 6 Number :: 7 Enter 7 Number :: 6 Enter 8 Number :: 9 Enter 9 Number :: 8 Enter 10 Number :: 0 Enter 11 Number :: -1 After Sorting, Numbers are :: 0 1 2 3 4 5 6 7 8 9