Web programming TipsBy Sergey Skudaev
Precondition: the function accepts an unsorted array and integer size that is the size of the array:
Post condition: Sorted array
#include "stdafx.h"
#include<iostream>
using namespace std;
int* BubbleSort ( int size, int array[]);
void exchange (int array[], int a, int b);
int main(int argc, char* argv[])
{
int array[10];
int i=0;
while (i < 10)
{
cout<<"Please enter a number."<<endl;
cin>>array[i];
i++;
}
cout<<"Unsorted array:"<<endl;
for(int k=0; k<10;k++)
cout<<array[k];
cout<<endl;
//call the sorting function
int* arr=BubbleSort (i,array);
cout<<"Sorted array:"<<endl;
for(int n=0; n<10;n++)
cout<<arr[n];
cout<<endl;
int hold = 1;
cin >> hold;
return 0;
}
int* BubbleSort ( int size, int array[])
{
int current = 0;
int* pointer;
bool sorted = false;
pointer=array;
while (( current < size)&&(sorted == false))
{
int walker = size-1;
sorted = true;
while (walker > current)
{
if ( array[walker] < array[walker - 1] )
{
sorted = false;
exchange( array, walker, walker-1);
}
walker--;
}
current++;
}
return pointer;
}
void exchange (int array[], int a, int b)
{
int temp=array[a];
array[a]=array[b];
array[b]=temp;
}