69,382
社区成员
发帖
与我相关
我的任务
分享
# include <stdio.h>
# include <string.h>
# define N 11
char S[N]={"%A.Blf"},T[N];
char A[N],B[N];
double D=1.123456789;
int BF(char *A,char *B,char *C,char *D)
{//将A[]中的所有B[]换成C[] 所形成的新字符串存到D[]中
int i=0,j=0,k=0,m=0,n=0;//返回替换的个数
do{
if (B[j]&&A[i++]==B[j])j++;
else
{
if(!B[j]&&++n) while(C[m])D[k++]=C[m++];
else (i-=j)&&(D[k++]=A[i-1]);
j=m=0;
}
}while(A[i-1]);
return n;
}
int main()
{
char X[]={"A"},Y[]={"B"};
scanf("%s%s",A,B);
BF(S,X,A,T);//将S字符串当中的'A'用A替换 形成的新字符串存到T里
BF(T,Y,B,S);//将T字符串当中的'B'用B替换 形成的新字符串存到S里
printf(S,D);//以S的格式输出D
}