1. 程式人生 > >《C++ Primer Plus》學習筆記——第六章 分支語句和邏輯運算子(一)

《C++ Primer Plus》學習筆記——第六章 分支語句和邏輯運算子(一)

本章內容包括:

  • if 語句
  • if else 語句
  • 邏輯運算子 &&、||和!
  • cctype字元函式庫
  • 條件運算子: ? :
  • switch 語句
  • continue和break語句
  • 讀取數字的迴圈
  • 基本檔案輸入和輸出

if 語句

if (test-condition)
    statement;

如果test-condition為true(1),則執行if內的語句,否則就跳過if語句。

if else 語句

if (test-condition)
    statement1;
else
    statement2;

如果test-condition為true(1),則執行statement1,否則就執行statement2。

如果要使用語句塊,必須加上花括號。

if else if else語句

實際為一個if else裡包含了另一個if else 形成了多重選擇結構。

if (test-condition1)
    statement1;
else if (test-condition2)
    statement2;
else
    statement3;

//或者

if (test-condition1)
    statement1;
else 
    if (test-condition2)
        statement2;
    else
        statement3;
//一般習慣用第一種。

邏輯表示式(一般用於判斷條件中)

||(或運算子):當兩個條件中有一個滿足時,就為true。如果第一個條件滿足了,它就不會去判斷第二個條件。

&&(與運算子):當兩個條件都滿足的時候,就為true。需要兩個條件都判斷。(可以用來設定範圍等)

!(非運算子):將表示式的真值取反,在進行判斷。

一些注意:

優先順序:!>關係表示式>||、&&

字元函式庫cctype

函式名稱 返回值
isalnum() 如果引數是字母數字,該函式返回true。
isalpha() 如果引數是字母,該函式返回true。
iscntrl() 如果引數是控制字元,該函式返回true。
isdigit() 如果引數是數字(0~9),該函式返回true。
isgraph() 如果引數是除空格之外的列印字元,該函式返回true。
islower() 如果引數是小寫字母,該函式返回true。
isprint() 如果引數是列印字元(包括空格),該函式返回true。
ispunct() 如果引數是標點符號,該函式返回true。
isspace() 如果引數是標準空白字元,該函式返回true。
isupper() 如果引數是大寫字母,該函式返回true。
isxdigit() 如果引數是十六進位制數字,即0~9,a~f,A~F,該函式返回true。
tolower() 如果引數是大寫字元,則返回小寫字元,否則返回該引數。
toupper() 如果引數是小寫字元,則返回大寫字元,否則返回該引數。

? :運算子

可用來代替if else語句

expression1?expression2:expression3;

如果expression1為true,則執行expression2,表示式的值為expression2的值,否則執行expression3,表示式的值為expression3的值。