C语言-牛客-实现四舍五入

欢迎来到Harper.Lee 的学习小世界!

博主主页传送门:Harper.Lee的博客主页

想要一起进步的uu欢迎来后台找我哦!

本篇博客总结C语言刷题的相关笔记~~~~

#牛客--实现四舍五入

题目描述:随机输入浮点数,输出四舍五入后的整数。

法一:使用库函数round

在C++中,round()函数是标准库中的一个函数,用于对浮点数进行四舍五入。round()函数将返回最接近参数x的整数。如果x正好在两个整数中间,则向远离零的整数方向取整。

函数原型:

cpp 复制代码
double round(double x);

代码如下:

c 复制代码
int main()//法一
{
    //使用四舍五入函数round()
    float d1 = 0.0;
    scanf("%f", &d1);
    int d = round(d1);
    printf("%d3", d);
}

法二:利用取整规则

C语言直接取整是不能实现四舍五入的,但我们可以利用此法来间接实现四舍五入

代码如下:

c 复制代码
int main()//法二:利用取整规则
{
	double f;
	scanf("%lf", &f);
	if (f > 0.0)//正数的情况
		printf("四舍五入后的结果:%d\n", (int)(f + 0.5));
	else//负数的情况
		printf("%d", (int)(f - 0.5));
	return 0;
}
//总结:将一位小数四舍五入的方法:(int)(浮点数+0.5);

总结:将一位小数四舍五入的方法:(int)(浮点数+0.5)

法三:<<左移操作符

**cin输入流赋值给d,d+/-0.5后强制类型转换为int类型,得到的解释四舍五入后的结果。 **

代码如下(cpp):

cpp 复制代码
int main() {
    int a, b;
    double d;
    cin >> d;//cin是输入流,从输入流里面拿到数据,赋值给d(c++的语法)
    // write your code here......
    if (d > 0)
        cout << (int)(d + 0.5);
    else
        cout << (int)(d - 0.5);
    return 0;
}

游戏编程常用方法:正数浮点数+0.5(负数浮点数-0.5后)后强制类型转换相当于四舍五入。

法四:利用占位符

c 复制代码
//法四:利用占位符
int main() {
    float f;
    scanf("%f", &f);
    printf("%.f", f);
    return 0;
}

喜欢的uu记得点个赞支持一下哦~~

相关推荐
像是套了虚弱散2 分钟前
DevEco Studio与Web联合开发:打造鸿蒙混合应用的全景指南
开发语言·前端·华为·harmonyos·鸿蒙
旭意3 分钟前
C++蓝桥杯之结构体10.15
开发语言·c++
新子y41 分钟前
【小白笔记】区分类方法/实例方法和静态函数/命名空间函数
笔记·分类
麦麦鸡腿堡2 小时前
Java的单例设计模式-饿汉式
java·开发语言·设计模式
简单点了2 小时前
go前后端项目的启动 、打包和部署
开发语言·后端·golang
傻童:CPU2 小时前
C语言需要掌握的基础知识点之前缀和
java·c语言·算法
梁辰兴2 小时前
企业培训笔记:外卖平台后端--套餐管理模块--新建套餐信息
笔记·vue·mybatis·springboot·外卖管理系统
degen_2 小时前
第一次进入 PEICORE 流程
c语言·笔记
YJlio2 小时前
Process Monitor 学习笔记(5.24):工具栏参考与高效快捷键指南
笔记·学习·php
爱吃山竹的大肚肚2 小时前
@Valid校验 -(Spring 默认不支持直接校验 List<@Valid Entity>,需用包装类或手动校验。)
java·开发语言