【C语言】取整函数ceil()用法
·
ceil功能:
返回大于等于表达式的最小整数。
ceil--数学函数,同样要加数学头文件#include<math.h>
ceil返回大于等于表达式的最小整数,例如:float a=4.5 那么int ceil(a)=5
ceil函数和float强制转换为int类型的区别:
ceil函数计算时与四舍五入无关,这和浮点型强制转换为整型是相同的;和float强制转换为int类型不同的是:ceil取整返回的是大于等于表达式的最小整数,而float强制转换int取整返回的是小于等于表达式的最大整数
例如:输入4.6,分别返回的是5和4
举例说明
1.ceil函数可用于快递更具重量计算运费等小数取整的运算。例如
快递费用计算:
#include<stdio.h>
#include<math.h>
int main(void)
{
int q,n;
float t;
scanf("%d,%f",&q,&t);
if(q==0)
printf("Price: %.2f\n",10+3.0*ceil(t-1));
else if(q==1)
printf("Price: %.2f\n",10+4.0*ceil(t-1));
else if(q==2)
printf("Price: %.2f\n",15+5.0*ceil(t-1));
else if(q==3)
printf("Price: %.2f\n",15+6.5*ceil(t-1));
else if(q==4)
printf("Price: %.2f\n",15+10.0*ceil(t-1));
else
{
printf("Error in Area\n");
printf("Price: 0.00\n");
}
return 0;
}
利用ceil函数很轻松地解决了小数化整的问题!!!
2.上下取整
//上下取整
#include<stdio.h>
#include<math.h>
int main()
{
double n;
int x, y;
scanf("%lf", &n);//输入6.4的话
x = ceil(n - 1);//输出6
y = ceil(n);//输出7
printf("%d %d\n", x, y);//与四舍五入无关
return 0;
}
更多推荐
已为社区贡献3条内容
所有评论(0)