bycj.net
当前位置:首页 >> C语言怎样舍弃小数点后面指定位数以后的数 >>

C语言怎样舍弃小数点后面指定位数以后的数

#include int main(){ double m = 1.784; printf( "%.1lf\n",m);}加一个.就可以了.再看看别人怎么说的.

可以在输出时,指定小数点后的有效位数,实现精确到若干位的效果.要精确到小数点后若干位,则数据类型为浮点型,可能为单精度(float)或双精度(double).在C语言中,使用格式化输出函数printf来实现输出.输出格式为%.NF1 %为格式化字符串的引导字符.2 .N表示指定显示N位小数.3 F为类型字符,对于float, F值为f, 对于double,F值为lf.举例:1 要输出float a=1.23234; 保留3位小数的写法为:printf("%.3f",a);2 输出double b=123.345232; 保留4为小数,写法为:printf("%.4lf",b);

1、正数x四舍五入的技巧:doublex; x=(int)(x+0.5);2、举例:若正数要依舍去法精确到小数点后第二位;例如6.2367>(int)(623.67)/100.0=623/100.0=6.23 doublex; x=(int)(x*100)/100.0;//注意是除以100.0;3、举例:若正数要四舍五入精确到小数

您好,我是软件之家的♂北极熊熊,很高兴为您解答. ================================================================================== 代码如下: #include void main() { double x,temp; int a; scanf("%lf",&x); temp=x; a=

f=123.123 使用强制转换命令:(int)f; 注意:在转换的时候,前面的转换型一定要打括号,否则不起作用.

printf("%.4f \n",a );//保留4位,.3f 保留3位.如要取他们的值:(3.1415926*10)%10=1(十分位)(3.1415926*100)%10=4(百分位).

printf("%.nd");n=1,2,3,其中n就是你需要设置的输出的小数点后的位数

一.%nf 即输出的数字占n位 当原数字位数大于n时原样输出,原数字位数小于n时输出数字左端补上空格,比如原数字为a=1.23456;n为4时输出为1.23456,n为9时输出为(空格空格1.23456) 二.%n.mf 即输出总共占n位其中有m位小数 如a=1.23456 用%4.2f输出为1.23如果用%5,1f输出为123.4即长度为5小数为1!这里也有当原数字长度小于n时左端补空格这个规则!还有就是当n前面有个负号时即%-nf或%-n.mf时就右端补空格!

可以利用C语言的强制转换规则.C语言规定,当浮点数强制转换为整型类型时,只保留整数部分.所以对于浮点数,比如float类型a, 执行(int)a后的值就是整数部分.这样当执行a-(int)a时,得到的就是小数部分的值了.如果该功能经常使用,那么可以定义一个带参数的宏#define DECIMAL(X) (x-(int)x) 这样执行DECIMAL(a)得到的值就是t的小数部分.

printf("%.2lf",0.123456);只输出小数后2位;printf("%6.2lf",0.123456);只输出小数后2位;这样可以对齐,保持6位数的位置

网站首页 | 网站地图
All rights reserved Powered by www.bycj.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com