27:单词翻转
查看提交统计提问
总时间限制: 1000ms 内存限制: 65536kB
描述
输入一个句子(一行),将句子中的每一个单词翻转后输出。
输入
只有一行,为一个字符串,不超过500个字符。单词之间以空格隔开。
输出
翻转每一个单词后的字符串,单词之间的空格需与原文一致。
样例输入
hello world
样例输出
olleh dlrow
#include<stdio.h>
#include<string.h>
int main()
{
char ch_arr[501];
gets(ch_arr);
char *q=ch_arr;
while(*q!='\0') {
q++;
}
*q=' ';
char *p;
p=ch_arr;
int count=0;
int i=0,j=0;
int k=0;
char temp;
for(;*p!='\0';p++)
{
if(*p==' ')
{k=j;
for(;i<(count-k+1)/2;i++,j++){
temp=ch_arr[count-1-i];
ch_arr[count-1-i]=ch_arr[j];
ch_arr[j]=temp;
}
i=0;
j=count+1;
}
count++;
}
*q='\0';
printf("%s", ch_arr);
return 0;
}