1樓:愽
在c語言中會遇到不同型別的資料進行運算,如果一個運算子的兩側資料型別不同,則先自動進行型別轉換,使兩者具有同一種型別,然後進行運算,規律為: (1)+,—,*,/運算的兩個數中有一個為float或double型,結果是double型,因為統一將所有flo
請問下c語言中取餘運算子「%」在1%2下怎麼取餘啊?結果是啥
2樓:幻翼高達
需要準備的材料分別有:
電腦、c語言編譯器。
1、首先,開啟c語言編譯器,新建一個初始.cpp檔案,內例如容:test.cpp。
2、在test.cpp檔案中,輸入c語言**:printf("%d", 1 % 2);。
3、編譯器執行test.cpp檔案,發現取餘運算子「%」在1%2下取餘的結果就是1。
3樓:足壇風行者
c語言中取餘運算 1%2 的結果為0。因為1除以2的餘數是0。
% 取模運算子,其運版算規則是整除後的餘數。
假設變數 a 的值為權 10,變數 b 的值為 20,那麼, b % a 將得到 0 。
假設變數 a 的值為 2,變數 b 的值為 3,那麼, b % a 將得到 1 。
擴充套件資料
c語言的運算子介紹
假設變數 a 的值為 10,變數 b 的值為 20,則:
1、+ 把兩個運算元相加 a + b 將得到 30;
2、- 從第一個運算元中減去第二個運算元 a - b 將得到 -10 ;
3、* 把兩個運算元相乘 a * b 將得到 200 ;
4、/ 分子除以分母 b / a 將得到 2 ;
5、% 取模運算子,整除後的餘數 b % a 將得到 0 ;
6、++ 自增運算子,整數值增加 1 a++ 將得到 11 ;
7、-- 自減運算子,整數值減少 1 a-- 將得到 9 。
4樓:物理公司的
取餘數du啊,這麼想 30%20 = 10 很好理解,這個zhi結果10是怎麼來的呢?
dao30裡減去1個20還剩下10嘛,為什麼只減一版個?因為只剩下10了不權夠再減一個了,所以餘數就是10。那10%20呢,10裡面能減去幾個20?
0個嘛,那就不減啦,還剩下10嘛,所以餘數也是10嘍!!發現越簡單的東西越不好解釋,哈哈
5樓:武成
1%2等於1,
被除數是1,除數是2,商是0,餘數是1
被除數=商✘除數+餘數
6樓:匿名使用者
記得小學還沒學小數時學的餘數吧,1÷2=0……1 ,就算忘了寫個程式不就知道了。
7樓:幽客天下
1/2=0餘1,那1%2=1
c語言 算術運算子
8樓:匿名使用者
共44個運算子:初等,4個: ( ) [ ] -> 指向結構體成員 . 結構體成員
單目,9個: ! ~ ++ -- -負號 (型別) *指標 &取地址 sizeof長度
算術,5個: * / % + -減
位移,2個: << >>
關係,6個: < <= > >= == 等於 != 不等於
位邏,3個: & 按位與 ^ 按位異或 | 按位或 邏輯,2個: && 邏輯與 || 邏輯或
條件,1個, 三目: ? :
賦值,11個: = += -= *= /= %= >>= <<= &= ^= |=
逗號,1個: ,
9樓:匿名使用者
c語言運算子分類 1級優先順序(左結合) () 圓括號;下標運算子;->指向結構體成員運算子;. 結構體成員運算子。 2級優先順序(右結合) !
邏輯非運算子;~按位取反運算子;++字首增量運算子;--字首增量運算子;+正號運算子;-負號運算子;(型別)型別轉換運算子;*指標運算子;&地址與運算子;sizeof長度運算子。 3級優先順序(左結合) *乘法運算子;/除法運算子;%取餘運算子。 4級優先順序(左結合) +加法運算子;-減法運算子。
5級優先順序(左結合) 《左移運算子;>>右移運算子。 6級優先順序(左結合) <、<=、>、>=關係運算子。 7級優先順序(左結合) ==等於運算子;!
=不等於運算子。 8級優先順序(左結合) &按位與運算子。 9級優先順序(左結合) ^按位異或運算子。
10級優先順序(左結合) |按位或運算子。 11級優先順序(左結合) &&邏輯與運算子。 12級優先順序(左結合) ||邏輯或運算子。
13級優先順序(右結合) ? :條件運算子。
14級優先順序(右結合) =、 +=、 -=、 *=、 /=、 %=、 &=、 ^=、 |=、 <<=、 >>=賦值運算子。 15級優先順序(左結合) ,逗號運算子。 運算子優先順序 優先順序從上到下依次遞減,最上面具有最高的優先順序,逗號操作符具有最低的優先順序。
所有的優先順序中,只有三個優先順序是從右至左結合的,它們是單目運算子、條件運算子、賦值運算子。其它的都是從左至右結合。 具有最高優先順序的其實並不算是真正的運算子,它們算是一類特殊的操作。
()是與函式相關,與陣列相關,而->及.是取結構成員。 其次是單目運算子,所有的單目運算子具有相同的優先順序,因此在我認為的 真正的運算子中它們具有最高的優先順序,又由於它們都是從右至左結合的,因此*p++與*(p++)等效是毫無疑問的。
另外在c語言裡 沒有前置後置之分 因為++ -- 是右結合所以 右側優先運算 表現為 "後置優先順序比較高" 的假象 前置和後置的區分是因為運算子過載而後加入c++的 接下來是算術運算子,*、/、%的優先順序當然比+、-高了。 移位運算子緊隨其後。 其次的關係運算子中,< <= > >=要比 == !
=高一個級別,不大好理解。 所有的邏輯操作符都具有不同的優先順序(單目運算子出外,!和~) 邏輯位操作符的"與"比"或"高,而"異或"則在它們之間。
跟在其後的&&比||高。 接下來的是條件運算子,賦值運算子及逗號運算子。 在c語言中,只有4個運算子規定了運算方向,它們是&&、| |、條件運算子及賦值運算子。
&&、| |都是先計算左邊表示式的值,當左邊表示式的值能確定整個表示式的值時,就不再計算右邊表示式的值。如 a = 0 && b; &&運算子的左邊位0,則右邊表示式b就不再判斷。 在條件運算子中。
如a?b:c;先判斷a的值,再根據a的值對b或c之中的一個進行求值。
賦值表示式則規定先對右邊的表示式求值,因此使 a = b = c = 6;成為可能。
10樓:匿名使用者
算術運算子 tag:運算子,資料型別 text:算術運算子對數值進行算術運算,其中:
加、減、乘、除、求餘運算是雙目運算。其結果可以是整數、單精度實數和雙精度實數。自增、自減運算是單目運算,其操作物件只能使整型變數,不能是常量或表示式等其他形式。
ref: .txt,+運算子.
txt,-運算子.txt,*運算子.txt,/運算子.
txt,%運算子,++運算子,-- 運算子 加+ tag:算術運算子,運算子,資料型別 text:雙目運算子,算數加法。
單目運算子,表示正數。 ref: .
txt,算數運算子.txt減- tag:算術運算子,運算子,資料型別 text:
雙目運算子,算數減法。單目運算子,表示負數。 ref:
.txt,算數運算子.txt乘* tag:
算術運算子,運算子,資料型別 text:*,雙目運算子,算數乘法。 ref:
.txt,算數運算子.txt除/ tag:
算術運算子,運算子,資料型別 text:/,雙目運算子,算數除法;如果兩個參與運算的數是整數,表示整除,捨去小數部分。如5.
0/2等於2.5,而5/2等於2。 ref:
.txt,算數運算子.txt取餘% tag:
算術運算子,運算子,資料型別 text:/,雙目運算子,算數除法;如果兩個參與運算的數是整數,表示整除,捨去小數部分。如5.
0/2等於2.5,而5/2等於2。 ref:
.txt,算數運算子.txt自加++ tag:
算術運算子,運算子,資料型別 text:單目運算子,針對整數運算,可以放在運算數的兩側,表示運算數增1。 ref:
.txt,算數運算子.txt自減-- tag:
算術運算子,運算子,資料型別 text:單目運算子,針對整數運算,可以放在運算數的兩側,表示運算數減1。 ref:
.txt,算數運算子.txt關係運算子 tag:
算數運算子,運算子,資料型別 text:關係運算子用於對兩個運算元的比較,包括:>(大於)、<(小於)、>=(大於等於)、<=(小於等於)、!
= (非等於)、==(等於)。 關係表示式是由關係運算子(>,<,>=,<=,!=,==)連線起來的表示式構成,關係運算子中的「關係」二字的含義是指一個資料與另一個資料之間的關係,這種關係只有成立與不成立兩種可能情況,在c語言中用邏輯值來表示,邏輯上的真與假時用數字「1」與「0」來表示的。
關係成立時表示式的結果為真(1),否則表示式的結果為假(0)。
ref: .txt,>運算子.
txt,>=運算子.txt,《運算子.txt,<=運算子.
txt,==運算子,!=運算子 大於》 tag:關係運算子,運算子,資料型別 text:
>運算子,例如a>b,如果a的值大於b,返回數值1(邏輯真),否則返回數值0(邏輯假)。 ref: .
txt,關係運算子.txt小於< tag:關係運算子,運算子,資料型別 text:
>運算子,例如a>b,如果a的值大於b,返回數值1(邏輯真),否則返回數值0(邏輯假)。 ref: .
txt,關係運算子.txt等於== tag:關係運算子,運算子,資料型別 text:
>運算子,例如a>b,如果a的值大於b,返回數值1(邏輯真),否則返回數值0(邏輯假)。 ref: .
txt,關係運算子.txt大於等於》= tag:關係運算子,運算子,資料型別 text:
>運算子,例如a>b,如果a的值大於b,返回數值1(邏輯真),否則返回數值0(邏輯假)。 ref: .
txt,關係運算子.txt小於等於<= tag:關係運算子,運算子,資料型別 text:
>運算子,例如a>b,如果a的值大於b,返回數值1(邏輯真),否則返回數值0(邏輯假)。 ref: .
txt,關係運算子.txt不等於!= tag:
關係運算子,運算子,資料型別 text:!=運算子,例如a==b,如果a的值不等於b,返回數值1(邏輯真),否則返回數值0(邏輯假)。 ref:
.txt,關係運算子.txt邏輯運算子 tag:
運算子,資料型別 text:邏輯運算子進行邏輯運算。優先順序:!
運算級別最高、&&運算與||運算同級。!運算的優先順序高於算術運算子,而&&和||運算則低於關係運算子。 結合方向:
邏輯非(單目運算子)具有右結合性;邏輯與和邏輯或(雙目運算子)具有左結合性。 ref: .
txt,&&運算子.txt,||運算子.txt,!
運算子.txt 邏輯非 tag:邏輯運算子,算數運算子,運算子,資料型別 text:!
邏輯與運算子,單目運算子,右結合,如果參與運算的資料為真,返回假;參與運算的資料為假則返回真。在c語言中沒有邏輯型別,如果數字的值不為0,就認為它的邏輯值為真,反之為假。 ref:
.txt,邏輯運算子.txt邏輯與 tag:
邏輯運算子,算數運算子,運算子,資料型別 text:&&邏輯與運算子,只有當運算子兩側的資料都為真時,結果為真,否則結果為假。在c語言中沒有邏輯型別,如果數字的值不為0,就認為它的邏輯值為真,反之為假。
ref: .txt,邏輯運算子.
txt邏輯或 tag:邏輯運算子,算數運算子,運算子,資料型別 text:||邏輯與運算子,只有當運算子兩側的資料都為假時,結果為假,否則結果為真。
在c語言中沒有邏輯型別,如果數字的值不為0,就認為它的邏輯值為真,反之為假。 ref: .
txt,邏輯運算子.txt賦值運算子 tag:運算子,資料型別 text:
賦值表示式是由賦值運算子(=)連線表示式(右側)和變數(左側)。既將賦值運算子右側的表示式的結果值賦予賦值運算子左側的變數,表示式可以是常量、變數、表示式和另外一個賦值表示式。
ref: .txt,基本賦值運算子 複合賦值運算子 條件運算子 tag:
運算子,資料型別 text:條件運算子是c語言中唯一的一個三目運算子,它要求有三個運算物件,每個運算物件的型別可以是任意型別的表示式(包括任意型別的常量、變數和返回值為任意型別的函式呼叫)。 一般形式:
《表示式1>?《表示式2>:《表示式3> 計算過程是:
計算《表示式1>的值,如果為真(非0),則計算《表示式2>的值,並將《表示式2>的值作為整個條件表示式的結果值;如果為假(0),則計算《表示式3>的值,並將《表示式3>的值作為整個條件表示式的結果值。就是說,根據條件的真/假,只能選擇一個表示式的結果作為整個表示式的結果。 優先順序:
高於賦值運算子,低於邏輯關係運算子。例如a>b?x=3,x=5;如果a>b則x的值為3,反之為5。
ref: .txt,逗號運算子 tag:
運算子,資料型別 text:逗號表示式是由逗號運算子(,)與兩個以上的表示式連線而成。其結果是最後一個表示式的結果值。
逗號表示式可以是任何型別。 一般形式: 《表示式1>,《表示式2>,販《表示式n> 計算過程:
依次計算《表示式1>的值,《表示式2>的值,…,《表示式n>的值,最後將《表示式n>的值作為整個表示式的結果值。因此逗號表示式又稱為「順序求值運算」。 優先順序:
所有運算子中級別最低。 結合方向:自左向右(左結合性) 例如:
int a=2,c; float b=5.2; c=a,2*a,2*b的結果為10.4(最後一個表示式的值),因為逗號表示式的求值順序是:
先計算c=a,將a的值賦給c(c=2),其此計算2*a的值(為4),最後計算2*b的值(為10.4)。當整個表示式計算結束後,c的值為2,整個表示式的值為10.
4。 ref: .
txt,bsizeof運算子 tag:運算子,資料型別 text:sizeof是c語言的一種單目操作符,如c語言的其他操作符++、--等。
它並不是函式。sizeof操作符以位元組形式給出了其運算元的儲存大小。運算元可以是一個表示式或括在括號內的型別名。
運算元的儲存大小由運算元的型別決定。
ref: .txt,型別轉換 隱式轉換 顯式轉換 位運算子 tag:
運算子,資料型別 text:在c語言中,位運算子是為了描述系統而設計的位運算,它的設計目標是為了取代組合語言。位運算是對位元組或字中的位(bit)進行測試或移位處理。
運算子是對c語言中的字元型(char)或整型(int)資料的操作,而不能用於其他型別。例如:float、double等。
位運算子分為位邏輯運算子和移位運算子。
ref: .txt,&運算子.txt,|運算子.txt,運算子.txt,^運算子.txt
位邏輯與 tag:邏輯運算子,算數運算子,運算子,資料型別 text:&邏輯與運算子,按位與。
如2的二進位制數是0010,7的二進位制數是0111 2&7的值為2(0010)。 ref: .
txt,邏輯運算子.txt位邏輯或 tag:邏輯運算子,算數運算子,運算子,資料型別 text:
|邏輯與運算子,按位或。如2的二進位制數是0010,7的二進位制數是0111 2|7的值為7(0111)。 ref:
.txt,邏輯運算子.txt位邏輯反 tag:
邏輯運算子,算數運算子,運算子,資料型別 text:邏輯與運算子,單目運算子,右結合,對運算數按位取反。 ref:
.txt,邏輯運算子.txt位邏輯異或 tag:
邏輯運算子,算數運算子,運算子,資料型別 text:^邏輯與運算子,按位異或(位相異則或,否則為0)。如2的二進位制數是0010,7的二進位制數是0111 2^7的值為5(0101)。
ref: .txt,邏輯運算子.txt
c語言中運算子是取整運算子嗎,C語言中“ ”運算子是取整運算子嗎?
終極至尊粉 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 直...
c語言關係運算子,c語言中關係運算子和自加自減運算優先順序哪個高
蘇嘉愛娛樂 是右移運算子,移位運算子的一種 程式設計中,位操作運算子的一種。c語言中位移位運算子是將資料看成二進位制數,對其進行向左或向右移動若干位的運算。位移位運算子分為左移和右移兩種,均為雙目運算子。第一運算物件是移位物件,第二個運算物件是所移的二進位制位數。位移位運算子的運算物件 運算規則與結...
C語言邏輯運算子問題,c語言邏輯運算子 我不明白 和 到底是怎麼運算的
c表示式中的操作符按優先順序順序結合,本表示式中運算子的優先順序順序從高到低為 所以表示式計算分解為 temp1 year 4 temp2 year 100 te year 400 temp4 temp1 0 temp5 temp2 0 temp6 te 0 temp7 temp5 temp6 ex...