C語言運算子C語言運算子是怎麼運算的

2021-03-09 15:48:51 字數 5830 閱讀 2554

1樓:百度文庫精選

內容來自使用者:wjian178

e68a84e8a2ad62616964757a686964616f31333433646432 1級優先順序(左結合)

() 圓括號;下標運算子;->指向結構體成員運算子;. 結構體成員運算子。

2級優先順序(右結合)

!邏輯非運算子;~按位取反運算子;++字首增量運算子;--字首減量運算子;+正號運算子;-負號運算子;(型別)型別轉換運算子;*指標運算子;&位址運算子;sizeof長度運算子。

3級優先順序(左結合)

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

4級優先順序(左結合)

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

5級優先順序(左結合)

<>右移運算子。

6級優先順序(左結合)

<、、>=關係運算子。

7級優先順序(左結合)

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

8級優先順序(左結合)

&按位與運算子。

9級優先順序(左結合)

^按位異或運算子。

10級優先順序(左結合)

|按位或運算子。

11級優先順序(左結合)

&&邏輯與運算子。

12級優先順序(左結合)

||邏輯或運算子。

13級優先順序(右結合)

? :條件運算子。

14級優先順序(右結合)

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

15級優先順序(左結合)

,逗號運算子。  運算。c語言運算子中有不少為右結合性,應注意區別,以避免理解錯誤。運算子優先順序等級口訣及注釋運算子應用舉例

2樓:聽不清啊

~和《都是位運算子,~是按位取反運算子,《是左移運算子。以i=3為例,~(1<

先計算1<<3(值為00001000),i再變為4

再按位取反,得11110111,將其賦值給p1

c語言 運算子%是怎麼運算的

3樓:噠噠噠噠蝸牛啊

c語言中%的作用:%作為運算子是用來取餘的

運算子(operator)是可以對資料進行相應操作的符號。如對資料求和操作,用加法運算子 '+',求積操作使用乘法運算子 '*' ,求餘數用運算子'%'。等等

例如 :

一、25%4=1 ;25除以4商6餘數是1

二、33%5=3  ;33除以5商6餘數是3

擴充套件資料:

c語言常用的運算子

1. 算術運算子

用於各類數值運算。包括加(+)、減(-)、乘(*)、除(/)、求餘(或稱模運算,%)、自增(++)、自減(--)共七種。

2.關係運算子

用於比較運算。包括大於(>)、小於(<)、等於(==)、 大於等於(>=)、小於等於(<=)和不等於(!=)六種。

3.邏輯運算子

用於邏輯運算。包括與(&&)、或(||)、非(!)三種。

4.位操作運算子

參與運算的量,按二進位制位進行運算。包括位與(&)、位或(|)、位非(~)、位異或(^)、左移(<<)、右移(>>)六種。

5.賦值運算子

用於賦值運算,分為簡單賦值(=)、復合算術賦值(+=,-=,*=,/=,%=)和復合位運算賦值(&=,|=,^=,>>=,<<=)三類共十一種。

6.條件運算子

這是乙個三目運算子,用於條件求值(?:)。

7.逗號運算子

用於把若干表示式組合成乙個表示式(,)。

8.指標運算子

用於取內容(*)和取位址(&)二種運算。

9.求位元組數運算子

用於計算資料型別所佔的位元組數(sizeof)。

10.特殊運算子

有括號(),下標,成員(→,.)等幾種。

4樓:唐寒夜

1、%是求餘運算子,也叫模除運算子,用於求餘數。

2、%要求兩個運算元均為整數(或可以隱式轉換成整數的型別),%是求餘數的運算,例如7%2=1。

3、舉例:

#include

void main()

執行結果如下圖:

4、%是運算子的一種其他運算子:

(1)算術運算子:* - + / %

(2)關係運算子: > < == != >= <=(3)邏輯運算子:! && ||

(4)位運算子:<< >> ~ | ^ &1、%d整型輸出,%ld長整型輸出,

2、%o以八進位制數形式輸出整數,

3、%x以十六進製制數形式輸出整數,或輸出字串的位址。

4、%u以十進位制數輸出unsigned型資料(無符號數)。注意:%d與%u有無符號的數值範圍,也就是極限的值,不然數值列印出來會有誤。

5、%c用來輸出乙個字元,

6、%s用來輸出乙個字串,

7、%f用來輸出實數,以小數形式輸出,預設情況下保留小數點6位。

8、%.100f來輸出實數,保留小數點100位。

9、%e以指數形式輸出實數,

10、%g根據大小自動選f格式或e格式,且不輸出無意義的零。

5樓:候鳥飛

%是除法取餘運算。適用於整數與整數運算。否則,不同的編譯器會得不同結果。

'%'為取餘運算子,用於把它前面的整數值或表示式除以其後面的整數值或表示式,結果為不能被後面的整數或表示式整除的最小整數,它後面的數值應該為大於1的正整數。

作為雙目運算子,左右運算元可以是數值,也可以是表示式,但是左右兩邊的運算元必須是整數。

擴充套件資料:c語言的運算子:

1.算術運算子:* - + / %

2.關係運算子: > < == != >= <=3.邏輯運算子:! && ||

4.位運算子:<< >> ~ | ^ &

5.賦值運算子:=及擴充套件賦值運算子

6.條件運算子:?:

7.逗號運算子:,

8.指標運算子:*和&

9.求位元組數運算子:sizeof

10.強制型別轉換運算子:(型別)

11.分量運算子:. ->

12.下標運算子:[ ]

13.其他:如函式呼叫運算子:()

6樓:蕉蕉

%是除法

取餘運算,用於整數與整數運算。否則,不同的編譯器會得不同結果。兩邊的運算量必須為整型,且%後面的運算量不能為0。

'%'為取餘運算子,用於把它前面的整數值或表示式除以其後面的整數值或表示式,結果為不能被後面的整數或表示式整除的最小整數,它後面的數值應該為大於1的正整數。如表中所示的"13%7",就表示13 除以7餘6。

c語言運算子%的操作例項:

輸入#include

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

7樓:匿名使用者

取餘數啊

5%2=1

因為5=2*2+1

8樓:匿名使用者

如a%b

先int a,b;

float d,c;

d=a/b;

c=float(a)/b;

cout<<(c-d);即可

c語言運算子中問號是什麼意思

9樓:學雅思

問號是條件運算子的意思,跟冒號組合使用。條件運算子優先順序高於賦值、逗號運算子,低於其他運算子。

表示式為:表示式1?表示式2:

表示式3。先求解表示式1,若其值為真(非0)則將表示式2的值作為整個表示式的取值,否則(表示式1的值為0)將表示式3的值作為整個表示式的取值。

擴充套件資料條件運算子具有右結合性

當乙個表示式中出現多個條件運算子時,應該將位於最右邊的問號與離它最近的冒號配對,並按這一原則正確區分各條件運算子的運算物件。如果在問號和冒號之間還有乙個問號或者冒號,應該滿足就近配對,使結構不發生紊亂。例如:

10樓:天雲一號

c語言運算子中問號是條件運算子(與冒號組合)。該運算子是c語言中唯一乙個三目運算子。

可以通過如下的例項來說明條件運算子的用法:

int a=1, b=3;

int max;

max = a>b ? a : b;   // 如果a>b,則max的值為a,否則max的值為b,也即取a與b中的較大者

11樓:匿名使用者

z=x=y結果z就是y的值

跟下面的if語句等價

if(x>y)z=x;

else z=y;

12樓:匿名使用者

呃,俺學藝不精,不知道你說的是哪個,是不是(?:)呢?

?:是三目運算子

如:a?b:c;

等價於:

if(a) b;

else c;

c語言運算子中的>>是什麼意思?有啥功能?謝謝。

13樓:蘇嘉愛娛樂

>>是右移運算子,移位運算子的一種:程式設計中,位操作運算子的一種。

c語言中位移位運算子是將資料看成二進位制數,對其進行向左或向右移動若干位的運算。位移位運算子分為左移和右移兩種,均為雙目運算子。第一運算物件是移位物件,第二個運算物件是所移的二進位制位數。

位移位運算子的運算物件、運算規則與結果、結合性如表2-16所示。

移位時,移出的位數全部丟棄,移出的空位補入的數與左移還是右移有關。如果是左移,則規定補入的數全部是0;如果是右移,還與被移位的資料是否帶符號有關。若是不帶符號數,則補入的數全部為0;若是帶符號數,則補入的數全部等於原數的最左端位上的原數(即原符號位)。

擴充套件資料

優先順序:

語言中各運算子的結合性分為兩種,即左結合性(自左至右)和右結合性(自右至左)。例如算術運算子的結合性是自左至右,即先左後右。如有表示式x-y+z 則y 應先與「-」號結合,執行x-y 運算,然後再執行+z 的運算。

這種自左至右的結合 方向就稱為「左結合性」。而自右至左的結合方向稱為「右結合性」。最典型的右結合 性運算子是賦值運算子。

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

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

14樓:佼丹厙琬

c語言運算子中問號是條件運算子(與冒號組合)。該運算子是c語言中唯一乙個三目運算子。

可以通過如下的例項來說明條件運算子的用法:

int a=1, b=3;

int max;

max = a>b ? a : b; // 如果a>b,則max的值為a,否則max的值為b,也即取a與b中的較大者

15樓:

右移運算子「>>」是雙目運算子。其功能是把「>> 」左邊的運算數的各二進位全部右移若干位,「>>」右邊的數指定移動的位數。

例如:設 a=15,

a>>2

表示把000001111右移為00000011(十進位制3)。

應該說明的是,對於有符號數,在右移時,符號位將隨同移動。當為正數時,最高位補0,而為負數時,符號位為1,最高位是補0或是補1 取決於編譯系統的規定。turbo c和很多系統規定為補1。

c語言(冪)運算子,C語言 (冪)運算子

運算子是 按位異或 1 異或是乙個數 算符。他應用於邏輯運算。2 例如 真異或假的結果是真,假異或真的結果也是真,真異或真的結果是假,假異或假的結果是假。就是說兩個值不相同,則異或結果為真。反之,為假。3 在計算機應用中,普遍運用,異或的邏輯符號 shift 6 形象表示為 真 假 真 假 真 真 ...

c語言運算子中問號是什麼意思C語言運算子中問號是什麼意思

問號是條件運算子的意思,跟冒號組合使用。條件運算子優先順序高於賦值 逗號運算子,低於其他運算子。表示式為 表示式1?表示式2 表示式3。先求解表示式1,若其值為真 非0 則將表示式2的值作為整個表示式的取值,否則 表示式1的值為0 將表示式3的值作為整個表示式的取值。擴充套件資料條件運算子具有右結合...

C語言賦值運算子,在C語言中11種賦值運算子的具體含義,用法

你宣告為 無符來號char,則運算會按無符號源處bai理。你宣告為有符號duchar,則運算會按有符號處zhi理。例如 unsigned char c char d c 376 d 376 printf c d d d n c,d 列印出 daoc 254 d 2 定義的意思是說這是無符號數,它可以...