#include <stdio.h>
#include <string.h>
char line1[200];
char line2[200];
//#define DEBUG
int main()
{
int n = 0;
scanf("%d\n", &n);//如果scanf("%d", &n)这样写,输入完数字之后回车,会导致回车暂存在输入缓存区
//当接着调用fgets时,会读入一个空行即"\n\0";如接着调用的是gets,则读入的是空字符串"\0"
while (n--)
{
memset(line1, '\0', sizeof(line1));
memset(line2, '\0', sizeof(line2));
//fgets(line1, sizeof(line1), stdin);
//fgets(line2, sizeof(line2), stdin);//fgets写入line1缓存区的字符串,包括行末的'\n'!
gets(line1);//gets写入line1缓存区的字符串,忽略了行末的'\n'。
//gets有缓存区溢出的陷阱,但是注意小心就好!
gets(line2);
#ifdef DEBUG
printf("[%s]\n", line1);
printf("[%s]\n", line2);
#endif
char *p1 = strchr(line1, '<') + 1;
char *p2 = strchr(line1, '>') + 1;
char *p3 = strrchr(line1, '<') + 1;
char *p4 = strrchr(line1, '>') + 1;
*(p1 - 1) = '\0';
*(p2 - 1) = '\0';
*(p3 - 1) = '\0';
*(p4 - 1) = '\0';
char *tmp = NULL;
while ((tmp = strchr(line2, '.')) != NULL)
{
if (*(tmp + 1) == '.' && *(tmp + 2) == '.')
{
*tmp = '\0';
break;
}
}
#ifdef DEBUG
printf("%s %s %s %s %s\n", line1, p1, p2, p3, p4);
#endif
printf("%s%s%s%s%s\n", line1, p1, p2, p3, p4);
printf("%s%s%s%s%s\n", line2, p3, p2, p1, p4);
memset(line1, '\0', sizeof(line1));
memset(line2, '\0', sizeof(line2));
}
return 0;
}
UVaOJ 10361 - Automatic Poetry
最新推荐文章于 2023-01-13 22:04:40 发布