1858: 单词翻转
Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 88 Solved: 35
SubmitStatusWeb Board
Description
小明终于等来了好朋友的来信,但打开来信就傻眼了,居然看不懂,原来好朋友把信中的每个单词都翻转了顺序,例如“Happy”在朋友的信里变成了“yppaH”。请你编写程序帮助小明还原来信内容吧。
Input
输入一个字符串,以回车结束。该字符串长度不超过100,包含多个单词,单词之间有一个或多个空格。
Output
输出一行,即单词翻转后的字符串,注意每对单词之间的空格数量保持不变。
Sample Input
yppaH wen raey
Sample Output
Happy new year
HINT
Source
将一个句子中的每一个单词反转,但是又不能影响单词所在的位置,找到空格就输出,找到单词就存起来,直到等到下一个空格出现,然后将单词反向输出
#include<stdio.h> #include<string.h> char s[10010],a[10010]; int main() { while(gets(s)!=NULL) { int l=strlen(s); for(int i=0;i<l;i++) { if(s[i]==' ') printf(" "); else { memset(a,' ',sizeof(a)); int j=0; while(s[i]!=' '&&i<l) { a[j++]=s[i]; i++; } for(int k=j-1;k>=0;k--) printf("%c",a[k]); i--; } } printf(" "); } return 0; }