while循环
while(循环判断的条件)如果为真就会继续循环
{
循环体;
}
//死循环
while(true)
{
Console.WriterLine(1);
}
想要控制循环的次数 只要让循环条件一开始为真,进行改变,有一次为假
中间变量 来控制循环的条件
int i = 1;
while (i < 10)
{
Console.WriterLine(i);//i的值从1变成10
//让i增加 才有可能为假
}
练习1
int n = Convert.ToInt32(Console.ReadLine());
int sum = 0;
int i= 1;
while(i<=n)
{
sum += i;
}
Console.WriteLine(sum);
练习2 输出1-100的所有偶数
int a = 1;
while(a<=100)
{
if (a % 2 == 0)
Console.WriteLine(a);
a++;
}
练习三 记录次数
int count = 0;
int n = Convert.ToInt32(Console.ReadLine());
while (n != 1)
{
if (n % 2 != 0)
{
n = 3 * n + 1;
}
else
{
n = n / 2;
}
count++;
Console.WriteLine(count);
double
double num = 1.24567;
Console.WriteLine(num.ToString("000"));
练习
Console.WriteLine("请输入学生的个数");
int n=Convert.ToInt32(Console.ReadLine());
int k = n;
int sum = 0;
while (n > 0)
{
sum=Convert.ToInt32(Console.ReadLine());
n--;//假设n是4
}
double averange = (sum * 1.0) / k;//两个整数相除不管整不整除结果都是整数
Console.WriteLine(averange.ToString("0.00"));
for循环
for(初始值;表达式;增量表达式)
{
循环体
}
for(; ; )//表示死循环
{
Console.WriteLine(1);
}
for (int i = 1; i < 10; i++)//1-9
{
Console.WriteLine(i);
}
int i = 1;
for (; i < 10; i++)
{
Console.WriteLine(i);//1-10
}
Console.WriteLine(i);
int i = 1;
for (; i < 10; i++)
{
Console.WriteLine(i);//1-10 break 跳出循环 continu跳出当前这一次循环继续进入下一次循环
continue;
}
Console.WriteLine(i);
练习 输入两个正整数n和m,计算n和m之间(包含n和m)所有能被17整除的数的和,并输出和。
Console.WriteLine("请输入第一个数");
int n = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("请输入第二个数");
int m = Convert.ToInt32(Console.ReadLine());
int sum = 0;
Console.WriteLine("\n");
for (; n < m; n++)
{
if (n % 17 == 0)
{
Console.WriteLine(n);
sum += n;
}
}
Console.WriteLine(sum);
do....while循环
do{
//循环体
}while(条件表达式);
int num1 = 0;
do
{ //不管循环条件是否为真,一定会执行一次
Console.WriteLine(num1);
num1++;
} while (num1 < 10);
练习 输入一个整数a,再输入一个正整数n,求a的n次方
Console.WriteLine("请输入一个整数a");
int a=Convert.ToInt32(Console.ReadLine());
Console.WriteLine("请输入一个正整数n");
int n = Convert.ToInt32(Console.ReadLine());//n=2 a*a n=3 a*a*a
int multiply = 1;
for(int i=1;i<=n;i++)
{
multiply *=a;
}
Console.WriteLine(multiply);
练习 球落地
double height = Convert.ToDouble(Console.ReadLine());
double road = 0;
int i = 1;
while (i <= 10)
{
height /= 2;
road += height * 3;//
i++;
}
Console.WriteLine("反弹{0}经过{1}米",height,road);