换成double后输出全为0.00了,没明白为什么
#include
#include
void fir(double x);
void scd(double x);
int main()
{
float x;//这里能换成 double x 吗?为什么
scanf("%f",&x);
if(x>=0)
fir(x);
else
scd(x);
return 0;
}
void fir(double x){
double b;
b=sqrt(x);
printf("f(%.2f)=%.2f",x,b);
}
void scd(double x){
double b;
b=pow(x+1,2);
printf("f(%.2f)=%.2f",x,b);
} |
免责声明:本内容仅代表回答会员见解不代表天盟观点,请谨慎对待。
版权声明:作者保留权利,不代表天盟立场。
|
|
|
|
你换成double的话,输入应该是
scanf("%lf",&x);%lf代表double, %f代表float |
|
|
|
|