题目:编写一个程序,要求输入两个浮点数,然后打印出用 两者的差值除以两者的乘积所得的结果 在用户键入非数字的输入前让程序循环处理每对输入值
我写的程序:
两个变量是 double型,输入那里的格式符是 %lf ,代码里 %f 少了 l(小写 L) 。
你这不行啊,第一遍输入的不就白输入了么?
int main()
{
double num1,num2;
while(scanf("%f%f",&num1,&num2) !=EOF)
{
if(num1 == 0 || num2 == 0)
break;
printf("%f\n",(num1-num2)/(num1*num2);
}
return 0;
}
#include<stdio.h>
#include<math.h> // For abs()
int main(void)
{
double FirstNumber;
double SecondNumber;
int Switch_1;
int Switch_2;
printf("Please Input Any Double:");
Switch_1 = scanf("%lf",&FirstNumber);
printf("PLease Input Another Double:");
Switch_2 = scanf("%lf",&SecondNumber);
while(Switch_1 == 1 && Switch_2 == 1)
{
printf("%.2f\n",fabs(FirstNumber-SecondNumber) / (FirstNumber * SecondNumber));
printf("Please Input Any Double:");
Switch_1 = scanf("%lf",&FirstNumber);
printf("PLease Input Another Double:");
Switch_2 = scanf("%lf",&SecondNumber);
}
printf("Done\n");
return 0;
}
这是一个博主写的答案 我感觉和我的差不多 就是他把scanf赋值给了Switch_1 不明白有什么区别