在前面,主要介紹數學運算,在這裡會先介紹常見的邏輯運算 然後才會帶入流程控制相關介紹
邏輯運算
邏輯運算主要型別為布林(bool),會返回True、false或null 在流程控制過程中,相當好用!
以下列出常見的邏輯運算符
運算式 | 符號 | 格式 |
---|---|---|
等於 | == | x==y |
不等於 | != | x!=y |
大於 | > | x>y |
大於等於 | >= | x>=y |
小於 | < | x<y |
小於等於 | <= | x<=y |
及(AND) | && | x&&y |
或 (OR) | || | x||y |
非(NOT) | ! | !(x>y) |
流程控制
在流程控制中,會藉由邏輯運算的結果作為依據 以下介紹C#的流程控制運算方式
if
C#的判斷式if完全繼承C語言的寫法 以下直接透過範例來說明if架構與用法
int a = 60;
if( a>60){
Console.WriteLine("A科成績高於六十分");
}else if (a == 60){
Console.WriteLine("A科剛好及格");
}else{
Console.WriteLine("A科不及格");
}
當然,這裡僅是示範,你可以依照實際狀況,在if()設計更多元的判斷方式, 也可以省略括弧,但除非你有特殊原因,不然為了讓程式易讀,建議還是用保留括弧的寫法
int a = 60;
if( a>60)
Console.WriteLine("A科成績高於六十分");
else if (a == 60)
Console.WriteLine("A科剛好及格");
else
Console.WriteLine("A科不及格");
if 的縮寫法 ?:
if(){}else{} 可以縮寫成 ?: 例如
int x = 10;
if(x>10){
Console.WriteLine("Yes");
}else{
Console.WriteLine("No")
}
可以改寫成
int x = 10;
string msg;
msg = x>10?"Yes":"No";
Console.WriteLine(msg);
switch
switch 主要用於針對單一變數而設計的流程控制 在控制過程須,只要配對到符合的 case 結果,就會搭配break來跳脫出流程 如果完全沒有符合的項目,則可以用 default 返回最終無符合情況的預設結果
例如:
int a = 1;
string msg;
switch (a)
{
case 1:
msg = "歡迎登入";
break;
case 2:
msg = "帳號未開通";
break;
case 3:
msg = "密碼錯誤";
break;
case 4:
msg = "帳號不存在";
break;
default:
msg = "無法判定或系統維護中!";
break;
}
Console.WriteLine(msg);