我的代码到底哪里出问题了?
将5个字符数组排序:
程序代码:#include<stdio.h>
#include<string.h>
#define N 5
#define M 81
void main()
{
int i,j;
char *p[N],str[N][M],*t;
printf("Please input %d string:\n",N);
for(i=0;i<N;i++)
{
gets(str[i]);
p[i]=str[i];
}
for(j=0;j<N-1;j++)
{
for(i=0;i<N-1;i++)
{
if(strlen(p[i])<strlen(p[i+1]))
t=p[i];p[i]=p[i+1];p[i+1]=t;
}
}
for(i=0;i<N;i++)
printf("%s\n",p[i]);
}请大师们帮我找下哪错了









