/* * Program to read a list of integers from standard input and print them in * sorted order. This uses a simple selection sort. * * Author: Arul Benjamin Chandru.E */ /* * Swap function for sorting. */ void swap(int *a, int *b) { int tmp; /* Exchange temp value. */ tmp = *a; *a = *b; *b = tmp; } /* * Sort the array. It receives a pointer to the start of the data and the * number of items. */ void sort(int *data, int size) { int minloc; /* Loc of minimum. */ for(minloc = 0; minloc < size - 1; ++minloc) { int scan; for(scan = minloc + 1; scan < size; ++scan) if(data[minloc] > data[scan]) swap(&data[minloc], &data[scan]); } } /* * Main program. Reads the integers into an array, sorts them, and * prints them out. */ const int MAX_NUM_INTS = 100; int main() { int ints[MAX_NUM_INTS]; // Where the numbers go. // Read them in. int i; for(i = 0; i < MAX_NUM_INTS && cin >> ints[i]; ++i); int numints = i; // Sort them. sort(ints, numints); // Print them. cout << "==================" << endl; for(int i = 0; i < numints; ++i) cout << ints[i] << endl; cout << "==================" << endl; }