C语言求教!

2025-03-05 00:52:48
推荐回答(3个)
回答1:



#include 
#include 
#include 
void fun(char *string,int a){
string[a]='w';
string[a+1]='e';

int i;
for(i=(a+3);i string[i-1]=string[i];


}
string[strlen(string)-1]='\0';
}


int main(void) {
char str[1000];
char sub[3]="you";
int len;
int i;
gets(str);
len=strlen(str);
for(i=0;i

if((str[i]==sub[0])&&(str[i+1]==sub[1])&&(str[i+2]==sub[2])){

fun(str,i);
i=i+2;
puts(str);
     len--;
}
i++;
}










puts("end");
return EXIT_SUCCESS;
}

回答2:

#include
#include
int isLetter(char c){
    if(c>='a' && c<='z') return 1;
    if(c>='A' && c<='Z') return 1;
    return 0;
}
int combine(char *dst,char *scr){
    int i;
    for(i=0;scr[i];i++)
        if(isLetter(scr[i]))
            dst[i]=scr[i];
        else
            break;
    dst[i]='\0';
    return i;
}
int main(){
    char c[1024],w[1024];
    int i;
    while(gets(c)!=NULL){
        for(i=0;c[i];i++){
            if(isLetter(c[i])==0){
                printf("%c",c[i]);
                continue;
            }
            i+=combine(w,c+i)-1;
            if(strcmp(w,"you")==0)
                printf("we");
            else
                printf("%s",w);
        }
        printf("\n");
    }
    return 0;
}

回答3: