我在尝试运行时,发现总要比amount的值多输一个分数,不知道自己代码哪出问题了
问题
#include<stdio.h>
#include<stdlib.h>
int main(void)
{
int amount;
int* string;
scanf("%d\n",&amount);
int sum = 0;
string = (int*)malloc(amount*sizeof(int));
int i;
for(i=0; i<amount; i++){
scanf("%d\n",&string[i]);
}
for(i=0;i<amount;i++){
if(string[i]<60)
{
sum++;
}
}
printf("%d",sum);
free(string);
return 0;
}
比如如果我先输入2,就要后面跟三个数字才能出结果,这是为什么?