C语言,明明结果一样,就是过不了
查看原帖
C语言,明明结果一样,就是过不了
861113
wanan2203ouchengli楼主2023/10/1 10:52

大佬救命

#include<stdio.h>
#include<string.h>
#define M 200
int main(void) {
    char str[M], in[M];
    int q,a,b,c;
	scanf("%d\n%s", &q,str);
	for (int i = 1; i <= q; i++) {
		scanf("%d", &a);
		printf("%d\n", a);
		if (a == 1) {
			scanf(" %s", in);
			strcat(str, in);
			printf("%s\n", str);
		}
		else {
			if (a == 2) {
				scanf("%d %d", &b, &c);
				str[b + c] = '\0';
				strcpy(str, &str[b]);
				printf("%s\n", str);
			}

		else {
				if (a == 3) {
					scanf("%d", &a);
					scanf("%s", in);
					strcat(in, &str[a]);
					str[a] = '\0';
					strcat(str, in);
					printf("%s\n", str);
				}
		       else {
					if (a == 4) {
			        scanf("%s", in);
			        char* zhi = strstr(str, in);
			        printf("%d\n", zhi != NULL ? (int)(str - zhi) : -1);//
		            }
		       }
		}
	}
}
return 0;
}
2023/10/1 10:52
加载中...