思路很简单:准备另一个字符数组,遍历字符字符数组找到需要替换的字符,无需替换的字符按顺序存入另一个字符数组,需要替换的字符位置换为目标字符,注意存储时目标数组的下标变化(尤其是一个字符替换成多个字符的时候)
例:将字符串中的'a'全部替换为‘###’
#include<stdio.h>
int main(){
char s[100],s1[100];
int i,j,index=0;
printf("enter:");
gets(s);
for(i=0;s[i]!='\0';i++){
if(s[i]!='a'){
s1[index]=s[i];
index++;
}
else{
for(j=0;j<3;j++){
s1[index++]='#';
}
}
}
s1[index] = '\0';
puts(s1);
return 0;
}
测试: