循環詳解和各種小細節
break:
<1>在單層循環中跳出當前循環,代碼執行到break後面的代碼不會再繼續執行,並且循環結束;
<2>在嵌套循環中跳出當前層的循環,代碼執行到break當前層循環中後面的代碼不會再執行,並且
跳出當前層的循環,繼續執行外層的循環!
continue:
跳出本次循環,當前循環如果沒有結束會繼續執行下面的循環,直到當前循環結束(例 :當前循環爲第二次,
後面還有三次循環,continue只會跳出第二次循環,後面第三次以及第N循環不受影響繼續執行)
return :
return結束當前方法和循環
<1>如果循環在Main 方法中執行到return後會直接結束程序,後面代碼不會執行
<2>如果循環在普通方法中執行到return會跳出當前循環,並且跳出方法,也就是不管循環中return
後面的代碼,還是循環結束以後方法中在當前循環後面的代碼都不會執行;
死循環 :
當循環沒有結束的條件時,循環會一直執行,稱爲死循環
循環條件:
當滿足當前循環條件是纔開始循環,循環條件一般都是bool類型的值或者表達式和邏輯表達式
while循環和do---while 循環的區別:
while循環先判斷條件,符合循環條件後執行,do---while循環會先執行一次循環體,再去判斷循環條件是否去繼續循環!
1.for 循環
循環變量:
在for循環中存在循環變量,初始化後用於記錄循環次數
<1>語法:
循環變量 ; 循環條件 ; 循環變量的自增(用於改變循環條件)
for (int i = 0; i < "循環次數"; i++)
{
循環體
}
2.while循環
注意:
while循環必須定義一個條件跳出循環,否則循環會變成死循環;
<1>語法
執行順序:
循環條件
while (true)
{
循環體
}
3.do ---while循環
注意:
do---while循環會先執行一次循環體在去判斷循環條件是否繼續循環,同樣需要一個跳出循環的條件
<1>語法:
執行順序: 先執行循環體,然後判斷條件,符合條件繼續執行循環體,直到不符合條件跳出循環體,或者形成死循環
do
{
循環體
循環條件
} while (true);
4.foreach 循環
注意:
foreach一般和集合數組連用,用來遍歷數組或者集合(取出數組或者集合中的每一個元素)
var:
全類型也叫推斷類型, var單獨聲明的時候必須先賦值,直接聲明不賦值,
編譯器不知道聲明的var是什麼類型會報錯!var的賦值可以是任何的變量類型
<1>語法:
執行順序: 執行第一次循環將數據集合(collection)中的第一個元素賦值給變量 item ,
然後執行第二次循環將數據集合(collection)中的第二個元素賦值給變量item,
再然後按照上述的順序繼續執行,直到數據集合(collection)中的最後一個元素取出!
變量名 數據集合
foreach (var item in collection)
{
循環體
}
代碼示例:
using System;
namespace 第八章循環的使用
{
class Program
{
static void Main(string[] args)
{
#region for循環
//打印九九乘法表
//第一層循環用於打印行
//i=1 ,循環到i<10 ,循環9次,對應乘法表的9行
for (int i = 1; i <10; i++)
{
//第二層循環用於打印列
//從1 開始,循環小於等於i,乘法表每行都會怎麼一個公式,所以小於i ,當i =1 時
// 代表循環1次,當等於2是循環兩,代表每列的公式數量
for (int j = 1; j <= i; j++)
{
//利用i 和 j 形成乘法口訣表的公式,不要使用 Console.WriteLine();會換行
Console.Write(" {0}*{1}={2} ",j,i,i*j);
}
//每打印一列進行一次換行
Console.WriteLine();
}
#endregion
#region while循環
//使用while循環求1到100所有奇數的和
//定義一個變量用於結束循環使用
int _num = 0;
//循環條件100次
// 定義一個變量 和 用於記錄每次相加的值
int _sum=0;
while (_num<100)
{
//判斷所1到100中誰是奇數,對2取餘不等於0的都是奇數
if (_num%2!=0)
{
//將所有的奇數相加
_sum += _num;
}
//將變量自增,以便於結束循環
_num++;
}
Console.WriteLine("所有奇數的和爲:"+ _sum);
#endregion
#region do----while循環
//提示用戶輸入 "遊戲開始"只要輸入的不是"遊戲開始",就一直提示輸入遊戲開始
//如果用戶輸入遊戲開始,打印遊戲結束,結束循環
do
{
//提示用戶輸入遊戲開始, \" 爲轉義字符,代表"" (引號)
Console.WriteLine("請輸入\"遊戲開始\"");
string _yongHuShuRu = Console.ReadLine();
if (_yongHuShuRu =="遊戲開始")
{
Console.WriteLine("遊戲結束");
break;
}
} while (true);
#endregion
#region foreach循環
//聲明一個int數組,並打印數組中的每一個元素,求出數組中元素的和!
//並找出數字中的最大值和最小值
//定義一個int變量用來記錄數組中元素的和
int _sum1 = 0;
//定義一個int 變量用來記錄最大值(int.MinValue 是int類型中的最小值)
int _maxNum = int.MinValue;
//定義一個int 變量用來記錄最小值(int.MaxValue 是int類型中的最大值)
int _minNum = int.MaxValue;
int[] _intArr = { 10,11,24,26,36,-6};
foreach (var item in _intArr )
{
//遍歷數組,把數組中的每一個元素打印出來
Console.WriteLine(item);
//計算數組中元素的和
_sum1 += item;
//求數組中的最大值
//如果最小值小於當前數組元素的值,就把當前數組元素的值賦給最大值
if (_maxNum<item)
{
_maxNum = item;
}
//求數組中的最小值
//如果最大值大於數組當前的元素,就把數組元素的值賦值給最小值
if (_minNum >item)
{
_minNum = item;
}
}
Console.WriteLine("數組的和:"+_sum1+"\n數組中最大值:"+_maxNum+"\n數組中最小值"+_minNum);
#endregion
}
}
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.