求助,为什么gets过不了,而把gets换成scanf能过?
查看原帖
求助,为什么gets过不了,而把gets换成scanf能过?
565044
budayang楼主2021/12/12 09:12

为什么gets过不了,而把gets换成scanf能过?

#include<stdio.h>
#include<string.h>
#include<memory.h>
int main()
{
	char a[501], b[501];
	int c[501] = { 0 }, d[501] = { 0 }, e[501] = { 0 }, max = 0;
	memset(a, '\0', sizeof(a));
	memset(b, '\0', sizeof(b));
	gets(a);//这里
	gets(b);//这里
	int LenA = strlen(a);
	int LenB = strlen(b);
	max = LenA;
	for (int i = 0; i < LenA; i++)
	{
		c[i] = a[LenA - 1 - i] - '0';
	}
	for (int i = 0; i < LenB; i++)
	{
		d[i] = b[LenB - 1 - i] - '0';
	}
	if (max < LenB)max = LenB;
	for (int i = 0; i < max; i++)
	{
		e[i] += c[i] + d[i];
		e[i + 1] = e[i] / 10;
		e[i] %= 10;
	}
	if (e[max] == 0)max--;
	for (int i = max; i >= 0; i--)
	{
		printf("%d", e[i]);
	}
	return 0;
}
2021/12/12 09:12
加载中...