题目大意:
一列单词,反置每个单词,但是不改变单词的顺序
解题思路:
无
代码如下:
#include <stdio.h>
#include<string.h>
void revesestr(char *str,int start,int end){
char temp;
while(start<end){
temp=str[start];
str[start++]=str[end];
str[end--]=temp;
}
}
void reveseword(char *str){
int start,end,len;
len=strlen(str);
start=end=len-1;
while(start>=0){
if(str[start]==' ' ||start==0){
len=start;
if(start!=0)
++start;
revesestr(str,start,end);
end=start=len-1;
}
else
--start;
}
}
int main()
{
int n,i,m,j,slen,start,end;
char str[1000];
int mm;
scanf("%d",&n);
mm=n;
while(n--){
scanf("%d",&m);
if(n!=mm-1)
printf("\n");
getchar();
while(m--){
gets(str);
reveseword(str);
puts(str);
}
}
return 0;
}