程序运行正常,但始终给我0.00的答案。我已经浮动了数字并回答了,它要求输入第一个和第二个数字,但是我看不到哪里出了问题。
#include <stdio.h>
#include <math.h>
int main()
{
float sub;
float num1 = 18.73;
float num2 = 20.00;
printf("Please enter the total of the meal: \n");
scanf("%f", &num1);
printf("Please enter the amount of money you have: \n");
scanf("%f", &num2);
sub = num2 - num1;
printf("\nYour change is: %.2f\n", &sub);
return 0;
}
答案 0 :(得分:2)
您正在打印sub
的地址:
这样做:
printf("\nYour change is: %.2f\n", sub);
代替:
printf("\nYour change is: %.2f\n", &sub);
答案 1 :(得分:0)
在您的代码中,我发现了2个错误
scanf
时不要为变量分配大于0的数字float num1 = 0; //use this
float num2 = 0;
&
。这就是给您0的原因。printf
最后,您无需在这些程序之王中使用printf("\nYour change is: %.2f\n", sub);