c语言如何保留三位小数
假如你有一个float型变量a,其值为1.23456,而你只想保留三位小数,也就是希望得到1.235,只需要令:
a = (int)(1000.0 * a + 0.5) / 1000.0
即可.如果要保留四位小数,就把1000都换成10000,依次类推.
printf("%7.3f",100/3.0);表示结果占七位,小数部分占3位,这样就可以了,并且小数点后第三位是四舍五入的结果。
例如:
C语言中浮点数输出精确到两位小数的语句如下:
double a=2.0;printf ("%.2f", a);//其中.2指明两位小数
说明:如%9.2f
表示输出场宽为9的浮点数, 其中小数位为2, 整数位为6,如果9缺省则场宽为该数实际位数
规定符
%d 十进制有符号整数
%x, %X 无符号以十六进制表示的整数
%o 无符号以八进制表示的整数
%g 把输出的值按照%e或者%f类型中输出长度较小的方式输出
%p 输出地址符
%lu 32位无符号整数
%llu 64位无符号整数
扩展:
如果是实数的话,就不是这样了,机器有两种办法表示实数,一种是定点,就是小数点位置是固定的,一种是浮点,就是小数点位置不固定,计算方法也比较麻烦,通常会比整数运算代价大很多。
FPU->Floating Point Unit,浮点运算部件。
BCD->Binary Coded Decimal 压缩的二进制数,是用4个位来表示数字0~9,一个byte表示两个十进制数,比如正常二进制数1001111表示79,而BCD中用 0111 1001 来表示79。
科学计数法:a×10的n次幂的形式。将一个数字表示成 (a×10的n次幂的形式),其中1≤|a|<10,n表示整数,这种记数方法叫科学记数法。
c语言除法怎么保留小数
c语言除法保留小数的方法是:通过设置数值的类型为浮点型来实现,当浮点型除以一个整型时它的结果会用浮点型来表示,或者浮点型除以一个浮点型结果依然是浮点型,即保留了小数。
以上就是c语言除法保留小数的方法。希望能够帮助大家。
c语言float和double保留几位小数
c语言float和double保留2位小数。
float和double的范围是由指数的位数来决定的。
float的指数位有8位,而double的指数位有11位。
分布如下:float:1bit(符号位)
8bits(指数位)
23bits(尾数位)
double:1bit(符号位)
11bits(指数位)
52bits(尾数位)
c语言中如何使输出结果保留四位小数
printf("%.4lf",value);
c语言输出保留小数的具体方法:
1.printf()函数默认保留6位小数
2.printf("%.nlf",value); //表示保留n位小数
3.printf("%.*f",n,value); // n表示小数的位数,value表示结果
4.printf("%m.nlf",value); //表示控制宽度为m,保留n为小数,靠右对齐
printf("%-m.nlf",value); //表示控制宽度为m,保留n为小数,靠左对齐
//当控制宽度小于数值的位数时,将以实际数值宽度为准
5.printf("%.lf",value); //表示保留整数