首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> C語言 >> 關於C語言

C Primer Plus 學習筆記:第七章 C 控制語句——分支與跳轉

     編輯:關於C語言

第七章 C 控制語句:分支和跳轉

7.1 if 語句

if 稱為分支/選擇語句,提供程序流程的交匯點。

基本形式

if (expression)
    statement;

expression 為真(非零)執行 statement,否則跳過。

if-else 形式

if (expression)
    statement1;
else
    statement2;

多條語句必須用花括號 {} 包裹成代碼塊。

7.1.1 getchar() 與 putchar()

  • getchar() 無參數,返回輸入設備下一字符。ch = getchar() 等價 scanf("%c", &ch)。
  • putchar(ch) 輸出參數字符。等價 printf("%c", ch)。
  • 專注字符處理,比 scanf/printf 更快、更簡潔,無需格式符。

7.1.2 else 匹配規則

無花括號時,else 與最近的未匹配 if 配對。

7.2 邏輯運算符

  • ! 優先級最高(高於乘法,與 ++ 同級,僅次於括號)。
  • && 優先級高於 ||。
  • 兩者優先級均低於關系運算符、高於賦值運算符。

7.3 條件運算符 ? :

C 唯一的三元運算符。形式:expr1 ? expr2 : expr3。
expr1 為真,整個表達式值為 expr2,否則為 expr3。

7.4 循環輔助:continue 與 break

7.4.1 continue

  • 適用於三種循環。遇到時跳過本輪剩餘迭代,直接進入下一次迭代判斷。
  • 可作佔位符:while (getchar() != '\n') continue; 清空輸入緩衝區至換行。

7.4.2 break

  • 終止包含它的最內層循環,繼續執行循環後的代碼。
  • 嵌套循環中僅影響內層循環。

7.5 多重選擇:switch 與 break

  • 一條語句可有多個 case 標簽(連續執行)。
  • 根據 expression 值跳轉至匹配 case,繼續向下執行直到遇 break 或結束。
  • expression 與 case 標簽必須為整型常量表達式(含 char)。
  • 無匹配 case 時跳轉 default。

7.6 goto 語句

goto label;
...
label: statement;

包含 goto 關鍵字與標簽名。慎用,避免製造「面條代碼」。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved