70,037
社区成员
发帖
与我相关
我的任务
分享void putLenght(char (*word)[MLen] , int n)
{
char mid[n][MLen];
for(int i = 0 ; i < n ; ++i)
strcpy(*(mid+i),*(word+i));
for(int i = 0 ; i < n ; ++i) //sort by lenght
{
for(int j = i ; j < n ; ++j)
{
char midChar[MLen];
if(strlen(*(mid+i)) > strlen(*(mid+j)))
{
strcpy(midChar,*(mid+i));
strcpy(*(mid+i),*(mid+j));
strcpy(*(mid+j),midChar);
}
}
}
for(int i = 0 ; i < n ; ++i)
fputs(*(mid+i),stdout);
}void putFirstWord(char (*word)[MLen] , int n)
{
char mid[n][MLen];
for(int i = 0 ; i < n ; ++i)
{
printf("%d\n",LenForFirstWord(*(word+i),MLen));
printf("%d\n",LenForFirstWord(*(mid+i),MLen));
strcpy(*(mid+i),*(word+i));
}
for(int i = 0 ; i < n ; ++i) //sort by lenght
{
for(int j = i ; j < n ; ++j)
{
char midChar[MLen];
if(LenForFirstWord(*(mid+i),MLen) > LenForFirstWord(*(mid+j),MLen)) //<--唯一的区别
{
strcpy(midChar,*(mid+i));
strcpy(*(mid+i),*(mid+j));
strcpy(*(mid+j),midChar);
}
}
}
for(int i = 0 ; i < n ; ++i)
fputs(*(mid+i),stdout);
}
int LenForFirstWord(char* word , int n)
{
int Lenght = 0;
for(int i = 0 ; i < n ; ++i)
{
if((*(word+i)) == ' ')
{
Lenght = i;
break;
}
}
return Lenght;
}