私はCでのプログラミングの初心者なので、ここで助けてください。ユーザーに数値の入力を求めるループ プログラムを作成しようとしています。数値が正の場合は合計に追加され、負の場合はプログラムが終了し、平均、最低入力、最高入力が表示されます。残念ながら、低いものと高いもので何を変更しても、低いものは「ナン」になり続け、高いものは負の数になります..助けてください!
#include<stdio.h>
int main(void)
{
float input;
float total;
float low;
float high;
float average;
int count=0;
printf("\n\nPlease enter a positive number to continue or a negative number");
printf(" to stop: ");
scanf("%f", &input);
while (input > 0)
{
count = count + 1;
printf("\nPlease enter a positive number to continue or a negative");
printf(" number to stop: ");
scanf("%f", &input);
total = total + input;
if ( low < input )
{
( low = input );
}
else
{
( low = low );
}
}
if (input < high)
{
(high = input);
}
else
{
(high = high);
}
average = total / count;
printf("\n\n\nCount=%d",count);
printf("\n\n\nTotal=%f",total);
printf("\nThe average of all values entered is %f\n", average);
printf("\nThe low value entered: %f\n", low);
printf("\nThe highest value entered: %f\n", high);
return 0;
}
gcc でコンパイルし、数値 1、5、4、次に -1 でテストした後、次の出力が得られます。
Count=3
Total=8.000000
The average of all values entered is 2.666667
The low value entered: nan
The highest value entered: -1.000000