# if else語句相當于 條件表達式

# switch

如上圖。也可以寫成
```
switch (str)
{
case "IBC":
case"ibc":
console.writeline("中國建設銀行");
break
}
```
switch的每個case語句后面都必須有break。
## if與switch比較

if 主要針對關系表達式、邏輯表達式、bool類型(也就是,返回值為true false)。switch主要為整型、bool、string、char等類型
# while
如,求1-100的和
```
int i = 1;
int sum = 0;
while(i<=100)
{
sum += i;
i++;
}
console.writeline(sum);
console.readline();
```

結果為5050。
# do while
先執行一次語句,再判斷。比如在做登錄功能的時候,要先執行輸入功能,再判斷是不是符合條件。至少執行1次。
```
do
{
sum +=i;
i++;
} while (i<=100);
```

# for循環
操作從1-100的累計和:
```
for (i=1; i<=100; i++)
{
sum += i;
}
console.writeline(sum);
console.readline();
```
## for 變體
> 語句可以省略,但分號不能省略。
1. 省略第一個賦值,但需要初始化值。分號不能省略。
```
int i=1;
for(; i<=100;i++){}
```
for 語句后面沒有分號; 不然輸出結果為101。
2. 如果沒有寫第二條語句,可能死循環。
3. 但有時候人為造成死循環。比如不斷要求輸入用戶名:

```
for(;;)
{
console.writeline("please enter your name:");
console.readline();
}
```

在for語句中,表達式1與表達式3都可以用逗號連接多個條件,但表達式2不行,只能用&& 來連接
```
for (i = 1; i<=100 && i>0; i++)
{
sum +=i;
}
```
若寫成 for (i = 1; i<=100,i>0; i++)則有錯誤提示

## for打印9×9乘法表
定義一個行變量i,再定義一個列變量j
```
int i,j;
for(i=1; i<10; i++)
{
for(j=1; j<=i; j++)
{
console.write("{0}×{1} = {2}", i, j, i*j); //這里{0}是占位符的意思。
console.write(" "); //這里的意思是保證每個結果之間有間隙,不會擠一起
}
console.writeline(); //這里意思是一行完了以后就換行
}
console.readline();
```


# 死循環操作
## break
用于跳出死循環,如`for(i=1; ; i++)`。可處理如下:
```
int i, sum;
for(i=1; ; i++)
{
if(i>100)
{
**break;**
}
sum += i;
}
```
## continue 一般與if語句搭配使用
比如,如果求2+4+6+8+……+100偶數之和,則可以用contin語句
```
int i, sum=0;
for(i=1;i<=100; i++)
{
if(i %% 2 == 1) // 意思就是,如果不是偶數,則跳過,繼續CONTINUE
{
continue;
}
sum += i;
}
console.writeline(sum);
console.readline();
```

## break 與 continue區別
遇到break以后,直接跳過while括號內的語句,不再執行。若遇到continue,則繼續執行新一次while語句循環,直到條件滿足,再繼續。
break 需用在switch語句中,continue只能用在for循環語句中與if配套使用,不能單獨用在if語句中。
```
if(i<10)
{
break;
}
```
則提示錯誤
- 幫助文檔 microsoft helo viewer
- c#開發環境及visual studio安裝注意事項
- c#程序基本結構-基本語法
- Q1: public static void main(String[] args) 是什么意思
- Q2: c#命名空間+Main方法
- Q3:注釋+命名規則+代碼規則
- Q4: c#語句 system => console
- Q5: 數據類型 .net
- Q5: 常用名字、變量、運算符
- Q6: 對話窗輸入-屬性
- Q7: 遞歸
- Q8:決策分支、條件判斷語句 if 語句
- Q9:數組
- Q10:字符串
- Q11:對象、類、訪問權限、靜態動態函數
- Q12:方法及參數——繼承于類
- Q13:構造函數
- Q14:繼承——base 關鍵字
- Q15:多態、虛方法、接口
- Q16:創建窗體應用、控件
- Q17:Ado數據訪問、連接 sqlserver 數據庫
- Q18: 讀取數據command + DataRead( )、DataSet + DateAdapter
- Q19: Entity Framwork、entity 與 ADO.net的區別
- Q20: 對話框、文件、文件夾
- Q21: 導入excel數據、更新到 dbo 數據庫中
- Q26: 獲取 excel 中每個 sheet 的表名
- Q22: 兩個窗體之間數據+方法傳遞
- Q23: 數學對象
- Q24: c#網站編寫
- Q25: visual studio2017如何查看幫助
- Q27: c# dictionary 字典對象
- Q28: 數組與dataTable互相轉化