20251123_143325 C++運算符學習筆記:邏輯運算符、二元與一元運算符及應用

一、邏輯運算符(與、或、非)

(一)邏輯與(&&)

  1. 符號表示:&&(數字7上方符號,英文輸入模式)
  2. 格式:條件1 && 條件2
  3. 邏輯規則:兩個條件同時滿足時,結果才為“成立(true)”;只要有一個條件不滿足,結果為“不成立(false)”
  4. 實例:找工作要求“工資≥6000元”且“離家距離≤3公里”,需用邏輯與判斷,僅當兩個條件都滿足時才投遞簡歷

(二)邏輯或(||)

  1. 符號表示:||(按住Shift鍵點擊第二排最後一個斜槓,英文輸入模式)
  2. 格式:條件1 || 條件2
  3. 邏輯規則:兩個條件中至少有一個滿足時,結果為“成立(true)”;僅當兩個條件都不滿足時,結果為“不成立(false)”
  4. 實例:找工作要求“工資≥6000元”或“離家距離≤3公里”,用邏輯或判斷,只要滿足任一條件就投遞簡歷

(三)邏輯非(! / not)

  1. 符號表示:!not(英文輸入模式)
  2. 格式:!條件not 條件
  3. 邏輯規則:對單個條件取反,條件成立時結果為“不成立(false)”,條件不成立時結果為“成立(true)”
  4. 實例:公司招聘演員“只要不是男性就錄用”,定義變量is_boy(1代表男性,0代表非男性),用if (not (is_boy == 1))if (!(is_boy == 1))判斷是否錄用

二、二元運算符

(一)常見類型及符號

包括加減乘除取餘,符號分別為:+(加)、-(減)、*(乘)、/(除)、%(取餘)

(二)核心特性

  1. 定義:需要兩個元素參與運算的運算符(如a + b中,+左右各需一個數據)
  2. 除法專項規則:
    • 兩個整數相除:結果為整數(僅保留整數部分),例:5 / 3 = 1
    • 運算中有小數參與:結果為小數,例:5.0 / 3 = 1.666673.2 * 2 = 6.4
    • 小數除法若整除:結果為整數形式,例:10.0 / 2 = 510 / 2.0 = 5
  3. 補充説明:除法保留小數點後兩位數需導入lmail IP相關工具,後續將提供專項備考資料

三、一元運算符(自增、自減)

(一)核心定義

僅需一個元素參與運算的運算符,核心為自增(++)和自減(--),功能是使變量值自身加1或減1

(二)自增運算符(++)

1. 後置自增(a++)
  • 運算規則:先使用變量a當前的值參與其他運算,再將a的值加1
  • 實例:若a = 100,執行b = a++後,b = 100(使用自增前的值),a = 101(自增後的值)
2. 前置自增(++a)
  • 運算規則:先將變量a的值加1,再使用加1後的結果參與其他運算
  • 實例:若a = 100,執行b = ++a後,a = 101(先自增),b = 101(使用自增後的值)
3. 複雜運算示例
  • 表達式:a = 100,計算b = a++ + ++a
  • 分步解析:
    1. 先執行a++b先取a自增前的值(100),a變為101
    2. 再執行++aa先自增為102,b再取102
    3. 結果:b = 100 + 102 = 202

(三)自減運算符(--)

1. 規則説明

與自增運算符邏輯完全一致,僅將“加1”改為“減1”

  • 後置自減(a--):先使用a當前值,再將a減1
  • 前置自減(--a):先將a減1,再使用減1後的值
2. 實例:若a = 100,執行b = a--後,b = 100a = 99;執行b = --a後,a = 99b = 99

(四)運算優先級

複雜表達式中按“從左到右”順序執行,需依次跟蹤變量值的變化

四、綜合練習題解析

(一)題目要求

在1到nn為用户輸入值,默認假定n = 100)的整數中,找出同時滿足以下條件的整數個數,無符合條件的數則輸出0:

  1. 除以3餘2(num % 3 == 2
  2. 除以5餘3(num % 5 == 3
  3. 除以7餘2(num % 7 == 2

(二)解題核心思路

  1. 循環結構:使用for循環遍歷1到n的所有整數,循環需包含三要素(循環變量初始化、循環條件、循環變量變化)
  2. 條件判斷:用邏輯與(&&)連接三個取餘條件,判斷當前整數是否符合要求
  3. 統計個數:定義計數變量(如count = 0),每找到一個符合條件的數,計數變量加1
  4. 輸出結果:循環結束後,輸出計數變量的值(即符合條件的整數個數)