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

相关推荐
食品一少年几秒前
DAY4-10:DevEco Studio 使用 HarmonyOS 模拟器运行应用全流程笔记
笔记·华为·harmonyos
星释1 分钟前
Rust 练习册 108:深入探索过程宏的奥秘
开发语言·后端·rust
CoderYanger3 分钟前
动态规划算法-简单多状态dp问题:11.按摩师
开发语言·算法·leetcode·职场和发展·动态规划·1024程序员节
工程师平哥3 分钟前
ARCH-04 BSW服务层
笔记·嵌入式硬件·mcu·编辑器
Aurorar0rua4 分钟前
C Primer Plus Notes 12
c语言·开发语言
hssfscv15 分钟前
Java学习笔记——拼图小游戏
java·笔记·学习
CoderYanger15 分钟前
动态规划算法-路径问题:10.地下城游戏
开发语言·算法·leetcode·游戏·职场和发展·动态规划·1024程序员节
qq_2130594315 分钟前
CKA认证笔记(1.28版本)
笔记·docker·kubernetes
liu****16 分钟前
11.字符函数和字符串函数(二)
c语言·开发语言·数据结构·c++·算法
@小白鸽17 分钟前
1.2.1创建型设计模式
开发语言·设计模式