一、while 循環
重複做某件事情,先判斷,然後再執行循環體
例子:2006年培養學員80000人,每年增長25%,請問按此增長速度,到哪一年培訓學員人數將達到20萬人?
double student = 80000;
int year = 2006;
while (student <= 200000)
{
student *= 1.25;
year++;
}
Console.WriteLine(“{0}年時{1}”, year, student);
Console.ReadKey();
☺
二、do-while 循環
先執行一次循環體,再判斷條件是否成立
例子1:要求用戶輸入用戶名和密碼,只要不是admin,888888就一直提示用戶名或密碼錯誤,請重新輸入。
string name = "";
string pwd = "";
do
{
Console.WriteLine("請輸入賬號");
name = Console.ReadLine();
Console.WriteLIne("請輸入密碼");
pwd = Console.ReadLine();
}while (name != "admin" || pwd != "888888");
Console.WriteLIne("程序結束");
Console.ReadKey();
例子2:不斷要求用戶輸入學生姓名,輸入q結束。
string name = "";
do
{
Console.WriteLine("請輸入姓名");
name = Console.ReadLine();
}while (name != "q");
Console.WriteLine("程序結束");
Console.ReadKey();
☺
三、for 循環
例子1:連續輸出100次“我下次一定細心”(分別用 while 循環,和 for 循環)
1、while 循環
int i = 0;
while (i<100)
{
Console.WriteLIne("我下次一定細心");
i++;
}
Console.ReadKey();
2、for 循環
for(int i = 0; i<100; i++)
{
Console.WriteLIne("我下次一定細心");
}
Console.ReadKey();
☺
四、循環小結 & 程序調試
小結:
1、一般知道了循環的次數,會用for循環比較方便
2、不知道循環多少次,就用 while, 和 do-while,這時一定要先看看是先判斷還是先執行
3、先判斷就用while,先執行就用do-while
4、初始值不滿足條件時,while循環一次都不執行,do-while 循環會執行一次
調試:
1、設置斷點(在行號前點擊空白處)
單步運行(F11 逐語句調試)
觀察變量(鼠標放在變量名上觀察)
F10 逐過程調試(很少用)
☺
五、綜合實例
例子:求1-100間的所有偶數和
1、第一種方法:for 循環
int sum = 0;
for (int i = 0; i <= 100; i++)
{
if (i%2==0)
{
sum +=i;
}
}
Console.WriteLIne("總和爲{0}", sum);
Console.ReadKey();
2、第二種方法
int sum = 0;
for (int i=0; i <=100; i+=2)
{
sum +=i;
}
Console.WriteLIne("總和爲{0}", sum);
Console.ReadKey();
☺
六、水仙花數 & 乘法口訣表
1、水仙花數(每一位上的立方和加起來還等於這個數)
int bai = 0;
int shi = 0;
int ge = 0;
for (int i = 100; i<=999; i++)
{
bai = i / 100;
shi = i % 100 / 10;
ge = i % 100 % 10;
if (bai * bai * bai + shi * shi * shi +ge * ge *ge ==i)
{
Console.WriteLIne(i);
}
Console.ReadKey();
}
2、乘法口訣表
for (int j = 1; j <= 9; j++)
{
for (int i = 1; j <= 9; i++)//j的條件,改爲9就是長方形,改爲j就是梯形
{
Console.WriteLIne("{0}*{1}={2}\t", i, j i*j);
}
Console.WriteLIne();
]
Console.ReadKey();
☺
七、break用法
break用於循環中,來退出當前循環
int i = 0;
while (true)
{
if (i ==5)
{
Console.WriteLIne("小李果然很帥");
break;\\寫上break之後,後面寫的都沒有用了,直接從break處跳出
Console.WriteLIne(“真的是這樣的”)//因此這句相當於作廢,Console處因此而劃綠線
}
i++;
]
Console.WriteLIne("系統識別此話是真話");
Console.ReadKey();