字符串的替换

字符串的替换

实现将字符串“today is Monday”替换变成“today is Friday

或将字符串“today is Monday”替换成“toFriday Monday

或将字符串“today is Monday”替换成“today is MondFriday

在字符串即为一个字符数组,以下标0开始。

这里的替换是以替换字符串的长度为基准的

#include<stdio.h>

char *replace(char *s1,char *s2,int pos)

{

int i,j,sign=0;

i=0;

for(j=pos-1;s2[i]!='/0';j++)/*pos-1是因为字符串的下标从0开始,s2控制循环是因为以s2为基准来替换s1中的字符*/

{

if(s1[j]=='/0')//标记,在替换过程中当s1出现结束符时进行标记

{

sign=1;

}

s1[j]=s2[i];

i++;

}

if(sign==1)//因为s1的结束符被替换,所以要再s1加上结束符

s1[j]='/0';

return s1;

}

void main()

{

char string1[100],string2[100];

int position;

printf("请输入字符串:/n");

gets(string1);

printf("/n请输入替换字符串:/n");

gets(string2);

printf("/n请输入要替换的位置:/n");

scanf("%d",&position);

replace(string1,string2,position);

printf("/n字符串的最终结果为:%s/n",string1);

}

你可能感兴趣的:(String)