ユーザーからの入力を読み取り、事前に決められた固定サイズ 25 の数値の浮動小数点配列に入力する関数を作成しています。また、ユーザーが入力した項目の合計数も返します。しかし、何らかの理由で、このコードは 999 を入力しても終了しません。これが int で入力が float であることはわかっていますが、これを修正する方法がよくわかりません (C しか学習していません)。 5日間)。
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);
}