循环:反复执行某段代码。
循环四要素:初始条件,循环条件,循环体,状态改变。
for(初始条件;循环条件;状态改变)
{
循环体
}
break ——中断循环,跳出循环,
continue——停止本次循环,进入下次循环,
例题:
//输入一个整数,计算从1加到这个数的结果
Console.Write("输入整数n=");
int n = int.Parse(Console.ReadLine ());
int sum=0;
for(int i=1;i<=n;i++) //int i=1:为此程序循环的初始条件 ;i<=n:为循环条件 ;i++:为改变状态;
{
sum= sum + i;
}
Console.Write(sum);
输入一个年份,判断是否是闰年(能被4整除却不能被100整除的年份。世纪年份能被400整除的是闰年)
for (; ; )//无初始条件;循环条件次循环为死循环
{
Console.Write("输入年年份y:");
int y = int.Parse(Console.ReadLine());
if (y > 0 && y <= 99999)
{
if (y % 4 == 0 && y % 100 != 0 || y % 400 == 0)
{
Console.Write(y + "是闰年");
}
else
{
Console.Write(y + "是平年");
} break; //表示如果为真跳出循环;
}
else
{
Console.Write("你输入的年份有误请重新输入:");
}
}
//一个游戏,前20关是每一关自身的分数,
//21-30关每一关是10分
//31-40关,每一关是20分
//41-49关,每一关是30分
//50关,是100分
//输入你现在闯到的关卡数,求你现在拥有的分数
//两种做法:if嵌套for for嵌套if
Console.Write("请输入关卡数n:");
int n = int.Parse(Console .ReadLine ());
if (n >= 0 && n <= 50)
{
int s = 0;
if(n>0&&n <=20)
{
for (int i=1; i<=n;i++ ) //前201到 n求和
{
s = s + i;
}
}
else if(n>=21&&n<=30)
{
for (int i = 1; i <= 20; i++)
{
s = s + i; // 此时s为前二十的和
}
for (int i = 21; i <= n;i++ )
{
s = s + 10;
}
}
else if (n >= 31 && n <= 40)
{
for (int i = 1; i <= 20; i++)
{
s = s + i;
}
for (int i = 21; i <= 30; i++)
{
s = s + 10;
}
for (int i = 31; i <=n ; i++)
{
s = s + 20;
}
}
else if (n >= 41 && n <= 49)
{
for (int i = 1; i <= 20; i++)
{
s = s + i;
}
for (int i = 21; i <= 30; i++)
{
s = s + 10;
}
for (int i = 31; i <= n; i++)
{
s = s + 20;
}
}
else
{
for (int i = 1; i <= 20; i++)
{
s = s + i;
}
for (int i = 21; i <= 30; i++)
{
s = s + 10;
}
for (int i = 31; i <= 49; i++)
{
s = s + 20;
}
s = s + 100;
}
Console.Write(s);
}
else
{
Console.Write("你输入的关卡数有误");
}
Console.Write("请输入关卡数n:");
int n = int.Parse(Console.ReadLine());
int s = 0;
if (n >= 0 && n <= 50)
{
for (int i = 1; i <= n; i++)
{
if (i > 0 && i <= 20)//这里不是n而是i 避免重复循环
{
s = s + i;
}
else if (i >= 21 && i <= 30)
{
s = s + 10;
}
else if (i >= 31 && i <= 40)
{
s = s + 20;
}
else if (i>= 41 && i <= 49)
{
s = s + 30;
}
else
{
s = s + 100;
}
}
}
else
{
Console.Write("你输入的关卡数有误");
}
Console.Write(s);