大家帮我看看这段代码呗
从标准输入读入几个整数,放入array中,如果遇到输入错误就退出。代码如下:
程序代码:
int len = 5, i;
int *array;
array = malloc(len * sizeof(int));
for (i = 0; i < len; i++)
{
printf("#%d : ", i);
if (scanf("%d", array + i) != 1)
{
puts("Error input number.");
exit(EXIT_FAILURE);
}
}
运行一次程序,出现如下的结果:
#0 : 1.2
#1 : Error input number.
可是我期待的结果应该是:
#0 : 1.2
Error input number.
有大神能帮我解释原因么?










