回覆列表
  • 1 # 使用者9272196178563

    一、數學定義:在數學中,定義凡是可以被2整除的,均為偶數。反之則為奇數。二、演算法分析:根據數學定義,以及一些C語言的知識,可以得到很多種判斷一個整數的奇偶性的方法,舉例如下:1、最常用最直觀的方法。對2取餘,如果為0,表示整除,即為偶數。否則為奇數。即n%2==0 則為偶數。n%2==1則為奇數。由於C語言規定邏輯運算中0為假,1為真,於是判斷奇偶可以簡化為if(n%2) printf("n為奇數\n");else printf("n為偶數\n");2、效率最高的方法。計算機中都是二進位制儲存,這樣判斷奇偶其實判斷二進位制的最後一位即可。所以可以用更高效的位操作來判斷:if(n&1) printf("n為奇數\n");else printf("n為偶數\n");3、其它方法:根據各種數學推論,以及C語言操作,還有很多其它方法,不過都不常用,僅做了解,舉幾個例子如下:n/2*2==n //利用整數除法取整的規則,如果相等,則為偶數。((n>>1)<<1)==n //右移後再左移,如果與原值相等,則為偶數。(n+1)/2 == n/2 //同樣利用整數除法取整,相等則為偶數。類似的還可以寫出很多,不過意義並不大,因為不常用,且不高效,實際使用只會增加執行開銷和維護難度。

  • 中秋節和大豐收的關聯?
  • 老婆跟老媽有矛盾,她不肯跟我一起回家過年該咋辦?#過年那些事#?