C语言WA帮帮我Orz
查看原帖
C语言WA帮帮我Orz
255013
T___Y楼主2022/11/2 23:09
#include<stdlib.h>
#include<string.h>
#include<math.h>
int main()
{
	char in[1000],sec[100];
	int q;
	scanf("%d",&q);
	getchar();
	gets(in);
	for(int i=0;i<q;i++)
	{
		memset(sec,0,sizeof(sec));
		gets(sec);
		if(sec[0]=='1')
		{
			char str[100];
			sscanf(sec,"%*c%*c%s",&str);
			strcat(in,str);
			puts(in);
		}
		else if(sec[0]=='2')
		{
			int a,b,d=0;
			char c[100];
			sscanf(sec,"%*c%*c%d %d",&a,&b);
			for(int j=a;j<=a+b;j++)
			{
				c[d]=in[j];
				in[d]=c[d];
				d++;
			}
			in[b]='\0';
			puts(in);
		}
		else if(sec[0]=='3')
		{
			int a,b=0;
			char str[100];
			sscanf(sec,"%*c%*c%d %s",&a,&str);
			int len=strlen(str)+strlen(in);
			for(int k=len-1;k>=a;k--)
			{
				if(in[k]=='\0')in[k]='0';
				in[k+1]=in[k];
			}
			for(int j=a;j<strlen(str)+a;j++)
			{
				in[j]=str[b++];
			}
			in[len]='\0';
			puts(in);
		}
		else if(sec[0]=='4')
		{
			char str[100],b=0;
			sscanf(sec,"%*c%*c%s",&str);
			int len=strlen(str);
			char *p=&in[0],flag=1;
			while(*p!='\0')
			{
				flag=1;
				p=&in[b++];
				for(int j=0;j<len;j++)
				{
					if(str[j]!=*p)
					{
						flag=-1;
						break;
					}
					p++;
				}
				if(flag==1)break;
			}
			if(flag)printf("%d",b-1);
				else printf("-1");
		}
	}
	return 0;
}```
2022/11/2 23:09
加载中...