ユーザーが入力した数値を読み込み、数値が0から100の間であるかどうかを調べるプログラムを作成しています平方根です。数値が0より小さい場合、エラーメッセージが出力されます。数字が100から200の間であれば、数値の自然対数が見つけられ、200以上であればループが終了します。Do whileループの中にifステートメントをネストしようとすると、構文エラーが発生する
#include <stdio.h>
#include <math.h>
int main (void)
{
float num;
double x, y;
do {
printf("Please enter a number \n");
scanf("%f", &num);
if (num > 0 && num <= 100)
{
x = sqrt(num);
printf("The square root of the number entered is %f \n", x);
}
else if (num <= 0)
{
printf("Please enter a positive number \n");
}
else (num > 100)
{
y = log(num);
printf("The natural log of the number entered is %f \n", y);
}
} while (num <= 200);
return 0;
}
私が抱えている問題は、ソリューションをビルドするときに、エラー文が表示されます。
else (num > 100)
ここに必要なものはないと思われる理由は何ですか?
なぜあなたは 'float'と' double'を混ぜていますか? 2016年には、説得力のない理由がない限り、「二重」を使用してください。 –