1. c語言的等於操作符(==)與賦值操作符(=)有什麼不同
inta;
a=10;
如果輸出這句話printf("%d ",a=10);//結果是輸出10
如果是輸出
printf("%d ",a==10);//結果是1(也就是True)
在C語言中賦值操作符需要左邊的左值是一個可修改的值(常數不能做左值)1=2是不行的
返回的值(也就是這整個表達式的值是賦值後左值的值)
而等於操作符和大於小於是一樣的是一種表示判斷的操作符左右兩邊可以是同類型的變數
返回的是布爾值(C中表示為0或非0值)表示真或假
2. c語言中按照操作數1運算符操作數2=的輸出,並用switch判斷運算符
摘要 C語言基礎知識
3. c語言中各個運算符代表什麼就是++ —— ==啥的
下面按優先順序列出了常用的每個運算符的名稱,如果還有需要具體化的請提問:
1級(左結合)
() 圓括弧;[]下標運算符;->指向結構體成員運算符;. 結構體成員運算符。
2級(右結合)
!邏輯非運算符;~按位取反運算符;++前綴增量運算符;--前綴減量運算符;+正號運算符;-負號運算符;(類型)類型轉換運算符;*指針運算符;&地址運算符;sizeof長度運算符。
3級(左結合)
*乘法運算符;/除法運算符;%取余運算符。
4級(左結合)
+加法運算符;-減法運算符。
5級(左結合)
<<左移運算符;>>右移運算符。
6級(左結合)
<、<=、>、>=關系運算符。
7級(左結合)
==等於運算符;!=不等於運算符。
8級(左結合)
&按位與運算符。
9級(左結合)
^按位異或運算符。
10級(左結合)
|按位或運算符。
11級(左結合)
&&邏輯與運算符。
12級(左結合)
||邏輯或運算符。
13級(右結合)
? :條件運算符。
14級(右結合)
=、 +=、 -=、 *=、 /=、 %=、 &=、 ^=、 |=、 <<=、 >>=賦值運算符。
4. c語言中運算符有哪幾種,優先順序順序是怎樣
C語言中,運算符除了常見的三大類,算術運算符、關系運算符與邏輯運算符之外,還有一些用於完成特殊任務的運算符。
運算符的運算優先順序共分為15 級,1 級最高,15 級最低。 在表達式中,優先順序較高的先於優先順序較低的進行運算。而在一個運算量兩側的運算符 優先順序相同時,則按運算符的結合性所規定的結合方向處理。
一級運算符:標識,常量,字元串文字量,優先順序提升表達式最優先執行。
二級運算符:數組下標運算(expression)、函數調用(argument-expression-list)、成員訪問(identifier、-> identifier)、後綴自增(i++)、後綴自減(i--)、復合初始化(initializer-list)。
三級運算符:前綴自增(++i)、前綴自減(--i)、單目轉型表式式(取地址& ,提領 * , 正號+ ,負號-、位反~ 邏輯否!)、求類型長度(sizeof unary-expression)。
四級運算符:強製表達式成為type-name指定的類型( type-name ) cast-expression。
五級運算符:「 * 」 乘法運算符。
六級運算符:「 + 」加法運算符。
七級運算符:<< 左移運算符;>> 右移運算符。
八級運算符:<、<=、>、>=關系運算符。
九級運算符:「 == 」等於運算符;「 != 」不等於運算符。
十級運算符:「 & 」按位與運算符。
十一級運算符:「 ∧ 」按位異或運算符。
十二級運算符:「 | 」按位或運算符。
十三級運算符:「&&」邏輯與運算符。
十四級運算符:「 || 」邏輯或運算符。
十五級運算符:? :條件運算符。
(4)c語言判斷操作符擴展閱讀
C語言中各運算符的結合性:
1、左結合性(自左至右):
例如算術運算符的結合性是自左至右,即先左後右。如有表達式x-y+z 則y 應先與「-」號結合,執行x-y 運算,然後再執行+z 的運算。這種自左至右的結合方向就稱為「左結合性」。
2、右結合性(自右至左)
自右至左的結合方向稱為「右結合性」。最典型的右結合 性運算符是賦值運算符。如x=y=z,由於「=」的右結合性,應先執行y=z 再執行x=(y=z)運算。C語言運算符中有不少為右結合性,應注意區別,以避免理解錯誤。
5. C語言和:操作符怎麼用
C語言?和:是三目運算符,也叫三元運算符。
語法:表達式1 ? 表達式2 : 表達式3;
函數:先執行表達式1,執行完畢,如果表達式1的結果為真,則執行表達式2,整個表達式的結果就是表達式2的結果,否則執行表達式3,結果是表達式3的結果。
例如:int res=1?10:20;
可以簡單理解為表達式1成立嗎?成立執行表達式2,否則執行表達式3。
(5)c語言判斷操作符擴展閱讀:
關於三目運算符的幾點說明:
1、通常,表達式1是用於描述條件表達式中的條件的關系表達式或邏輯表達式。表達式2和3可以是常量、變數或表達式。例如:
(x==y)?y':'n'(d=b*b-4*a*c)>=0?sqrt(d):sqrt(-d)ch=(ch>='a'&&ch<='z')?(CH+32):CH
2、條件表達式的執行順序為:首先求解表達式1。如果值為非零,則條件為真,則求解表達式2,並將表達式2的值用作整個條件表達式的值;
如果表達式1的值為0,表示條件為假,則解方程3,表達式3的值是整個條件表達式的值。例如:
(a>=0)?a:-a執行的結果是a的絕對值。
3、在程序中,直接將條件表達式的值賦給變數。例如:
min=(a<b)的結果?a:b是將條件表達式的值賦給變數min,即a和b中的較小者賦給min。
6. c語言運算符號的表示方法
1
算術運算符
用於各類數值運算。包括加(+)、減(-)、乘(*)、除(/)、求余(或稱模運算,%)、自增(++)、自減(--)共七種。
2.關系運算符
用於比較運算。包括大於(>)、小於(<)、等於(==)、
大於等於(>=)
、小於等於(<=)和不等於(!=)六種。
3.邏輯運算符
用於邏輯運算。包括與(&&)、或(||)、非(!)三種。
4.位操作運算符
參與運算的量,按二進制位進行運算。包括位與(&)、位或(|)、位非(~)、位異或(^)、左移(<<)、右移(>>)六種。
5.賦值運算符
用於賦值運算,分為簡單賦值(=)、復合算術賦值(+=,-=,*=,/=,%=)和復合位運算賦值(&=,|=,^=,>>=,<<=)三類共十一種。
6.條件運算符
這是一個三目運算符,用於條件求值(?:)。
7.逗號運算符
用於把若干表達式組合成一個表達式(,)。
8.指針運算符
用於取內容(*)和取地址(&)二種運算。
9.求位元組數運算符
用於計算數據類型所佔的位元組數(sizeof)。
10.特殊運算符
有括弧(),下標[],成員(→,.)等幾種。
優先順序1級
結合方向
左結合(自左至右)
(
)
圓括弧
[
]下標運算符
->
指向結構體成員運算符
.
結構體成員運算符(請注意它是一個實心圓點)
優先順序2級
結合方向
右結合(自右至左)單目運算符
!
邏輯非運算符
~
按位取反運算符
++
自增運算符
--
自減運算符
-負號運算符
(類型)
類型轉換運算符
*
指針運算符
&
地址與運算符
sizeof
長度運算符
優先順序3級
結合方向
左結合
雙目運算符
*
乘法運算符
/
除法運算符
%
取余運算符
優先順序4級
結合方向
左結合
雙目運算符
+
加法運算符
-
減法運算符
優先順序5級
結合方向
左結合
雙目運算符
<<
左移運算符
>>
右移運算符
優先順序6級
結合方向
左結合
雙目運算符
<、<=、>、>=
關系運算符
優先順序7級
結合方向
左結合
雙目運算符
==
等於運算符
(判斷)
!=
不等於運算符(判斷)
優先順序8級
結合方向
左結合
雙目運算符
&
按位與運算符
優先順序9級
結合方向
左結合
雙目運算符
^
按位異或運算符
優先順序10級
結合方向
左結合
雙目運算符
|
按位或運算符
舉例:0xfe|0xef
即為1111
1110
與1110
1111按位或運算則答案為:1111
1111
即0xff。
優先順序11級
結合方向
左結合
雙目運算符
&&
邏輯與運算符
優先順序12級
結合方向
左結合
雙目運算符
||
邏輯或運算符
優先順序13級
結合方向
右結合
三目運算符
?
:
條件運算符
優先順序14級
結合方向
右結合
雙目運算符
=
賦值運算符
+
=
加後賦值運算符
如s+=1表示s=s+1
-
=
減後賦值運算符
如s-=1表示s=s-1
*
=
乘後賦值運算符
/
=
除後賦值運算符
%
=
取模後賦值運算符
<
<=
左移後賦值運算符
>>=右移後賦值運算符
&=
按位與後賦值運算符
^=按位異或後賦值運算符
|=
按位或後賦值運算符
優先順序15級
結合方向
左結合
,
逗號運算符