I need to put the names entered by the user in alphabetical order. What are my variables to declare? Im wanting to use something like this in my code but do not know what my array is or anything. selection_sort(arr1, arrSize);

using namespace std;

int main ()
{
    string temp;
    int numStrings = 0, maxStrings = 40;
    string names[maxStrings];
    
 
    cout << "Enter Student using Last Name First (done to stop)" << endl;
    getline(cin,temp);
    while ((temp!="done") && (numStrings < maxStrings))
    {
          names[numStrings++] = temp;
          cout << "Enter another student (or done)"<< endl;
          getline(cin,temp);
}
    
    for (int j = 0; j < numStrings; j++)
        cout << j << " " << names[j] << endl;
 //void selection_sort(int arr1[9], int size)
{
  
    // int index, temp;
     
    // for (int i = 0; i < size-1 ; i++ ) 
     {
      
       //  index = i; 
       //  for (int j = i+1; j < size ; j++)
         {
        //     if (arr1[j] > arr1[index]) index = j;
         }
   
       //  temp = arr1[index];
       //  arr1[index] = arr1[i];
       //  arr1[i] = temp;


             
     system("pause");
    return 0;
}

The code is pretty messy.
From the looks of the sorting code u are using selection sort. Ok

Here is a basic algorithm for the sort. But u need to change the variables according to ur required datatype i.e string.

here is a general code for selection sort.
Modify the datatypes for ure needs (i.e String)
I hope u can understand the logic behind the technique.

For more clear explanation: http://en.wikipedia.org/wiki/Selection_sort

void selectionSort(int *array,int length)//selection sort function 
{
	int i,j,min,minat;
	for(i=0;i<(length-1);i++)
	{
		minat=i;
		min=array[i];

      for(j=i+1;j<(length);j++) //select the min of the rest of array
	  {
		  if(min>array[j])   //ascending order for descending reverse
		  {
			  minat=j;  //the position of the min element 
			  min=array[j];
		  }
	  }
	  int temp=array[i] ;
	  array[i]=array[minat];  //swap 
	  array[minat]=temp;

		
	}

And your array is a string array. and the size of the array will be equal to numStrings.
and also u will have a problem when u use names starting with capital letters and small letters together. So think of a solution to that problem. I think u can get an idea if u read more about the C++ string object. http://www.cplusplus.com/reference/string/string/ Good Luck!

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.