C语言中如何定义小数

2024-12-14 09:03:17
推荐回答(3个)
回答1:

C语言中用于描述小数的数据类型是float和double,float类型表示单精度浮点数,double表示双精度浮点数。


C语言中浮点数常量有两种表示方式:

1、定点表示:(必须有小数点) 如:0.123, .123, 123.0。
2、指数表示:(e或E之前必须有数字,指数必须为整数)如:12.3e3 ,123E2, 1.23e4。
错误的写法:e-5 ,1.2E-3.5,e3。

注意:浮点数常量默认为double类型,如果浮点数常量表示float类型,请在末尾添加小写的f或者大写的F,表示此常量为单精度浮点常量。

float f1 = 1.1f; //小写f
float f2 = 1.1F; //大写F
double d = 1.1;  //double类型



回答2:

用double啊,双精度
scanf("%f",t); 错了
是scanf("%f",&t);

#include
#include
int main() {
double d=0.005,g=0.009794,p0=979.707,pt=101330.0,b=0.00822,n=0.0000183;
double r,q,u,t;
printf("input t\n");
scanf("%f",&t);
r=sqrt(9*n*(0.01/t)*0.5/p0/g);
printf("r=%lf",r);
}

回答3:

scanf("%f",t);改为scanf("%lf",&t);
printf("r=%f",r);改为printf("r=%lf",r); 试试