10115 - Automatic Editing
来源:互联网 发布:linux系统怎么学 编辑:程序博客网 时间:2024/06/10 16:50
题目:10115 - Automatic Editing
题目大意:将给定的字符串里出现的上面替换规则中相对前面的字符串,替换成规则中的字符串相应字符串,然后继续重头开始从头开始判断,有就替换,没有就换下一个替换规则;注意替换规则的字符串是按顺序来替换给定的字符串,只有当前一个字符串已经找不到相对应要被替换的字符时,下一个替换规则才开始;注意里面的用来替换的字符串可能为空;记得要初始化为全0,以防上次数据残留导致错误;
解题思路:用strstr找出现替换字符串的起始位置,用strcpy(char * 被赋值起始指针,char* 被复制起始指针)复制,控制被赋值起始指针,从而达到替换字符串的效果;
#include<stdio.h>#include<string.h>const int N = 260;const int M = 12;const int K = 85;char * num = NULL;char str[N];char tmp[N];struct RP {char data[2][K];} rp[M];int main() {int t, i, j;memset(rp, 0, sizeof(rp));memset(str, 0, sizeof(str));memset(tmp, 0, sizeof(tmp));while(scanf("%d%*c",&t) && t) {for (i = 0; i < t; i++) {gets(str);strcpy(rp[i].data[0] , str);memset(str, 0, sizeof(str));gets(str);strcpy(rp[i].data[1] , str);memset(str, 0, sizeof(str));}gets(str);for (i = 0; i < t; i++) {while(true) {num = strstr(str, rp[i].data[0]);if(num == NULL) break;int l1 = strlen(rp[i].data[0]);int l2 = strlen(rp[i].data[1]);strcpy(tmp, num+l1);strcpy(num ,rp[i].data[1] );strcpy(num + l2,tmp);}}puts(str);memset(str, 0, sizeof(str));memset(rp, 0, sizeof(rp));memset(tmp, 0, sizeof(tmp));num = NULL;}return 0;}
0 0
- UVa 10115 Automatic Editing
- 10115--Automatic Editing
- uva 10115 Automatic Editing
- UVa 10115 - Automatic Editing
- 10115 - Automatic Editing
- UVa 10115 - Automatic Editing
- uva-10115 - Automatic Editing
- UVa 10115 - Automatic Editing
- 10115 - Automatic Editing
- UVA 10115 - Automatic Editing
- UVaOJ 10115 - Automatic Editing
- UVa 10115 - Automatic Editing
- UVa 10115 - Automatic Editing
- 10115 - Automatic Editing
- UVA 10115 Automatic Editing
- uva 10115 - Automatic Editing
- UVA 10115 Automatic Editing
- uva 10115 Automatic Editing
- 74. 性能调优的道路上遍布脏代码炸弹
- RSA公钥加密算法
- 关于PPP multilink的负载均衡和分片大小
- test
- 1160C语言实验——某年某月的天数
- 10115 - Automatic Editing
- Android中实现Web通信
- cocos2dx之创建有渐影效果的sprite
- 数字图像处理(五) 利用PCA算法进行人脸识别
- iOS游戏开发三:苹果内支付实现 In-app
- 基于visual Studio2013解决C语言竞赛题之1055排序
- JAX-WS 2.2 API is required, but an older version was found in the JDK.
- hdu1316(斐波那契数列+高精度)
- 1163C语言实验——排列