C语言中double要输出几位小数?
1个回答
展开全部
C语言中double要输出几位小数?
C语言中double预设输出 6 位小数。
如果要控制输出小数位数,可以格式化输出。
printf("%.3lf ", d); "%.3lf" .3 则是输出 3 位小数
printf("%.4lf ", d); "%.4lf" .4 则是输出 4 位小数
c语言中想要让输出数字保留几位小数该怎么做?
举个例子,如果想要输出保留三位小数的双精度浮点数,则应该这样写:
printf("%.3lf",d);
其中的“.3”就是小数点后保留三位小数。
注意,3前面有个点哈!
C语言中float ,double, long double分别最多可支援几位小数点
float 单精度浮点,8个点。
double双精度浮点, 16个点。
long double长双精度浮点,32个点。
c语言中%g格式最多输出几位
%g用来输出实数,它根据数值的大小,自动选f格式(一般小数格式)或e格式(科学计数法)。选择标准为选择输出时占宽度较小的一种。且%g不输出无意义的0。
即%g是根据结果自动选择科学记数法还是一般的小数记数法。
比如如下程式码:
printf("%g\n", 0.00001234);
printf("%g\n", 0.0001234);
printf("%.2g\n", 123.45);
printf("%.2g\n", 23.45);
分别会输出:
1.234e-05
0.0001234
1.2e+02
23
对于指数小于-4或者大于给定精度的数值,按照%e的控制输出,否则按照%f的控制输出.
C语言中怎样控制输出小数按四舍五入输出7位小数
#include <stdio.h>int main(){ float a=3.14159889; printf ("%.7f",a);保留7位小数就用%.7f return 0;}
double p = 3.14159265;
long x = 0;
p = p*10000000 + 0.5;
x = (long)p;
p = x/1000000;
printf("%.7lf",p);
这样,你把这个小数,乘以10的7次方,然后对结果取整(也就是强制转化为整型),然后对这个取整后的整型 加上 0.5 ,再除以10的7次方,就搞定了.
如果你想四舍五入,比方说,想要3.14159,四舍五入取小数点后3位,
你可以将3.14159*1000,得到3141.59,然后再加上0.5,得到3142.09,然后再取整(强制转化为INT型),得到3142,然后再除以1000,就得到你想要的小数点后3位的四舍五入了,就是3.142.
如果不想要四舍五入,直接撷取,就不要加上0.5
C语言中想输出double和long double型用%什么?
1、%f 是输出 float 型变数;%f 是输出 double 型变数;%Lf 是输出 long double 型变数。
2、在C语言中,对于数值型别只有通过printf类函式输出这一种方式,比如printf, sprintf, fprintf等。这类函式输出时要求有格式符号,其中long double的格式符号为%Lf以下是一个简单的参考程式码,输出到标准输出装置。
#include <stdio.h>int main(){long double v = 1.23;printf("%Lf\n", v);采用%llf格式输出long double 型别return 0;}
关于long double, 需要说明的是,在原始的C标准中是没有这个型别的,C99中才添加了该型别。而在C99及后续的规范中,对于该型别规定的也并不详细,只是要求long double型别在精度上需要不少于double的精度。于是就出现了有的编译器不支援long double, 而支援的编译器在实现上也有所区别,目前常见的long double有占用8位元组,10位元组,12位元组和16位元组四种,但输出格式都是相同的%lf。 如果想知道使用的编译器是如何实现的,可以用printf("%d", sizeof(long double));输出long double占用的空间值。
c语言中怎么输出 long double型别
输出int , 用%d
输出float, 用%f
输出double,用 %lf
输出long int ,用%ld
long double在C语言中怎么读入和输出?
void main()
{
long double lf;
scanf("%lf", &lf);
printf("%lf\n", lf);
}
c语言中float小数点后能有几位?
float 型别总共只能表示7位有效数字,
如果需要非常准确的数字,请考虑使用 Decimal 资料型别
C语言中double预设输出 6 位小数。
如果要控制输出小数位数,可以格式化输出。
printf("%.3lf ", d); "%.3lf" .3 则是输出 3 位小数
printf("%.4lf ", d); "%.4lf" .4 则是输出 4 位小数
c语言中想要让输出数字保留几位小数该怎么做?
举个例子,如果想要输出保留三位小数的双精度浮点数,则应该这样写:
printf("%.3lf",d);
其中的“.3”就是小数点后保留三位小数。
注意,3前面有个点哈!
C语言中float ,double, long double分别最多可支援几位小数点
float 单精度浮点,8个点。
double双精度浮点, 16个点。
long double长双精度浮点,32个点。
c语言中%g格式最多输出几位
%g用来输出实数,它根据数值的大小,自动选f格式(一般小数格式)或e格式(科学计数法)。选择标准为选择输出时占宽度较小的一种。且%g不输出无意义的0。
即%g是根据结果自动选择科学记数法还是一般的小数记数法。
比如如下程式码:
printf("%g\n", 0.00001234);
printf("%g\n", 0.0001234);
printf("%.2g\n", 123.45);
printf("%.2g\n", 23.45);
分别会输出:
1.234e-05
0.0001234
1.2e+02
23
对于指数小于-4或者大于给定精度的数值,按照%e的控制输出,否则按照%f的控制输出.
C语言中怎样控制输出小数按四舍五入输出7位小数
#include <stdio.h>int main(){ float a=3.14159889; printf ("%.7f",a);保留7位小数就用%.7f return 0;}
double p = 3.14159265;
long x = 0;
p = p*10000000 + 0.5;
x = (long)p;
p = x/1000000;
printf("%.7lf",p);
这样,你把这个小数,乘以10的7次方,然后对结果取整(也就是强制转化为整型),然后对这个取整后的整型 加上 0.5 ,再除以10的7次方,就搞定了.
如果你想四舍五入,比方说,想要3.14159,四舍五入取小数点后3位,
你可以将3.14159*1000,得到3141.59,然后再加上0.5,得到3142.09,然后再取整(强制转化为INT型),得到3142,然后再除以1000,就得到你想要的小数点后3位的四舍五入了,就是3.142.
如果不想要四舍五入,直接撷取,就不要加上0.5
C语言中想输出double和long double型用%什么?
1、%f 是输出 float 型变数;%f 是输出 double 型变数;%Lf 是输出 long double 型变数。
2、在C语言中,对于数值型别只有通过printf类函式输出这一种方式,比如printf, sprintf, fprintf等。这类函式输出时要求有格式符号,其中long double的格式符号为%Lf以下是一个简单的参考程式码,输出到标准输出装置。
#include <stdio.h>int main(){long double v = 1.23;printf("%Lf\n", v);采用%llf格式输出long double 型别return 0;}
关于long double, 需要说明的是,在原始的C标准中是没有这个型别的,C99中才添加了该型别。而在C99及后续的规范中,对于该型别规定的也并不详细,只是要求long double型别在精度上需要不少于double的精度。于是就出现了有的编译器不支援long double, 而支援的编译器在实现上也有所区别,目前常见的long double有占用8位元组,10位元组,12位元组和16位元组四种,但输出格式都是相同的%lf。 如果想知道使用的编译器是如何实现的,可以用printf("%d", sizeof(long double));输出long double占用的空间值。
c语言中怎么输出 long double型别
输出int , 用%d
输出float, 用%f
输出double,用 %lf
输出long int ,用%ld
long double在C语言中怎么读入和输出?
void main()
{
long double lf;
scanf("%lf", &lf);
printf("%lf\n", lf);
}
c语言中float小数点后能有几位?
float 型别总共只能表示7位有效数字,
如果需要非常准确的数字,请考虑使用 Decimal 资料型别
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询