好奇怪的现象
#include "stdio.h"
#include "math.h"
void main()
{
double a,b,c,d,s;
printf("Please input two numbers:\n");
scanf("%f,%f",&a,&b);
d=a*a+b*b;
c=sqrt(d);
s=0.5*a*b;
printf("\n%f,%f",c,s);
}
把double 改成float才会有正确的答案,求解??
[解决办法]
double对应的是%lf。
[解决办法]
scanf("%f,%f",&a,&b);
这里是输入float型;
如果变量定义为double 型,应为scanf("%lf,%lf",&a,&b);
[解决办法]
如果是double那么就要这样输入
scanf("%lf,%lf",&a,&b);