用字符替换字符串中的字符串

时间:2015-11-05 07:17:04

标签: c gets puts

如何编写用户定义的函数,该函数使用字符串搜索和替换另一个字符串中包含的任何字符的字符出现。 不能在代码中使用任何字符串变量,必须是用户定义的函数。 谢谢 这是我到目前为止所尝试的     #define _CRT_SECURE_NO_WARNINGS     #包括     的#include

void s1();
void s2();

int main(void)
{   

    int i=0;


    s1();
    s2();
    printf("c = {'$'} ");

}//main
void s1(){
    int i = 0;
    while (i <= 40){
    printf("%c", (rand() % 25) + 'A');
    i++;
    }
}
void s2(){
    char s2[20];

    printf("\nEnter a string of minimum 2 and maximum 20 characters= ");
    gets(s2);
    puts(s2);
}

/ * 我只需要创建另一个搜索s1的函数,并将所包含的任何字符的任何出现替换为s2,其中的字符可以是任何字符(例如,&#39; $&#39;)

* /

1 个答案:

答案 0 :(得分:0)

//If I have understood your question then this should be answer
char *replace(char [] a, char b[], int lower, int upper){
  char c[100];
  int j = 0;
  for(int i = 0; i < lower; i++){
     c[j] = a[i];
     j++;
  }
  for(int i = 0; i < strlen(b); i++){
     c[j] = b[i];
     j++;
  }
  for(int i = upper; i < strlen(a); i++){
     c[j] = a[i];
     j++;
  }
  c[j] = '\0'

  for(int i = 0; i < strlen(c); i++){
    a[i]= c[i];
  }  
  a[i] = '\0';  
  return a;
}