UVA - 10361 Automatic Poetry 神秘的空格
2014-09-20 19:19
323 查看
题目大意:根据题目将字符串进行转换
解体思路:找到所需要替换的内容,存储在字符串中,再进行输出
解体思路:找到所需要替换的内容,存储在字符串中,再进行输出
#include<cstdio> #include<cstring> int main() { char str[300]; char s[3000]; char *st[100]; int number; int len; int mark = 0; int i; int test; scanf("%d\n", &test); for(int i = 0 ; i < test * 2; i++) { gets(str); strcat(s,str); s[strlen(s)] = '\n'; } len = strlen(s); char s1[100], s2[100], s3[100], s4[100] ; memset(s2,'\0',sizeof(s2)); memset(s3,'\0',sizeof(s3)); memset(s4,'\0',sizeof(s4)); memset(s1,'\0',sizeof(s1)); for( i = 0 ; i < len ; i++ ) { if(mark != test) { if(s[i] == '<') { int k = i; k++;//跳过字符< for(int j = 0; s[k] != '>' ; j++, k++) { s1[j] = s[k]; } k++;//跳过字符> for(int j = 0; s[k] != '<'; j++,k++ ) s2[j] = s[k]; for( ; k < len; k++ ) { if(s[k] == '<') { k++;//跳过字符< for(int j = 0; s[k] != '>' ; k++, j++) { s3[j] = s[k]; } k++;//跳过字符> for(int j = 0; s[k] != '\n'; j++, k++ ) s4[j] = s[k]; break; } } printf("%s%s%s%s", s1, s2, s3,s4); i = k; } if(s[i] == '.' && s[i + 1] == '.' && s[i + 2] == '.') { i = i + 3; printf("%s%s%s%s",s3 ,s2, s1, s4); mark++; memset(s2,'\0',sizeof(s2)); memset(s3,'\0',sizeof(s3)); memset(s4,'\0',sizeof(s4)); memset(s1,'\0',sizeof(s1)); if(mark == test) {//少了这个就多出了个空格 printf("\n"); return 0; } } } printf("%c",s[i]); } return 0; }
相关文章推荐
- UVa:10361 - Automatic Poetry
- uva 10361
- UVA10361 - Automatic Poetry
- uva 10361
- UVa 10361 - Automatic Poetry
- UVA_10361
- UVa10361 - Automatic Poetry
- UVa 10361 Automatic Poetry (字符串处理&两种读入方式)
- UVA10361 -自动作诗机
- UVA10361 - Automatic Poetry
- Volume 1. Elementary Problem Solving :: String Uva 401,10010,10361,537,409
- UVa 10361 Automatic Poetry
- uva 10405 - Longest Common Subsequence(注意空格陷阱)
- UVA 10361 Automatic Poetry
- UVA 题目10361 - Automatic Poetry
- UVA-10361 Automatic Poetry
- UVA 10361 Automatic Poetry
- UVA 10361
- uva10361 Automatic Poetry
- UVa 10361 - Automatic Poetry