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记得点个赞支持一下哦~~

相关推荐
轻口味12 分钟前
命名空间与模块化概述
开发语言·前端·javascript
吉大一菜鸡15 分钟前
FPGA学习(基于小梅哥Xilinx FPGA)学习笔记
笔记·学习·fpga开发
晓纪同学1 小时前
QT-简单视觉框架代码
开发语言·qt
威桑1 小时前
Qt SizePolicy详解:minimum 与 minimumExpanding 的区别
开发语言·qt·扩张策略
飞飞-躺着更舒服1 小时前
【QT】实现电子飞行显示器(简易版)
开发语言·qt
明月看潮生1 小时前
青少年编程与数学 02-004 Go语言Web编程 16课题、并发编程
开发语言·青少年编程·并发编程·编程与数学·goweb
明月看潮生1 小时前
青少年编程与数学 02-004 Go语言Web编程 17课题、静态文件
开发语言·青少年编程·编程与数学·goweb
Java Fans1 小时前
C# 中串口读取问题及解决方案
开发语言·c#
盛派网络小助手2 小时前
微信 SDK 更新 Sample,NCF 文档和模板更新,更多更新日志,欢迎解锁
开发语言·人工智能·后端·架构·c#
Chinese Red Guest2 小时前
python
开发语言·python·pygame