題目描述
將一句話的單詞進行倒置,標點不倒置。比如 I like beijing. 經過函數後變爲:beijing. like I
輸入描述:
每個測試輸入包含1個測試用例: I like beijing. 輸入用例#長度不超過100
輸出描述:
依次輸出倒置之後的字符串,以空格分割
示例1
輸入
I like beijing.
輸出
beijing. like I
代碼
#include <string.h>
#include <stdio.h>
#include <ctype.h>
void ReserveStr(char *arr,int start,int end)
{
char ch;
if(arr==NULL)
return;
while(start<end)
{
ch=arr[start];
arr[start]=arr[end];
arr[end]=ch;
start++;
end--;
}
}
void ReserveWord(char *arr)
{
int start=0;
int end=0;
int len = strlen(arr);
if(arr==NULL)
return;
ReserveStr(arr,0,len-1);
while(start<len)
{
end=start;
if(arr[start]!=' ')
{
while(arr[end]!=' '&&arr[end]!='\0')
{
end++;
}
ReserveStr(arr,start,end-1);
start=end;
}
else
{
start++;
}
}
}
int main()
{
char str[100];
gets(str);
ReserveWord(str);
printf("%s",str);
}