用指向指针的方法对5个字符串排序并输出

#include <iostream>
#include <string>
using namespace std;
void select_sort(string *str,int n);
int main()
{
string str[5];
string *p;
char temp[100];
int i;
p=str;
cout<<"输入5个字符串:"<<endl;
for(i=0;i<5;i++)
{
cin>>temp;
p[i] = temp;
}
select_sort(p,5);
cout<<"排序后的5个字符串:"<<endl;
for(i=0;i<5;i++)
cout<<*(p+i)<<'\n';
cout<<endl;
return 0;
}
void select_sort(string *str,int n)
{
int i,j,k;
string t;
string *p;
p=str;
for (i=0;i<n-1;i++)
{
k=i;
for(j=i+1;j<n;j++)
if( p[j] < p[k]) k = j;
t = p[k];
p[k] = p[i];
p[i] = t;
}
}

用指向指针的方法对5个字符串排序并输出