这个选择排序错哪了
运行的结果 老是第2个 没有交换。。。 #include<stdio.h>
#include<string.h>
void sort(char **p)
{
int i,j,k;
char *t;
for(i=0;i<4;i++)
{
k=i;
for(j=i+1;j<5;j++)
{
if(strcmp(*(p+k),*(p+j))>0)
{
k=j;
}
if(k!=i)
{
t=*(p+k);
*(p+k)=*(p+i);
*(p+i)=t;
}
}
}
}
void main()
{
char *str[5]={"acc","a","abc","bbz","bbs"};
char **p;
int i;
p=str;
sort(p);
for(i=0;i<5;i++)
{
p=str+i;
printf("%s\n",*p);
}
}