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

C 語言運算子與表達式完全指南

     編輯:關於C

基本概念

  • 運算元:參與運算的資料(常數、變數、表達式)。
  • 運算子:執行運算的符號(+, -, *, /, %, ++, --, &&, || 等)。
  • 表達式:運算元與運算子的組合(如 a + b * c)。
  • 優先序:高者先算(乘除大於加減),括號可提升。
  • 結合性:同優先序時方向(多數左結合,賦值右結合)。

算術運算子

int a = 5, b = 2;
printf("%d %d %d %d %d", a+b, a-b, a*b, a/b, a%b); // 7 3 10 2 1
// 整數相除捨去小數;% 僅適用整數,結果符號同被除數

混合型別運算自動向較高精度提升(int→double)。

賦值運算子

  • =、+=、-=、*=、/=、%=
  • 右結合:a = b = c = 10 依序賦值。
  • 範例:累加 1~100 sum += i 等同 sum = sum + i。

自增/自減

形式效果
++i先增後用
i++先用後增

優先序高於算術運算子。勿在同一表達式多次修改同一變數(未定義行為)。

關係與邏輯運算子

  • 關係:> < >= <= == != → 結果 1(true)/0(false)。
  • 邏輯:&&(短路與)、||(短路或)、!(非)。
  • 短路特性:0 && func() 不呼叫 func();1 || func() 不呼叫 func()。

條件運算子(三元)

max = (a > b) ? a : b;
// 巢狀可實現多重條件
grade = (score>=90)?'A':(score>=60)?'B':'C';

位元運算子

  • & | ^ ~ << >> 僅適用整數。
  • 常用技巧:x & (x-1) 清除最低位 1;x & -x 取得最低位 1。

輸入/輸出函式

printf 格式化

格式說明
%d %i有號十進位
%u %o %x %X無號十/八/十六進位
%f %e %g浮點數:定點/科學/自動
%c %s字元/字串
%p指標位址

寬度/精度:%10d 右對齊寬 10;%-10d 左對齊;%.2f 兩位小數;%010d 前補 0。

sprintf 字串組合

char buf[100];
sprintf(buf, "color %c%c", '4', 'f');  // buf = "color 4f"

scanf 格式化輸入

對應 printf 格式,需傳址(&var),遇空白/換行分隔。回傳成功轉換個數。

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