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

相关推荐
我不会编程55514 小时前
Python Cookbook-5.1 对字典排序
开发语言·数据结构·python
李少兄14 小时前
Unirest:优雅的Java HTTP客户端库
java·开发语言·http
无名之逆15 小时前
Rust 开发提效神器:lombok-macros 宏库
服务器·开发语言·前端·数据库·后端·python·rust
似水এ᭄往昔15 小时前
【C语言】文件操作
c语言·开发语言
啊喜拔牙15 小时前
1. hadoop 集群的常用命令
java·大数据·开发语言·python·scala
xixixin_15 小时前
为什么 js 对象中引用本地图片需要写 require 或 import
开发语言·前端·javascript
W_chuanqi16 小时前
安装 Microsoft Visual C++ Build Tools
开发语言·c++·microsoft
anlogic16 小时前
Java基础 4.3
java·开发语言
蒙奇D索大16 小时前
【数据结构】第六章启航:图论入门——从零掌握有向图、无向图与简单图
c语言·数据结构·考研·改行学it
A旧城以西16 小时前
数据结构(JAVA)单向,双向链表
java·开发语言·数据结构·学习·链表·intellij-idea·idea