用C语言实现 原字符串中指定的子串的的查找与替换代码?注:一定要有用户自己输入指定子串的那个过程!

2025年03月19日 09:49
有3个网友回答
网友(1):

如今搁假了,整天呆正在野里,非常无谈。装上阔带又有什么用。实缅怀以前读书的时分。和同窗有道有笑。上课时分道悄然话。可是人念,等到上高中了,我能够又勤得读书了。我那己,便那样。

我念我能够是个比拟喜欢完好的己。能够做到完善的事,烟筒拆除,我必定当真做。有些许残缺,本人会不称心。然后又沉新开端。我做一件事,便期望执着天做完它,不盼望停下来。可一夕停下来,再要我继承做,我就会没有怎样高兴愿意了。

我望没有惯自然、香显晃的人。某个己,在小道上。有一两个女生行功,他假如在女生前面,他就会跑到前里来。直到消散在女生视家。还有一人,和对于方说话时,会治道三天。毛爷爷说得佳“不调查出有收行权”。我念那话说得真佳!他说话永久是和我们南辕北辙的。我想他能够是在显示本人的具有。人瞅到他便有一类说不出的感觉。然后这两个人凑正在一同又刚刚恰好,烟筒拆除。一个拍马屁,一个听他好话。成果成了好冤家。我实晕。也难怪。。他们俩嘛。。

有时,我会把自人的情感表示正在脸上。我感觉自人就是个尺度的射手座脾气。我对于每件事皆悲观。想要积极做事,又缺乏些勇气,可又有挑衅的口。我可能不擅行辞,守口如瓶的。有时候会不晓得本人说出的话能否妥善。我感到我有耐烦,不外耐口的基本上缺少恒口。我想我待人是对比热忱的。我在百度上查到12月14曰诞生的人的性情和我实的比拟相像,烟筒拆除。“细想迅速,凡是事寻求完善和平衡,设法主意太少、太庞杂,对于事情的请求规范太高。”我想这就是我,烟筒拆除。可是我不是个理解自律和自造的人。所以我须要有个人能管住我,烟筒拆除,可是不要管得太功。心境不佳的时候不是很喜欢他人打搅我。

孤单啊。

有时分做一件事会脑筋发烧,可是每次当时,人老是会懊悔。。没有晓得为什么。

如今暑假了,话说是自在了,可我却功着无谈的日子。。

相关的主题文章:

射手座、 快乐并忧愁着

12.28~1.3 星座运势 射手座

致大家vwxyz60404

就是真实……星座—双修的我!!

如果,我不是射手座...

网友(2):

就是复杂了点:
#include
#define N 100
void main()
{
char a[N]="abcdefg";
char b;
char c[N];
char d[N];
int i,j,k;
printf("输入要插入的字符串:\n");
gets(c);
printf("要插入的位置:\n");
scanf("%s",&b);
for(i=0;a[i]!='\0';i++)
{
if(a[i]==b)
{
k=i+1;
break;
}
}
for(j=0;a[i]!='\0';j++,i++)
{
d[j]=a[i+1];
}
d[j]='\0';
for(i=k,j=0;c[j]!='\0';i++,j++)
{
a[i]=c[j];
}
for(k=0;d[k]!='\0';k++)
{
a[i++]=d[k];
}
a[i]='\0';
printf("结果是:\n");
puts(a);
getch();

}

网友(3):

//---------------------------------------------------------------------------

#include
int strlen(const char *a) /*返回字符串a的长度*/
{
int i=0;
while (a[i++]);
return i-1;
}
int findsubstr(const char *src,const char *tf) /*在src字符串中确定tf字符串的位置,如果不存在,就返回-1*/
{
int i,j;
int ls=strlen(src),lt=strlen(tf);

if (ls>=lt)
for (j=i = 0; i<=ls; i++) {
if (!tf[j]) return i-lt;
else if (src[i]==tf[j]) j++;
else j=0;
}

return -1;
}
int replace(char *s,const char *src,const char *rp) /*将字符串s中的src子串替换为rp字符串,如果成功则返回一个非负整数,否则返回-1,要求s字符数组能够容纳替换后的字符串*/
{
int i,loc,lsc,ls,lr;
loc=findsubstr(s,src);
if (loc<0) return -1;
ls=strlen(s);
lr=strlen(rp);
lsc=strlen(src);

if (lr>lsc) {
for (i=ls+(lr-lsc); i>=loc+lr; i--) {
s[i]=s[i-lr+lsc];
}
}
else if (lr for (i=loc+lsc-lr; i s[i]=s[i+lsc-lr];
}
}
for (i=0; i s[i+loc]=rp[i];
}
s[ls+(lr-lsc)]='\0';
return loc;
}
int main(void) /*测试*/
{
char a[80];
char b[30];
char c[30];

gets(a);/*输入原字符串a*/
gets(b);/*输入需要查找的子字符串*/
gets(c);/*输入要替换子串的新字符串*/

if (replace(a,b,c)>=0) /*将字符串a中的b子串替换为c字符串*/
printf("%s\n",a);
else printf("not found \"%s\"",b);

return 0;
}
//---------------------------------------------------------------------------