亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

以下這個問題是關于求教類似INT函數的向上取整函數的!

以下這個問題是關于求教類似INT函數的向上取整函數的!

回首憶惘然 2021-12-30 15:11:35
請問什么是向上取整?我的理解是通過向上取整函數返回的值是大于或等于x的最小整數。比如6.0它向上取整仍是6,而不是變成7?這樣理解有錯嗎?另一個問題:需采用什么函數,比如寫出INT(x)就知道是向下取整我想要的是類似這種函數,只有一個參數在網上看到這種int(A1+1)表示向上取整的,但是如果A1=6,這樣函數出來的結果不是變成7了?
查看完整描述

3 回答

?
撒科打諢

TA貢獻1934條經驗 獲得超2個贊

1.你的理解是對的。
2.int(x)不一定是向下取整,int(-1.5)=-1,但是[-1.5]應該等于-2,這才叫向下取整。
3.int(A1+1)這種形式是不對的。
4.很多語言里都有向下取整函數floor()和向上取整函數ceil(),如果是C語言的話要注意類型轉換,一下是函數原型:
#include <math.h>
double floor(double x);
double ceil(double x);
float floorf(float x);
float ceilf(float x);

查看完整回答
反對 回復 2022-01-03
?
青春有我

TA貢獻1784條經驗 獲得超8個贊

C語言有以下幾種取整方法:
1、直接賦值給整數變量。如:
int i = 2.5; 或 i = (int) 2.5;
這種方法采用的是舍去小數部分
2、C/C++中的整數除法運算符“/”本身就有取整功能(int / int),但是整數除法對負數的取整結果和使用的C編譯器有關。
3、使用floor函數。floor(x)返回的是小于或等于x的最大整數。如:
floor(2.5) = 2
floor(-2.5) = -3
4、使用ceil函數。ceil(x)返回的是大于x的最小整數。如:
ceil(2.5) = 3
ceil(-2.5) = -2
floor()是向負無窮大舍入,floor(-2.5) = -3;ceil()是向正無窮大舍入,ceil(-2.5) = -2。



查看完整回答
反對 回復 2022-01-03
?
瀟湘沐

TA貢獻1816條經驗 獲得超6個贊


int i = 2.1; 或 i = (int) 2.1;

i= 2;

需要向上取整:
int i = (int)(2.1 + 0.9);
i= 3

int i = (int)(2.9 + 0.9);
i= 3;

需要四舍五入
int i = (int)(2.1 + 0.5);
i= 2;
int i = (int)(2.5 + 0.5);
i= 3;

如果負數用減法計算。

不知道我理解的對不對....



查看完整回答
反對 回復 2022-01-03
  • 3 回答
  • 0 關注
  • 209 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號