1. 程式人生 > >C語言除法運算子“/”和求餘運算子“%”

C語言除法運算子“/”和求餘運算子“%”

除法運算子“/”。二元運算子,具有左結合性。參與運算的量均為整型時,結果為整型,捨去小數。如果運算量中有一個為實型,結果為雙精度實型。

例如:

5/2=2,1/2=0

5/2.0=2.5   

 求餘運算子“%”,二元運算子,具有左結合性。參與運算的量均為整型。求餘運算的結果等於兩個數相除後的餘數

例如:

5%2=1,1%2=1

5%2.0和5.0%2的結果是語法錯誤


轉:當前面的數小於後面的數時

其實求餘運算可以看成 
a%b=a-(int)(a/b)*b

1%2=1 
2%5=2

a % b 
如果a<b的話,這樣的商為0,餘數就是a


哈,這個關係表示式a%b=a-(int)(a/b)*b 又是這麼解釋的
先運算(a/b)然後a-(a/b的值)然後乘以b
例1. 
100除以2=50
結果為整數 則取值為0 (原因就是100除以2的值是整數,不是50.…………幾) 
例2. 
9除以2=4.5
則還是用4乘以2=8
再用9-8 結果就是餘數

轉:在C語言中,-3/16,16/-3,-3%16,16%-3的值各為多少?

除號的正負取捨和一般的算數一樣,符號相同為正,相異為負
求餘符號的正負取捨和被除數符號相同

-3/16=0     16/-3=-5     -3%16=-3      16%-3=1

********************************************************************************************

FM: http://blog.163.com/[email protected]/blog/static/162888047201121582012546/

********************************************************************************************

相關推薦

C語言除法運算子“/”運算子“%”

除法運算子“/”。二元運算子,具有左結合性。參與運算的量均為整型時,結果為整型,捨去小數。如果運算量中有一個為實型,結果為雙精度實型。 例如: 5/2=2,1/2=0 5/2.0=2.5     求餘運算子“%”,二元運算子,具有左結合性。參與運算的量均為整型。求餘運

使用與運算子代替運算子的技巧

1.效能對比: 求餘運算:a MOD b就相當與a-(a DIV b)*b 的運算。 與運算:就是一個指令的事 2.在特殊場景下,是否能用與&替代%呢? 在對10進行求餘的時候,我們發現,餘數總是整數中的個位上的數字,而不用管其他位是什麼;在與運算中,我們經常需要使用位操作符&

c語言的指標指標運算子(* and &)

c語言的中指標和指標運算子(* and &) c語言的指標 什麼是指標? 指標就是存放變數地址的 指標有什麼用? 訪問變數地址 指標在c語言學習中的地位是什麼? 如果你要寫出好

C語言學習筆記(五)—— 運算子、表示式語句

一、運算子1、賦值運算子:=        賦值表示式的目的是把值儲存到記憶體位置上,用於儲存值的資料區域統稱為資料物件,使用變數名是標識物件的一種方法。物件指的是實際的資料儲存,左值是用於標識和定位儲存位置的標籤,右值指的是能賦值給可修改左值的量。void example1

C語言複習————基本資料型別、運算子表示式

資料型別/運算子/表示式 主要分兩部分介紹,第一部分介紹常用的資料型別,例如:常量和變數/整型/實型/字元型;第二部分介紹算數運算子和算數表示式以及賦值運算子和逗號運算子。 一. 常用的資料型別 1. C語言中的資料型別 C語言中基本資料型別主要有整型/實型/字元型/字串型,本節主要介紹這幾種基本的資料型

C 語言 - 邏輯運算短路

light 邏輯與 std mage align png 運行 include tdi 邏輯運算符: 運算符 含義 優先級 ! 邏輯非 高 && 邏輯與 中 || 邏輯或 低

C語言基礎篇(二)運算子

導航:   2.1 算數運算子   2.2 邏輯運算子   2.3 位運算   2.4 賦值運算   2.5 記憶體訪問符號 ----->x<------------->x&

C++ 拷貝建構函式賦值運算子

本文主要介紹了拷貝建構函式和賦值運算子的區別,以及在什麼時候呼叫拷貝建構函式、什麼情況下呼叫賦值運算子。最後,簡單的分析了下深拷貝和淺拷貝的問題。 拷貝建構函式和賦值運算子 在預設情況下(使用者沒有定義,但是也沒有顯式的刪除),編譯器會自動的隱式生成一個拷貝建構函式和賦值

C語言—淺談幾種常見運算子理解

C語言—幾種常見運算子理解 賦值運算子(= ) 關係運算符(> < == >= <= !=) 優先順序: 在關係運算符中(<、<=、>、>=)優先順序相同(高) (==、!=)優先順序相同(低) 算術運

[C++] 過載運算子與型別轉換(2)——函式呼叫運算子型別轉換運算子

1、這兩個應該是C++中比較高階的用法了。 一、函式呼叫運算子   1、過載函式呼叫運算子(),必須是成員函式,一個類可以定義多個不同版本的呼叫運算子,相互之間應該在引數數量或者型別上有所區別。   2、定義了呼叫運算子的類的物件稱作 函式物件;函式

C語言複習筆記(2)——運算子優先順序

C 運算子優先順序 下表列出 C 運算子的優先順序和結合性。運算子從頂到底以降序列出。 優先順序 運算子 描述 結合性

棧的操作c語言實現算術表示式

</pre><p><span style="font-size:18px;">棧是一種特殊的線性表,按照“後進先出”的原則處理資料。</span></p><p><span style="font

C++ 複製建構函式賦值運算子過載函式

宣告一個空的類testsize,sizeof(testsize)為1,為其宣告建構函式和解構函式,依舊為1 建構函式不能使用關鍵字virtual,解構函式可以 一旦類中存在虛擬函式,就會為該類生成虛擬函式表,並在每一個例項中新增一個指向虛擬函式表的指標,從而大小為一個指標大

素數判定(不用除法)

題目1047:素數判定 時間限制:1 秒 記憶體限制:32 兆 特殊判題:否  提交:4800 解決:2241 題目描述: 給定一個數n,要求判斷其是否為素數(0,1,負數都是非素數)。 輸入: 測試資料有多組,每組輸入一個數n。 輸出: 對於每組輸入,若是素數則輸出yes

C++學習筆記(11) 過載流插入運算子流提取運算子,以及自動型別轉換

1. 過載<< 和>>運算子 <<和<<運算子可以被過載用於輸入輸出操作,在上一節中,我們對Rational物件進行輸出時定義了toString()類成員函式。如何通過cout << r 直接輸出Rational物件: 對於: r1

C語言經典例子,兩個數的最大公約數最小公倍數

求兩個數的最大公約數,我們首先可以想到輾轉相除法,即用最大的數除以小的數,得到以後的餘數,再用上次較小的數繼續除以餘數,直到餘數為0.最後剩下的最小數即為最大公約數。 例如,16,10,求最大公約數。            16%10=4(餘數)            10

C++過載流插入運算子流提取運算子

C++的流插入運算子“<<”和流提取運算子“>>”是C++在類庫中提供的,所有C++編譯系統都在類庫中提供輸入流類istream和輸出流類ostream。cin和cout分別是istream類和ostream類的物件。在類庫提供的標頭檔案中已經對“&l

C語言入門(三)之運算子、sizeof運算子、if表示式

型別轉換、型別提升 #include <stdio.h> void test(); int main(int argc, const char * argv[]) { // 1.型別轉換 /* // int 佔用4個位元組 double

c語言:自增自減運算子的操作詳解

博主在回憶c語言的基本知識時,突然發現自增自減運算子(--、++)這個知識點有些模糊不清,故博主為了給同為小白的同學們提供一些經驗,特寫下這篇文章。 首先,自增自減運算子共有兩種操作方式。 比如,我先定義一個變數a,以“++”為例,共有“a++”、“++a”種操作方式。“下

C語言的自增自減運算子問題

C語言的自增++,自減--運算子對於初學者來說一直都是個難題,甚至很多老手也會產生困惑,最近我在網上看到一個問題:  #include <stdio.h>  void main() /*主函式*/  {  int a,b,c,d;  a=5;  b=5;  c=(