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

C語言語句與流程控制完全教程:順序、選擇、循環結構

     編輯:C 語言入門

語句與語句塊

  • 簡單語句:以分號結尾的基本執行單元(賦值、函數調用、返回等)。
  • 語句塊:{ ... } 包裹的多條語句,邏輯分組,不影響執行語義。

變量作用域

  • 局部變量:函數/塊內定義,作用域從定義處到所在塊/函數結束。
  • 全局變量:函數外定義,全程可見。
  • 嵌套塊同名變量:內層遮蔽外層,離開內層恢復外層可見性。

順序結構

自上而下循序執行,最基礎結構。配合基本 I/O:


printf("格式串", 參數...);  // %d %f %c %s %x 等
scanf("格式串", &變量...);  // 需傳地址 &,讀取用戶輸入

scanf 必須傳地址:郵遞員投信需門牌號(地址),printf 只需信內容(值)。

選擇結構

if-else


if (條件) { ... }
else if (條件) { ... }
else { ... }
  • 條件非 0 為真,0 為假。
  • 單語句可省略大括號。
  • 陷阱:== 判斷相等,= 賦值。if (x = 1) 永真。

switch-case


switch (整型表達式) {
    case 常量1: ... break;
    case 常量2: ... break;
    default: ...;
}
  • 表達式類型:整型/字符/枚舉(非浮點)。
  • break 缺失導致貫穿(fall-through),可刻意利用或避免。
  • default 可選,無匹配時執行。

循環結構

for 循環


for (初始化; 條件; 遞增) { 體; }
// 適用:已知次數、計數器控制
  • 初始化可定義變量(C99),作用域限於循環內。
  • 三部分均可省略,分號必保留。
  • for(;;) 無限循環。

while 循環


while (條件) { 體; }
// 適用:未知次數、條件驅動
  • 先判斷後執行,可能零次。
  • 等價 for(;條件;)。

do-while 循環


do { 體; } while (條件);
// 至少執行一次,後判斷

跳轉控制

常配合 if 實現條件跳轉。

巢狀循環

循環體內再包含循環,如發牌模擬:外層輪次,內層玩家。

goto(慎用)


start: ...; if (cond) goto start;

可構造任意控制流,但破壞結構化,難維護,教學/極簡場景外不建議。

章節小結

  • 語句以分號結尾,塊用大括號。
  • 變量先定義後使用,局部作用域到塊/函數末尾。
  • 順序結構配合 printf/scanf 完成基本 I/O。
  • 選擇:if-else 多條件,switch 多分支整型匹配。
  • 循環:for 計數,while 條件,do-while 至少一次。
  • continue/break/return 控制流向,巢狀循環常見,goto 慎用。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved
關鍵字作用
continue結束本次迭代,直接進入遞增/條件判斷
break跳出整個循環/switch
return跳出當前函數(main 中結束程序)