float sp = 36.51647
sp=( (float)( (int)( (sp+0.005)*100 ) ) )/100
eg: 保留小数点后第二位:
1.定义一个double型的变量。
2.先乘100。
3.加零点五。(此刻的小数点第三位加了零点五后,该进位和该舍掉 其实此刻为小数点第一位。)
4.强制转换: x=(int)x。
除法分为整除和精确除 例如a/b 当a,b同时为整数时,是整除,例3/5=0,5/3=1,14/5=2就是只要整数部分,而如果a,b两个有一个或者两个都是小数的话,就是精确除,和数学。
除法 c=b/a b=b/a等价b/=a 余数 c=b%a,也就是b整除a 的余数为c b=b%a等价b%=a。
除法比如a除以b 表示为:a/b 但是结果是取商 a除以b取余 a%b 结果是取余数。
可以在输出时,指定小数点后的有效位数,实现精确到若干位的效果。
要精确到小数点后若干位,则数据类型为浮点型,可能为单精度(float)或双精度(double)。
在C语言中,使用格式化输出函数printf来实现输出。
输出格式为
%.NF
1 %为格式化字符串的引导字符。
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)