C#while循环,break,continue,do...while循环的区别
·
1.while 和 do…while 的核心区别(必背)
while:先判断,后执行 → 可能一次都不跑
do…while:先执行,后判断 → 至少跑一次
2.break 是什么?
作用:直接跳出【整个循环】,只要遇到 break,循环立刻结束,后面的循环全部不执行
3.continue 是什么?
作用:跳过【本次循环】,继续下一次,只跳过当前这一圈,循环不会结束,继续跑
4.break 和 continue 的核心区别(超级好记)
break:结束整个循环 → 彻底不玩了
continue:跳过本次 → 继续玩下一把
第一大块:while 基础循环
1. while 循环基础说明
//循环:当代码需要执行很多次的时候 ,可以使用循环语句
//while循环
// while(){}:当小括号条件成立了 执行{}里面的东西,条件不成立的时候,循环就结束了
2. 简单死循环 + break 跳出
while (true) //true 就是永远成立 一直执行{}
{
Console.WriteLine("死循环");
break;//跳出死循环 只会执行一次
}
3. 输入 yes/no 控制死循环
while (true) //死循环
{
Console.WriteLine("请输入yes/no"); //如果输入的是yes 一直输入,输入为no的时候 跳出循环
string name = Console.ReadLine();//等待用户输入的一个过程
if (name =="no") //
{
break;
}
}
4. while 有限次数循环(0~9 输出)
// 使用while循环 执行有限次数循环
int i = 0;
while (i<10)
{
Console.WriteLine(i);
//更新i的值 直到i的值大于等于10,条件不成了,循环就不在执行
i++;
}
5. 循环执行步骤注释
/* 1 先执行 i = 0
* 2 再判断i是否小于10 如果小于10执行{}
* 3 再去i++ 变成1
* 4 再去判断i是否小于10 如果小于10 再去执行{}
* 5 再执行i++ 一直到条件不成立时候 跳出循环
*
*/
6. while 实现 0~100 累加求和
//0+1+2....100
int j = 0;
int sum = 0;//总和
while (j<101)
{
sum = sum + j; // j 0 1 2 3 ...100
j++;
/*
sum = sum + j
0 0 0
0+1 0+0 1
0+1+2 0+1 2
0+1+2+3 0+1+2 3
*
*
*/
}
Console.WriteLine(sum);
7. while+if 求 0~100 偶数和
//while循环和if条件嵌套
//0-100之间偶数和
int a = 0;
int sum1 = 0;
while (a<101)
{
if (a%2==0)
{
sum1 += a;
}
// a+=2; a 0 2 4 6 8...100
a++; // a 0 1 2 3 ...
}
Console.WriteLine(sum1);//2550
8. 找到 0~100 第一个能被 3 整除的偶数
// 0-100之间能够被三整除的偶数 找到第一个
int count = 1;
while (count<101)
{
if (count%3==0)
{
if (count%2==0)
{
Console.WriteLine(count);
break;
}
}
count++;
}
9. 输出前 5 个能被 3 整除的偶数
//打印前5个 需要找一个变量记录满足条件当前的个数
int count1 = 1;
int 个数 = 0; //计数器 记录个数变量
while (count1 < 101)
{
if (count1 % 3 == 0)
{
if (count1 % 2 == 0)
{
Console.WriteLine(count1);
个数++;
if (个数==5)
{
break;//跳出循环
}
}
}
count1++;
}
第二大块:break 与 continue 用法区分
1. continue 基础演示(跳过本次循环)
//continue:继续,不会跳出循环,只会跳出当前循环, 后续的循环继续执行
// break :跳出整个循环
int i = 0;
while (i<4)
{
i++;
if (i == 2)
{
continue;//继续下次循环
}
Console.WriteLine(i);//1 3 4
}
2. break 基础演示(跳出整个循环)
// break 跳出整个循环
int i1 = 0;
while (i1 < 4)
{
i1++;
if (i1 == 2)
{
break;//
}
Console.WriteLine(i1);//1
}
3. continue 输出 1~100 所有偶数
//输出1-100之间所有的偶数 continue
int b = 0; //1初始值
while (b<101) // 2循环条件
{
b++; //3 循环递增量
if (b%2!=0)// b是奇数 cw就不要再去执行了 需要跳出来
{
continue;
}
Console.WriteLine(b+"---------");
}
4. continue+break 混合使用案例
int aaa = 0;
while (aaa<10)
{
aaa++;
if (aaa==3)
{
continue;//跳出当前循环
}
if (aaa==6)
{
Console.WriteLine(aaa+"???????"); // 6
break;//跳出整个循环 只要break 后面cw不在执行
}
Console.WriteLine(aaa+"+++++++");//1 2 4 5
}
第三大块:do‑while 循环
1. do‑while 基础特性演示
while (false) //先判断 条件不成立 就不再去执行{}
{
Console.WriteLine("ssss"); // 提示 有可能执行不到代码
}
//while 先判断条件 再去执行
//do...while:先去执行一次,再去判断条件,最起码执行一次
do //先执行 最后判断
{
Console.WriteLine("do...while流程控制");
} while (false);
2. 注释版:while 实现正数输入(备用)
#region 如果用户输入一个小于0的数 一直输入
// 如果用户输入一个小于0的数 一直输入
/*
int num = int.Parse( Console.ReadLine());
while (num<0)// 输入数不对
{
Console.WriteLine("请重新输入一个正数");
num = int.Parse(Console.ReadLine());//重新输入
}
//能够执行到该句代码 是不是就证明while循环已经结束,证明num>=0
Console.WriteLine(num+"-----------------");
*/
#endregion
3. do‑while 实现强制输入正数
//使用 do...while 修改上面的例子
int num1;
do
{
Console.WriteLine("请输入一个正数");
num1 = int.Parse( Console.ReadLine());
} while (num1<0); //num1 小于0的时候 执行{}
4. while 实现数字阶乘计算
//while实现输入数字的阶乘
Console.WriteLine("请输入一个数:");
int num2 = Convert.ToInt32(Console.ReadLine()); // 8!=8 * 7*6....1
int i = 1;//计数器
int sum2 = 1;// 代表乘积
string s = "";
while (i<=num2)
{
sum2 *= i;// 计算乘积,把每次递增i乘以到sum2
s += $"{i}*";// 字符串拼接 把i替换成递增量
i++;// 递增量
}
Console.WriteLine(s); //1*2*3*4*5*6*7*8*
Console.WriteLine(sum2);
5. do‑while 实现数字阶乘计算
//do-while 计算输入数字的阶乘
int i1 = 1; // 初始值
int sum3 = 1; //乘积
Console.WriteLine("请输入一个数");
int num3 = int.Parse(Console.ReadLine()); ;// 用户输入
do
{
sum3 *= i1;
i1++;
} while (i1<=num3); // 条件
Console.WriteLine(sum3+"//////////////////////////");
更多推荐



所有评论(0)