前端之家收集整理的这篇文章主要介绍了
c – Ceil功能:我们该如何实现?,
前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我知道C为我们提供了一个ceil
功能.对于实践,我想知道如何在C中实现ceil
函数.
方法的签名是
public static int ceil(float num)
请提供一些见解.
我想到一个简单的方法:将num转换成一个字符串,找到小数点的索引,检查小数部分是否大于0.如果是,返回num 1 else返回num.但是我想避免使用字符串转换
这是一个真正的实数的正数(这使用的事实是,转换为(int)截断为零):
int ceil(float num) {
int inum = (int)num;
if (num == (float)inum) {
return inum;
}
return inum + 1;
}
很容易将其扩展到负数.
你的问题要求一个函数返回int,但通常ceil()函数返回与它的参数相同的类型,所以没有范围的问题(即float ceil(float num)).例如,如果num为1e20,则上述功能将失败.
原文链接:https://www.f2er.com/c/114518.html