我正在尝试将包含 x 个双精度数的文件扫描到两个单独的数组中,其中双精度数被扫描到哪个数组一个接一个地交替。一切都运行良好,但我一直在 0 中扫描我的两个数组中的一个额外元素(不是我文件中双精度列表的一部分)。
如果我要扫描足够多的双精度数以使两个数组都有 37 个双精度数,我的代码就会使我有 38 个元素,两个数组的最后一个元素都为零。
ARR_SIZE 为 1500
Size read_array(double array1[], double array2[])
{
Size size = {0, 0};
int i = 0;
int status1 = 0;
int status2 = 0;
status1 = scanf("%lf", &array1[i]);
size.sigSize1++;
status2 = scanf("%lf", &array2[i]);
size.sigSize2++;
while(size.sigSize1 < ARR_SIZE && size.sigSize2 < ARR_SIZE &&
(status1 != EOF || status2 != EOF))
{
i++;
status1 = scanf("%lf", &array1[i]);
size.sigSize1++;
status2 = scanf("%lf", &array2[i]);
size.sigSize2++;
}
return size;
}