我正在创建一个函数来读取用户的输入,并将它们放入一个浮点数数组中,预定的固定大小为 25。它还返回用户输入的项目总数。但是,由于某种原因,当我输入 999 时,这段代码不会终止。我知道它是一个 int 并且输入是一个浮点数,但我真的不知道如何解决这个问题(只学习 C五天)。
int readArray(float a[]){
//accepts inputs and puts items in a predefined array of size 25
int index = 0;
float input;
printf("Enter 25 or less elements for array (999 to finish):\n");
scanf("%d", &input); //accept initial response; priming prompt
printf("1st Prompt accepted");
while (input != 999 && index < 25) {
printf("In while loop");
a[index] = input;
index++;
scanf("%d", &input);
}
return (index);
}