c语言中怎么保留一位小数,且小数点后是0或5

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c语言中怎么保留一位小数,且小数点后是0或5相关的知识,希望对你有一定的参考价值。

1、在c语言中一个数保留1位小数可以通过精度限定符来完成,精度限定符有一个点号后跟一个整数组成。如果要限定小数点后面一位的类型为0或者5,可以使用先乘取整再除的方法进行操作。

2、示例:

#include <stdio.h>
int main()

    dobule a = 1.23456;
    a=(int)a*2;
    printf("%.1f\\n", a/2);
    return 0;

/*
输出:1.0
*/


参考技术A 判断
先判断保留后的数的小数点后为0或者5
eg float a;
scanf(“%f”,&a);
if(a%100==5||a%100==0)
printf(%1.f);
保留的一位是输出的时候 %.1f本回答被提问者和网友采纳
参考技术B 你是想输出是保留,还是在计算过程中保留?
输出保留的话printf("%.1lf",);追问

输出的,比如:45.325,保留成45.5,往上去,如果是45.789就保留成46

参考技术C printf("%.1lf", long(x*2+0.5)/2.0); 参考技术D 。。。。。。。。。

JavaScript中如何保留一位小数;

比如说有一个值为;
var val=1.004566644858;
我想要的结果是直接取1.0作为值;

1、JavaScript中有toFixed函数保留小数位,用法是首先打开hbuilder编辑器,新建一个html文件,里面先写入一个button并在上方设置简单样式:

2、然后在按钮下方加入script标签,写入js代码。js中先获取button的dom属性并给它添加一个点击事件,然后定义变量val并用fixed函数处理小数位数保留一位小数,最后用alert语句弹出对话框显示处理后的数字:

3、最后打开浏览器,点击按钮即可弹出处理后的结果了:

参考技术A

思路:

1、通过toFixed方法进行保留小数

2、通过字符串截取,不过无法四舍五入

代码示例:

var val=1.004566644858;  
alert(val.toFixed(1));

 补充:

toFixed() 方法可把 Number 四舍五入为指定小数位数的数字。

语法

NumberObject.toFixed(num)

参数

描述

num    必需。规定小数的位数,是 0 ~ 20 之间的值,包括 0 和 20,有些实现可以支持更大的数值范围。如果省略了该参数,将用 0 代替。    

返回值

返回 NumberObject 的字符串表示,不采用指数计数法,小数点后有固定的 num 位数字。如果必要,该数字会被舍入,也可以用 0 补足,以便它达到指定的长度。如果 num 大于 le+21,则该方法只调用 NumberObject.toString(),返回采用指数计数法表示的字符串。

参考技术B var a = 9.39393;
a.toFixed(1)
参考技术C 当字符串来处理啊。
val=val.toString();
val = val.subString(0,val.charAt('.')+2)本回答被提问者采纳

以上是关于c语言中怎么保留一位小数,且小数点后是0或5的主要内容,如果未能解决你的问题,请参考以下文章

C语言中的保留两位小数四舍五入的问题

C语言编程求小数的最后一位

C语言 怎么取小数的最后一位

C语言中如何保留一位小数点

c中如何使输出的值小数点后最末位0舍去?

c语言中怎么保留小数2位