1. c语言 去掉小数点后面的数
有两种方法:
使用函数:
#include<stdio.h>
void main()
{ double x,temp; int a; scanf("%lf",&x);
temp=x; a=int(temp);
while(a!=temp
{ temp=temp*10; a=int(temp);
} printf("%d ",a); }
2.使用强制转换命令:(int)f;
注意:在转换的时候,前面的转换型一定要打括号,否则不起作用。
2. c中如何使输出的值小数点后最末位0舍去
如果你仅仅是要最后一个0去掉,很麻烦。不是的话,就用g格式。
g格式:自动选f格式或e格式中较短的一种输出,且不输出无意义的零。
printf("%g\n",a);
仅仅要去掉最后一个0,方法楼上有代码了。麻烦 - -
3. 为什么c语言编程float算出来有很多0
浮点型有效位数是六位,你打印的时候就会精确到小数点后的6位,要用%.2f 格式控制输出,
%.2f 就表示保留2位小数,%.3f 就表示保留3位小数 你试一下。
4. C语言,将double数据输出时,如何去掉小数位多余的0
double a = 1.001;
printf("%lf",a);//会输出1.001000,怎样才能输出1.001
通过在%与lf之间加上.d(此处的d为十进制正整数)来控制输出小数的位数,以此来控制输出数据的精度,
比如:%.3lf表示输出的数据有3位小数
%.5lf表示输出的数据有5位小数
%lf默认输出6位小数 ,所以本来a=1.001,结果输出1.001000
5. C语言用%f输出浮点数,想省略数字末尾的0,该怎么办 比如输出的是1.200000和1.340000,想变成1.2和1.34
%g是去掉小数点后多余的0的 。比如:float f=2.10000; printf("%g\n",f);则显示的是2.1, 输出流自动把后面多余的0去掉
6. C语言编程中怎么自动去掉浮点数小数点后没用的0。
#include<stdio.h>
int main()
{
float a=3.123000;
printf("%g ",a);//自动省略后面无意义的0
return 0;
}
(6)c语言怎么去掉浮点数后面的零扩展阅读
C语言浮点数
浮点数的值等于尾数乘以 2^x。读者应该注意,上图是二进制分数,因此 0.1表示 1/2。为了方便理解,我们可以将其与十进制的小数对应起来:十进制的 0.1 等于 1*10^-1,所以二进制的 0.1 等于1*2^-1,也即 1/2。
“尾数+指数”模式存储浮点数可能有一点问题,例如:2x10^-1=0.2x10^0=0.02x10^1,依此类推。同样一个数字可能有多种“尾数+指数”的表示方法,而同时兼顾多种表示方法势必会造成巨大的浪费。
7. 用c语言浮点输出时,如何让小数点后没用的0不显示。
4个字节是32位,比如32个1
七位有效就是只记录小数点后的六位,剩下的就不精确了
比如剩下的全用0代替了
,显示默认只有六位,可以控制!
8. 输出浮点数时不要后边多余的0
printf("%.1f",3.500000);
9. 如何使得C程序里面printf函数对于浮点数不显示后面的一大串0
printf("%.2f",1.55000); // %.2f就是2位小数的意思 %.3f就是3位....
10. 用c语言浮点输出时,如何让小数点后没用的0不显示。
用%g格式符就可以了
例如:float f=3.14;printf("%g",f);