迴圈 異常捕獲

2022-02-25 09:32:16 字數 4287 閱讀 1266

1、異常捕獲

我們在程式中經常會出現各種各樣的異常,你如果想要你的程式變得堅強一些。

在你的**中應該經常性的使用try-catch來進行異常捕獲。

哪行**有可能出現異常,你try住它。

語法:try

可能會出現異常的**;

catch

出現異常後要執行的**;

執行過程:如果

try中的**沒有出現異常,那麼

catch

中的**不會執行。

如果try中的**出現了異常,那怕這行出現異常的**後面還有一百行都不會執行了,

而是直接跳到catch中執行**。

//語法上沒有錯誤,在程式執行的過程當中,由於某些原因程式出現了錯誤,不能再正常的執行。

bool b = true;

int number=0;//宣告了乙個變數

console.writeline("請輸入乙個數字");

trycatch

//我們如果要執行下面這行**,需要滿足某些條件。

//讓**滿足某些條件去執行的話,使用bool型別

if (b)

console.readkey();

2、變數的作用域

變數的作用域就是你能夠使用到這個變數的範圍。

變數的作用域一般從宣告它的那個括號開始到那個括號所對應的結束的括號結束。

在這個範圍內,我們可以訪問並使用變數。超出這個範圍就訪問不到了

3、switch-case

用來處理多條件的定值的判斷。

語法:switch(變數或者表示式的值

)case 值

1:要執行的**

;break;

case 值

2:要執行的**

;break;

case 值

3:要執行的**

;break;

default:要執行的**

;break;

執行過程:程式執行到switch處,首先將括號中變數或者表示式的值計算出來,

然後拿著這個值依次跟每個case後面所帶的值進行匹配,一旦匹配成功,則執行

該case所帶的**,執行完成後,遇到

break

。跳出switch-case

結構。如果,跟每個case所帶的值都不匹配。就看當前這個

switch-case

結構中是否存在

default,如果有

default

,則執行

default

中的語句,如果沒有

default

,則該switch-case

結構什麼都不做。

//練習:數字校驗

bool b = true;

int num = 0;

console.writeline("請輸入乙個數字");

trycatch

if (b)//如果b為true則執行,false不執行

console.readkey();

//try-catch和switch-case組合

//年份練習:請使用者輸入年份、月份,輸出該月的天數

console.writeline("請輸入乙個年份");

tryelse

break;

default: day = 30;

break;

}console.writeline("年月日", year, month, day);

}//if月份判斷

else

}//月份的try括號

catch

}//年份的try括號

catch

console.readkey();

4、迴圈結構

while迴圈:

while(迴圈條件

)迴圈體;

執行過程:程式執行到while處,首先判斷

while

所帶的小括號內的迴圈條件是否成立,

如果成立的話,也就是返回乙個true,則執行迴圈體,執行完一遍迴圈體後,再次回到

迴圈條件進行判斷,如果依然成立,則繼續執行迴圈體,如果不成立,則跳出while迴圈。

在while迴圈當中,一般總會有那麼一行**,能夠改變迴圈條件,使之終有一天不再成立,

如果沒有那麼一行**能夠改變迴圈條件,也就是迴圈條件永遠都成立,我們稱之這種迴圈

叫做死迴圈。

最簡單的最常用的死迴圈:

while(true)

//求1-100之間所有偶數的和

//迴圈體:累加的過程

//迴圈條件:i<=100

//int i = 1;

//int sum = 0;//宣告乙個變數用來儲存總和

//while (i <= 100)

//// i++;

//}

特點:先判斷,再執行,有可能一遍迴圈都不執行。

5、break

1)、可以跳出

switch-case

結構。2)、可以跳出當前迴圈。

break一般不單獨的使用,而是跟著

if判斷一起使用,表示,當滿足某些條件的時候,就不再迴圈了。

//int i = 1;

//int j=1;

//while (i <= 10)

//// console.writeline("我是外面的while迴圈");

// i++;

// //break;//解開break看看

//}

continue僅跳出本次迴圈,並不結束整個迴圈。

//練習1:用 while continue實現計算1到100(含)之間的除了能被7整除之外所有整數的和。

int sum = 0;

int i = 1;

while (i <= 100)

sum += i;

i++;

}console.writeline(sum);

console.readkey();

6、do-while

迴圈。語法:

do迴圈體;

}while(迴圈條件

);執行過程:程式首先會執行

do中的迴圈體,執行完成後,去判斷

do-while

迴圈的迴圈條件,

如果成立,則繼續執行do中的迴圈體,如果不成立,則跳出

do-while

迴圈。特點:先迴圈,再判斷,最少執行一遍迴圈體。

int i = 1;

int sum = 0;

doi++;

}while (i<0) ; //即便i=1<0,第一次還是直接執行。

console.writeline(sum);

console.readkey();

2、for迴圈

語法:for(表示式1;表示式2;表示式3)

表示式1一般為宣告迴圈變數,記錄迴圈的次數(int i=0;)

表示式2一般為迴圈條件(i<10)

表示式3一般為改變迴圈條件的**,使迴圈條件終有一天不再成立(i++)。

執行過程:程式首先執行表示式1,宣告了乙個迴圈變數用來記錄迴圈的次數,

然後執行表示式2,判斷迴圈條件是否成立,如果表示式2返回的結果為true,

則執行迴圈體。當執行完迴圈體後,執行表示式3,然後執行表示式2繼續判斷迴圈條件是否成立,

如果成立則繼續執行迴圈體,如果不成立,則跳出for迴圈。

//簡單例子

for (int i = 0; i < 100; i++)    

console.writeline(i);    

}             console.readkey();

/求1-100之間的所有奇數和

//int sum = 0;

//int n = 100;

//for (int i = 1; i <= n; i += 2)

////找出100-999間的水仙花數

//水仙花數指的就是 這個百位數字的

//百位的立方+十位的立方+個位的立方==當前這個百位數字

//153

//百位:153/100

//十位:153%100/10

//個位:153%10

for (int i = 100; i <= 999; i++)

",i);}}

console.readkey();

While迴圈中的異常捕獲

import random print 石頭剪刀布遊戲開始 print 請按照下面的提示進行出拳 li 剪刀 石頭 布 information f open result.txt w encoding utf8 while true print 剪刀 石頭 布 退出遊戲 try receive in...

mysql異常捕獲 MySql中捕獲異常的方法

下面是程式設計之家 jb51.cc 通過網路收集整理的 片段。mysql中是否能有sqlserver的 error變數呢,或者如c 中的try catch語法呢。答案是肯定的,例項 如下 code drop procedure if exists sp call jobs create proced...

關於異常捕獲

你可以查一下你的sdk,裡面有很多的exception的定義,其基類其實都是system.exception一樣。但system.exception只提供了一些一般異常的處理。更多的需要專業的來處理。比如找不到檔案,你必須捕捉system.io.filenotfoundexception這個異常。在...