要考虑多个空格及'\0'的情况。。。
#include<stdio.h>
#include<string.h>
char s[1000];
int main()
{
int i,j,m,t,l;
while(scanf("%d",&t)!=EOF)
{
getchar();
memset(s,0,sizeof(s));
while(t--){
gets(s);
l=strlen(s); m=-1;
for(i=0;i<=l;i++){
if(s[i]==' ' || s[i]=='\0'){
for(j=i-1;j>m;j--)
printf("%c",s[j]);
if(s[i]!='\0') printf(" ");
m=i;
}
}
printf("\n");
}
}
return 0;
}