Write a C program that implements the Bubble sort method to sort a given list of integers in ascending order.
Algorithm:
Bubble Sort:
1.1. start
2.2. read the value of n
3.3. for i= 1 to n increment in steps of 1
Read the value of ith element into array
4.4. call function to sort (bubble_sort(a,n))
5.5. for i= 1 to n increment in steps of 1
print the value of ith element in the array
6.6. stop
BUBBLE SORT FUNCTION
1. start
2. initialise last to n
3. for i= 1 to n increment in steps of 1 begin
4. initialise ex to 0
5. for i= 1 to last-1 increment in steps of 1 begin
6. if k[i]>k[i+1] goto step 7 otherwise goto step 5 begin
7. assign k[i] to temp assign k[i+1] to k[i] assign temp to k[i+1] increment ex by 1 end-if
8. end inner for loop
9. if ex!=0
assign last-1 to last
end for loop
10. Stop.
PROGRAM:
#include <stdio.h>
void main()
{
int data[100],i,n,j,temp;
//clrscr();
printf("\n Enter the number of elements to be sorted:\n ");
scanf("%d",&n);
for(i=0;i<n;++i)
{
printf("\n %d. Enter element: ",i+1); scanf("%d",&data[i]);
}
printf("\n The Entered Elements are:\n"); for(i=0;i<n;i++)
printf("%d\t",data[i]);
for(j=0;j<n-1;++j)
for(i=0;i<n-j-1;++i)
{
if(data[i]>data[i+1])
//To sort in descending order, change > to < in this line.
{
temp=data[i];
data[i]=data[i+1];
data[i+1]=temp;
}
}
printf("\n In ascending order:\n");
for(i=0;i<n;++i)
printf("%d\t",data[i]);
//getch();
}
OUTPUT:
Enter the number of elements to be sorted:
8
1. Enter element: 67
2. Enter element: 89
3. Enter element: 34
4. Enter element: 76
5. Enter element: 49
6. Enter element: 54
7. Enter element: 32
8. Enter element: 21
The Entered Elements are:
67 89 34 76 49 54 32 21
In ascending order:
21 32 34 49 54 67 76 89
Comments
Post a Comment