提交记录 #325
提交时间:2024-11-26 21:44:47
语言:c
状态:Unaccepted
编译情况:编译成功
固定测试点#1:
固定测试点#2:
固定测试点#3:
额外测试点#1:
52【字符】字符替换*——用指针更方便
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
int strindex( char *p, char *q ){
int i = 0;
while( *( q + i ) != '\n' && *( q + i ) != '\n'){
if( *( p + i ) != *( q + i ) ){
return 0;
}
i++;
}
return 1;
}
void exout( char *p, char *index, char *m, char *out ){
int i = 0, j = 0;
while( strindex( ( p + i ), index ) == 0 ){
*( out + i ) = *( p + i );
i++, j++;
}
int n = 0;
while( *( index + n ) != '\n'){
i++;
n++;
}
int q = 0;
while( *( m + q ) != '\n' ){
*( out + j ) = *( m + q );
j++, q++;
}
while( *( p + i ) != '\n' ){
*( out + j ) = *( p + i );
j++, i++;
}
int r = 0;
for( r = 0; r <= j - 1; r++ ){
putchar( *( out + r ) );
}
printf("\n");
return;
}
int main(){
char *p = malloc(sizeof(char) * 200 );
char *index = malloc(sizeof(char) * 20 );
char *m = malloc(sizeof(char) * 20 );
char *out = malloc(sizeof(char) * 200 );
fgets( p, 110, stdin );
fgets( index, 20, stdin );
fgets( m, 20, stdin );
exout( p, index, m, out);
return 0;
}