文章

1

粉丝

0

获赞

4

访问

308

头像
P1397 字符串连接 答疑提问:
P1397 华中科技大学
发布于2025年2月28日 16:14
阅读数 308

本地ide运行没问题,提交显示Output Limit Exceeded

#include<stdio.h>
#include<stdlib.h>
int main(){
	char a[105],b[105];
	char *q,*p;
		while(scanf("%s%s",a,b)!=NULL){
		char *m;
		int sum1=0,sum2=0;
		p=a;q=b;
		for(int i=0;*(p+i)!='\0';i++)
			sum1++;
		for(int j=0;*(q+j)!='\0';j++)
			sum2++;
		m=(char*)malloc((sum1+sum2+1)*sizeof(char));
		for(int i=0;i<(sum1+sum2);i++){
			if(i<sum1){
				*(m+i)=*(p+i);
			}
			
			else{
				*(m+i)=*(q+i-sum1);
			}
		}
		*(m+sum1+sum2)='\0';
		puts(m);	
		free(m);
	}
	return 0;
}

登录查看完整内容


登录后发布评论

4 条评论
boomb
2025年2月28日 17:26

这题我用EOF判断显示编译错误,是不是gets读取的时候要用NULL呢

赞(0)

admin : 回复 boomb: 是这样的,scanf函数就用EOF判断,其他函数用NULL判断

2025年2月28日 18:32

boomb : 回复 admin: 明白了,感谢!!!

2025年2月28日 21:39
admin
2025年2月28日 16:26

多组输入不能用NULL判断,用EOF判断

可以看一下书上1.9节

赞(0)