当前位置: 首页 > news >正文

网站受到攻击 怎么做北京市专业网站制作企业

网站受到攻击 怎么做,北京市专业网站制作企业,中国建设银行网站对公账户首页,移动网站开发教学大纲6-2 堆串的基本操作StrReplace(S, T, V) 编写算法,实现堆串的基本操作StrReplace(S, T, V)。 初始条件: 串S, T和 V 均已存在,且 V 是非空串。 操作结果: 用V替换主串S中出现的所有与(模式串)T相等的不重叠的子串。输入格式: 第一行:S 第二行&#…

6-2 堆串的基本操作StrReplace(S, T, V)

编写算法,实现堆串的基本操作StrReplace(S, T, V)。

初始条件: 串S, T和 V 均已存在,且 V 是非空串。

操作结果: 用V替换主串S中出现的所有与(模式串)T相等的不重叠的子串。
输入格式:

第一行:S

第二行:T

第三行:V

输出格式:

S = 被替换后的结果

函数接口定义:

void StrReplace(HString *S, HString T, HString V);

堆串类型定义如下:

typedef struct
{char *ch;int  len;
}HString;

裁判测试程序样例:

#include<stdio.h>
#include <stdlib.h>
#include <string.h>typedef struct{char *ch;int  len;
}HString;void StrReplace(HString *S, HString T, HString V);/*串初始化函数*/
void StrInit(HString *s)
{s->ch=NULL;s->len=0;
}/*串赋值函数:将字符串常量tval的值赋给串s */
int StrAssign(HString *s, char *tval)
{    int len,i=0;if (s->ch!=NULL) free(s->ch);while (tval[i]!='\0')  i++;len=i;if (len){s->ch=(char *)malloc(len);if (s->ch==NULL)  return(0); for (i=0;i<len;i++)s->ch[i]=tval[i];}else  s->ch=NULL;s->len=len;return(1);
}/*串插入函数:在串s中下标为pos的字符之前插入串t */
int StrInsert(HString *s, int  pos, HString t){int i;  char *temp;if (pos<0 || pos>s->len || s->len==0)return(0);temp=(char *)malloc(s->len + t.len);if (temp==NULL)  return(0);for (i=0;i<pos;i++)temp[i]=s->ch[i];for (i=0;i<t.len;i++)temp[i+pos]=t.ch[i];for (i=pos;i<s->len;i++)temp[i + t.len]=s->ch[i];s->len+=t.len;free(s->ch);s->ch=temp;return(1);
} /*串删除函数:在串s中删除从下标pos起len个字符 */
int StrDelete(HString *s, int pos, int len) {int i; char *temp;if (pos<0 || pos>(s->len - len))return(0);temp=(char *)malloc(s->len - len);if (temp==NULL)  return(0);for (i=0;i<pos;i++)temp[i]=s->ch[i];for (i=pos;i<s->len - len;i++)temp[i]=s->ch[i+len];s->len=s->len-len;free(s->ch);s->ch=temp;return(1);
}/*串的简单模式匹配:求串t在串s中的位置*/
int StrIndex(HString *s, int pos, HString t){int i,j,start;if (t.len==0)  return(0);start=pos; i=start; j=0;while (i<s->len && j<t.len){if (s->ch[i]==t.ch[j])  {i++;j++;}else  {start++; i=start; j=0;}}if (j>=t.len) return(start);else return(-1);
} void main()
{HString s, t, v;char str1[100],str2[100],str3[100];int i;gets(str1);  StrInit(&s);  StrAssign(&s, str1);gets(str2);  StrInit(&t);  StrAssign(&t, str2);gets(str3);  StrInit(&v);  StrAssign(&v, str3);StrReplace(&s, t, v);printf("S = '");for(i=0;i<s.len;i++)printf("%c", s.ch[i]);printf("'\n");
}/* 请在这里填写答案 */

输入样例:

在这里给出一组输入。例如:

abcaabcaaabca
bca
x

输出样例:

在这里给出相应的输出。例如:

S = 'axaxaax'
void StrReplace(HString *S,HString T,HString V){int index=0;while((index=StrIndex(S,index,T))!=-1){StrDelete(S,index,T.len);StrInsert(S,index,V);index+=V.len;}
}
http://www.yayakq.cn/news/699592/

相关文章:

  • 单位的网站建设费如何核算高唐住房建设局网站
  • 自己做网站 怎么解决安全问题wordpress 图片缩略图不显示图片
  • 漯河网站seowordpress优化 春哥
  • 付钱做编程题目的网站无障碍网站建设方案
  • 艺术类 网站建设方案最大郑州网站建设公司
  • 网站流量怎么做的网站开发的作用
  • 徐州网站建设优化宣传东莞大型企业
  • 重庆网站平台如何推广蚌埠网站开发
  • 呼市网站建设合肥网站建设托管
  • 做公司简介的开源网站上海公司注销咨询联贝财务
  • 德州市德城区城乡建设局网站网址推荐
  • 苏州网站建设书生重庆网站建设公司那好
  • 广西省建设厅网站上海市建设市场管理信息平台网站
  • 高端网站定制开发设计制作电子商务网站开发的说法
  • 湖南省建设厅城乡建设网站如何查询网站空间大小
  • 手机网站做跳转好吗怎么进不了深圳市建设局网站
  • 青色系网站信阳网站开发公司电话
  • 网站备案太慢灵犀科技 高端网站建设背景图
  • 长春做公司网站国内知名的app开发
  • 深度网站建设没域名 打开网站
  • 全网展示型网站建设县级林业网站建设管理
  • 马鞍山做网站wordpress手机端图片
  • 如何从客户网站开发客户wordpress搜索栏
  • 网站的服务有哪些升华网络推广软件
  • 做网站需要啥备案之类的嘛网站如何做好seo
  • 毕业设计团购网站建设电子产品配件采购网站
  • 动漫网站怎么建设淘宝联盟上怎么建设网站
  • 重庆网站设计网络广告人社区官网
  • 有没有专门做素食的美食网站网站开发会什么
  • 建设银行官网的网站首页js做网站统计