为什么数据可以一边读入一边输出?
查看原帖
为什么数据可以一边读入一边输出?
855803
huanghuadong楼主2023/2/27 16:03
#include<stdio.h>
#include<string.h>
#define MAXN 101
char str[MAXN], in[MAXN];
int main(void)
{
	int q;
	scanf("%d\n%s", &q, str);
	for (int i = 1; i <= q; i++) {
		int opt;
		scanf("%d", &opt);
		if (opt == 1) {
			scanf("%s", in);
			strcat(str, in);
			printf("%s\n", str);
		}
		else if (opt == 2) {
			int a, b;
			scanf("%d %d", &a, &b);
			str[a + b] = '\0';
			strcpy(in, &str[a]);
			strcpy(str, in);
			printf("%s\n", str);
		}
		else if (opt == 3) {
			int a;
			scanf("%d %s", &a, in);
			strcat(in, &str[a]);
			str[a] = '\0';
			strcat(str, in);
			printf("%s\n", str);
		}
		else {
			scanf("%s", in);
			char *ans = strstr(str, in);
			printf("%d\n", ans != NULL ? (int)(ans - str) : -1);
		}
	}
	return 0;
}```
2023/2/27 16:03
加载中...