c語言中運算子是取整運算子嗎,C語言中「 」運算子是取整運算子嗎?

時間 2021-09-02 02:40:47

1樓:終極至尊粉

printf("%f,%f

",10.0/3,-10.0/3);}雙目運算具有左結合性。

參與運算量均為整型時, 結果也為整型,捨去小數。如果運算量中有一個是實型,則結果為雙精度實型。 printf("%d,%d

",10/3,-10/3);

printf("%f,%f

",10.0/3,-10.0/3);

c語言有以下幾種取整方法:

1、直接賦值給整數變數。如:

int i = 2.5; 或 i = (int) 2.5;

這種方法採用的是捨去小數部分,可以用於你的問題。

2、c/c++中的整數除法運算子"/"本身就有取整功能(int / int),而下面介紹的取整函式返回值是double。整數除法對正數的取整是捨去小數部分,但是整數除法對負數的取整結果和使用的c編譯器有關。

3、使用floor函式。floor(x)返回的是x的整數部分。如:

floor(2.5) = 2

floor(-2.5) = -3

4、使用ceil函式。ceil(x)返回的是不大於x的最小整數。如:

ceil(2.5) = 2

floor和ceil對於正數沒有區別,但是對於負數結果不同。floor()是向負無窮大舍入,floor(-2.5) = -3;ceil()是向正無窮大舍入,ceil(-2.

5) = -2。

2樓:昆吾語夢

0.0/3,-10.0/3);}雙目運算具有左結合性。參與運算量均為整型時, 結果也為整型,捨去小數。如果運算量中有一個是實型,則結果為雙精度實型

c語言中取整運算子是什麼

3樓:匿名使用者

如果你說的是簡單的截尾的話,就用強制轉換(int)如果你想實現四捨五入的話,就要一點點計算。

比如變數a裡面有一個浮點數,要將它四捨五入的話可以這樣:

(int)(a+0.5)

4樓:常龍

用強制轉換呀,將雙精度的轉換為整型的

5樓:匿名使用者

取整運算就在數前面加(int)就行了,強制轉換。

c語言中取整是怎麼取

6樓:一白二黑

比如是定義變數float a=2.4,b=2.6,目的是使的a=2,b=3

用int c=int(a+0.5);

int d=int(b+0.5);

c中的取整都會把尾巴去掉

對於保留位數要求有模擬的用法 ,例如使 double a=3.1415926;

我想使a=3.14,保留兩位,可以用 a=a+0.005int b=a*100;

a=(double)b/100;

7樓:__與非

可以使用ceil和floor函式(注意包含標頭檔案math.h ),如果需要返回整形可以使用強制型別轉換。

函式名: ceil

用 法: double ceil(double x);

功 能: 返回大於或者等於指定表示式的最小整數標頭檔案:math.h

返回資料型別:double

函式名: floor

用 法: double floor(double x);

功 能: 返回大於或者等於指定表示式的最小整數標頭檔案:math.h

返回資料型別:double

8樓:草帽小子

ceil和floor

floor(x),有時候也寫做floor(x),其功能是「下取整」,或者說「向下舍入」,即取不大於x的最大整數(與「四捨五入」不同,下取整是直接去掉小數部分),例如:x=3.14,floor(x)=3 y=9.

99999,floor(y)=9

ceil是向上取整,例如:x=3.14,ceil(x)=4

9樓:匿名使用者

向下?interger = (unsigned long )floatnum;

向上 interger =( (unsigned long )floatnum +1 );

c語言中有 ^ 這個運算子嗎?

10樓:墨汁諾

有,但不太常見。

按位異或運算子「^」是雙目運算子。其功能是參與運算的兩數各對應的二進位相異或,當兩對應的二進位相異時,結果為1。還比如 m=9(二進位制1001),n=12(二進位制1100),那麼 m ^ n的結果是5(二進位制0101)。

整數在計算機中用二進位制的位來表示,c語言提供一些運算子可以直接操作整數中的位,稱為位運算,這些運算子的運算元都必須是整型的。按位異或運算子「^」是雙目運算子。 其功能是參與運算的兩數各對應的二進位相異或,當兩對應的二進位相異時,結果為1。

分類和級別

c語言的運算子主要用於構成表示式,同一個符號在不同的表示式中,其作用並不一致。下面按計算的優先順序,分別說明不同作用的表示式。需要特別指出,在c語言標準中,並沒有結合性的說法。

相同優先順序運算子,從左至右依次運算。注意字尾運算優先順序高於字首。因此++i++應解釋為++(i++)。

而與或非的運算優先順序都不一樣,因此a && b || b && c解釋為(a && b) || (b && c)

合理使用優先順序可以極大簡化表示式。

11樓:布天歐陽典

太用其運算二進位制按位異或比

a=9(二進位制1001)b=12(二進位制1100)a^b結5(二進位制0101)

般電腦文字用^表示某數幾c語音沒表示幾運算子

c語言中,有哪些算術運算子?

12樓:哇哎西西

c語言中算術運算子有以下這些

例項:#include

int main()

當上面的**被編譯和執行時,它會產生下列結果:

line 1 - c 的值是 31

line 2 - c 的值是 11

line 3 - c 的值是 210

line 4 - c 的值是 2

line 5 - c 的值是 1

line 6 - c 的值是 21

line 7 - c 的值是 22

擴充套件資料:

c語言中,除了算數運算子,還提供以下運算子:

1、關係運算子

2、邏輯運算子

3、位運算子

4、賦值運算子

5、雜項運算子

運算子優先順序:

c語言中,運算子的運算優先順序共分為15 級。1 級最高,15 級最低。

在表示式中,優先順序較高的先於優先順序較低的進行運算。而在一個運算量兩側的運算子 優先順序相同時,則按運算子的結合性所規定的結合方向處理。

運算子結合性:

c語言中各運算子的結合性分為兩種,即左結合性(自左至右)和右結合性(自右至左)。例如算術運算子的結合性是自左至右,即先左後右。

如有表示式x-y+z 則y 應先與「-」號結合,執行x-y 運算,然後再執行+z 的運算。這種自左至右的結合 方向就稱為「左結合性」。而自右至左的結合方向稱為「右結合性」。

最典型的右結合 性運算子是賦值運算子。如x=y=z,由於「=」的右結合性,應先執行y=z 再執行x=(y=z)運算。c語言運算子中有不少為右結合性,應注意區別,以避免理解錯誤。

優先順序從上到下依次遞減,最上面具有最高的優先順序,逗號操作符具有最低的優先順序。

所有的優先順序中,只有三個優先順序是從右至左結合的,它們是單目運算子、條件運算子、賦值運算子。其它的都是從左至右結合。

具有最高優先順序的其實並不算是真正的運算子,它們算是一類特殊的操作。()是與函式相關,與陣列相關,而->及.是取結構成員。

其次是單目運算子,所有的單目運算子具有相同的優先順序,因此在我認為的 真正的運算子中它們具有最高的優先順序,又由於它們都是從右至左結合的,因此*p++與*(p++)等效是毫無疑問的。

13樓:之何勿思

七個,如下:

+   -   *    /    %     ++      --

雙目運算子+和-具有相同的優先順序,它們的優先順序比運算子*、/和%的優先順序低,而運算子*、/和%的優先順序又比單目運算子 +(正號) 和 -(負號) 的優先順序低。

14樓:晟睿教育

基本表示式 1級

基本表示式(primary expressions),主要是用於運算子之間,做為運算數。

標識,常量,字串文字量,優先順序提升表示式最優先執行。

優先順序提升表示式是指圓括號包圍的表示式,如「( expression )」

字尾表示式 2級

postfix-expression [ expression ],陣列下標運算。

postfix-expression ( argument-expression-list),函式呼叫,括號內的引數可選。

postfix-expression . identifier,成員訪問,

postfix-expression -> identifier,成員訪問,->號之前應為指標。

postfix-expression ++,字尾自增

postfix-expression --,字尾自減

int unamed = ; //unamed表示一個不可見的變數名。

int* a = unamed;

單目/一元運算 3級

++ unary-expression 字首自增

-- unary-expression 字首自減

unary-operator cast-expression 單目轉型表式式, 包括 取地址& ,提領 * , 正號+ ,負號- 位反~ 邏輯否!。

sizeof unary-expression 求型別長度,對表示式求型別長度

sizeof ( type-name ) 求型別長度

強制型別表示式 4級

( type-name ) cast-expression,強制表示式成為type-name指定的型別。

乘法表示式 5級

「 * 」 乘法運算子;「 / 」除法運算子;「 % 」 取餘運算子。

加法運算子 6級

「 + 」加法運算子;「 - 」減法運算子。

移位運算子 7級

<< 左移運算子;>> 右移運算子。

關係運算子 8級

<、<=、>、>=關係運算子。

相等運算子 9級

「 == 」等於運算子;「 != 」不等於運算子。

位與運算子 10級

「 & 」按位與運算子

位異或運算子 11級

「 ∧ 」按位異或運算子(bitwise exclusive or operator)。

位或運算子 12 級

「 | 」按位或運算子(bitwise inclusive or operator)。

邏輯與運算子 13級

「&&」邏輯與運算子。

邏輯或運算子 14 級

「 || 」邏輯或運算子。

三元條件運算子 15級

? :條件運算子。

賦值運算子 16 級

=、 +=、 -=、 *=、 /=、 %=、 &=、 ^=、 |=、 <<=、 >>=賦值運算子。

逗號運算子 17級

「,」逗號運算子。

c語言關係運算子,c語言中關係運算子和自加自減運算優先順序哪個高

蘇嘉愛娛樂 是右移運算子,移位運算子的一種 程式設計中,位操作運算子的一種。c語言中位移位運算子是將資料看成二進位制數,對其進行向左或向右移動若干位的運算。位移位運算子分為左移和右移兩種,均為雙目運算子。第一運算物件是移位物件,第二個運算物件是所移的二進位制位數。位移位運算子的運算物件 運算規則與結...

c語言邏輯運算子,C語言中邏輯運算子的規則是什麼

伊婷婷 c語言中的邏輯運算子就三種,與 或 非,它們的優先極順序為非,與,或。它們含義如下,當操做數為真時,結果為假,反之也成立,並且它的優先極也最高,因為只有它是單目運算子,只有當兩個操做數都為真時,結果才為真,否則為假。只有當兩個操做數都為假時,結果才為假,否則結果為真。除了這些,邏輯運算子還有...

c語言算術運算子是哪些,C語言算術運算子是哪些

風雷九州 七個 加減乘除不用我說了吧 求餘,就是算除法,值是他的餘數 這個是除法,但是有一點注意,兩邊運算元全為整數時,值是取整的。是自加,比如說i 就是i的值自動加1,規則是i 是鮮賦值再自加,i是先自加再賦值。舉個例子a i 這個是先把i的值賦給a,然後i再自加。a i是i先自加,然後把自加之後...