怎么回事
查看原帖
怎么回事
951034
zcs2012楼主2023/11/26 16:05
#include<cstring>
#include<cstdio>
using namespace std;
int main(){
	int q,len;
	char str[500]="";
	scanf("%d%s",&q,str);
	getchar();
	for(int i=0;i<q;i++){
		char com[200];
		fgets(com,200,stdin);
		if(com[0]==49){
			strncpy(str+strlen(str),com+2,strlen(com+2)+1);
			puts(str);
		}
		if(com[0]==50){
			int a,b;
			sscanf(com,"%*d %d %d",&a,&b);
			strncpy(str,str+a,b);
			str[b]=0;
			puts(str);
		}
		if(com[0]==51){
			char t[500],p[200];
			int a;
			sscanf(com,"%*d %d %s",&a,p);
			strcpy(t,str+a);
			strcpy(str+a,p);
			strcat(str,t);
			puts(str);
		}
		if(com[0]==52){
			char p[200],*ans=strstr(str,com+2);
			if(ans)printf("%d\n",ans-str);
			else puts("-1");
		}
	}
	return 0;
}

请问各位为什么过不了?样例过了啊。 我的错误记录

2023/11/26 16:05
加载中...