1.概述
C語言中,運(yùn)算符包括有算術(shù)運(yùn)算符、關(guān)系運(yùn)算符、邏輯運(yùn)算符和位運(yùn)算。
算術(shù)運(yùn)算符:+、-、*、/、%、++(自增1)、--(自減1)
關(guān)系運(yùn)算符:>、>=、<、<=、==、!=
邏輯運(yùn)輸符:&&(并且)、||(或者)、!(取非)
位運(yùn)算:&(按位與)、|(按位或)、~(按位取反)、<<(左移一位)、>>(右移一位)
- 優(yōu)先級關(guān)系如下:
第1優(yōu)先級:()、[]等、成員訪問-> .
第2優(yōu)先級:單目運(yùn)算符,如++、--、!、~等
第3優(yōu)先級:乘法*、除法/、取模%
第4優(yōu)先級:加法+、減法-
第5優(yōu)先級:移位<<、>>
第6優(yōu)先級:大于>、大于等于>=、小于<、小于等于<=
第7優(yōu)先級:等于==、不等于!=
第8優(yōu)先級:按位與&
第9優(yōu)先級:按位異或^
第10優(yōu)先級:按位或|
第11優(yōu)先級:邏輯與&&
第12優(yōu)先級:邏輯或||
第13優(yōu)先級:三目條件運(yùn)算符 ?:
第14優(yōu)先級:賦值運(yùn)算符,如=、+=、-=、*=、/= 等
第15優(yōu)先級:逗號運(yùn)算,
運(yùn)算符 |
說明 |
結(jié)合性 |
() [] -> . | 括號、數(shù)組、結(jié)構(gòu)體成員訪問 | 從左往右 |
! ~ + - ++ -- (type) * & sizeof |
邏輯非、取反、負(fù)號、正號、自增、自減 強(qiáng)制轉(zhuǎn)換、間接、取地址、獲取空間占用 |
從右往左 |
* / % | 乘、除、取模 | 從左往右 |
+ - | 加、減 | 從左往右 |
>> << | 右移、左移 | 從左往右 |
< ?<= ?> >= | 小于、小于等于、大于、大于等于 | 從左往右 |
== != | 相等、不相等 | 從左往右 |
& | 按位與 | 從左往右 |
^ | 按位異或 | 從左到右 |
| | 按位或 | 從左到右 |
&& | 邏輯與 | 從左到右 |
|| | 邏輯或 | 從左到右 |
?: | 條件 | 從右到左 |
= += -= *= /= <<= ?>>= &= |= ^= |
等于、加等于、減等于、乘等于 除以等于、左移等于、右移等于 與等于、或等于、異或等于 |
從右到左 |
, | 逗號運(yùn)算 | 從左到右 |
2.自增自減++、--
++(或者--)放后面,先用值,再+(或者-)1 示例:data++
++(或者--)放前面,先+(或者-)1,再用值 示例:++data
#include
int main()
{
int data=10;
printf("data=%dn",data++);//10
data=10;
printf("data=%dn",++data);//11
data=10;
printf("data=%dn",data--);//10
data=10;
printf("data=%dn",--data);//9
}
[wbyq@wbyq 1227]$ ./a.out
data=10
data=11
data=10
data=9
3.C練習(xí)
1.輸入一個(gè)年份,判斷是閏年還是平年。
2.輸入一個(gè)三位數(shù),判斷是否為水仙花數(shù)(各個(gè)位上的立方之和等于本身)
示例:153=1^3+5^3+3^3
3.輸入一個(gè)華氏溫度,轉(zhuǎn)換為攝氏溫度。轉(zhuǎn)換方式:(華氏溫度-32)÷1.8;
4.從鍵盤上輸入3個(gè)整數(shù),按從大到小的順序輸出。例如輸入32 15 20,輸出32 20 15;
5.從鍵盤上輸入一個(gè)三位數(shù),判斷是否為回文數(shù)。例:121;
審核編輯:湯梓紅
-
嵌入式
+關(guān)注
關(guān)注
5140文章
19524瀏覽量
314754 -
鍵盤
+關(guān)注
關(guān)注
4文章
864瀏覽量
40419 -
C語言
+關(guān)注
關(guān)注
180文章
7630瀏覽量
140201 -
運(yùn)算符
+關(guān)注
關(guān)注
0文章
172瀏覽量
11340
發(fā)布評論請先 登錄
C語言運(yùn)算符的使用方法

評論