程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> C# >> C#入門知識 >> C# 循環語句 for循環,

C# 循環語句 for循環,

編輯:C#入門知識

C# 循環語句 for循環,


循環:反復執行某段代碼。

循環四要素:初始條件,循環條件,循環體,狀態改變。
for(初始條件;循環條件;狀態改變)
{
循環體
}

給出初始條件,先判斷是否滿足循環條件,如果不滿足條件則跳過for語句,如果滿足則進入for語句執行,for語句內的代碼執行完畢後,將按照狀態改變,改變變量,然後判斷是否否和循環條件,符合則繼續執行for語句內的代碼,直到變量i不符合循環條件則終止循環,或者碰到break命令,直接跳出當前的for循環。

break ——中斷循環,跳出循環
continue——停止本次循環,進入下次循環

循環(for)和分支語句(if  else等)可以相互嵌套

 

死循環:

for (; ; )
{
 Console.WriteLine("Hello");
}

注意:程序中不允許出現死循環!

應用

循環語比較繁瑣,多加練習

1.輸入一個整數,計算從1加到這個數的結果
Console.Write("請輸入一個正整數:");
int a = int.Parse(Console.ReadLine());
int sum = 0;
for (int i = 1; i <= a; i++)
{
sum += i;//sum=sum+i;
}

Console.WriteLine(sum);
Console.ReadLine();

2.輸入一個正整數,求階乘
Console.Write("請輸入一個正整數:");
int a = int.Parse(Console.ReadLine());
int sum = 1;
for (int i = 1; i <= a; i++)
{
sum *= i;//sum=sum*i;
}

Console.WriteLine(sum);
Console.ReadLine();

3.輸入一個正整數,求階乘的和1!+2!+...+n!
Console.Write("請輸入一個正整數:");
int a = int.Parse(Console.ReadLine());
int sum = 1;
int sum1 = 0;
for (int i = 1; i <= a; i++)
{
sum *= i;//sum=sum*i;
if (i == 4)//不想要4的
{
continue;//終止本次循環,繼續下次循環
}
sum1 += sum;
}

Console.WriteLine(sum1);
Console.ReadLine();

 

4.一個游戲,前20關是每一關自身的分數,
21-30關每一關是10分
31-40關,每一關是20分
41-49關,每一關是30分
50關,是100分
輸入你現在闖到的關卡數,求你現在擁有的分數
兩種做法:if嵌套for for嵌套if
(1)Console.Write("請輸入您現在闖到的關卡數:");

int guan = int.Parse(Console.ReadLine());
if (guan >= 1 && guan <= 50)
{
int sum = 0;
if (guan <= 20)
{
for (int i = 1; i <= guan; i++)
{
sum += i;
}
}
else if (guan <= 30)
{
for (int i = 1; i <= 20; i++)
{
sum += i;
}
for (int i = 21; i <= guan; i++)
{
sum += 10;
}
}
else if (guan <= 40)
{
for (int i = 1; i <= 20; i++)
{
sum += i;
}
for (int i = 21; i <= 30; i++)
{
sum += 10;
}
for (int i = 31; i <= guan; i++)
{
sum += 20;
}
}
else if (guan <= 49)
{
for (int i = 1; i <= 20; i++)
{
sum += i;
}
for (int i = 21; i <= 30; i++)
{
sum += 10;
}
for (int i = 31; i <= 40; i++)
{
sum += 20;
}
for (int i = 41; i <= guan; i++)
{
sum += 30;
}
}
else//50關
{
for (int i = 1; i <= 20; i++)
{
sum += i;
}
for (int i = 21; i <= 30; i++)
{
sum += 10;
}
for (int i = 31; i <= 40; i++)
{
sum += 20;
}
for (int i = 41; i <= 49; i++)
{
sum += 30;
}
sum += 100;
}
Console.WriteLine(sum);
}
else
{
Console.WriteLine("輸入有誤!");
}
Console.ReadLine();

 

 

(2)Console.Write("請輸入您現在闖到的關卡數:");
int guan = int.Parse(Console.ReadLine());
if (guan <= 50 && guan >= 1)
{
int sum = 0;
for (int i = 1; i <= guan; i++)
{
if (i <= 20)
{
sum += i;
}
else if (i <= 30)
{
sum += 10;
}
else if (i <= 40)
{
sum += 20;
}
else if (i <= 49)
{
sum += 30;
}
else
{
sum += 100;
}
}
Console.WriteLine(sum);
}
else
{
Console.WriteLine("輸入有誤!");
}
Console.ReadLine();

 


5.找出100以內與7有關的數並打印、
(1).從1找到100
(2).找出與7有關的數
個位數是7 a%10==7
十位數是7 a/10 ==7
能被7整除 a%7 ==0
for (int i = 1; i <= 100; i++)
{
if (i % 7 == 0 || i % 10 == 7 || i / 10 == 7)
{
Console.Write(i+"\t");
}
}
Console.ReadLine();

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved