在c#中有许多循环语句,比如基本的switch-case语句、while循环、do-while循环、for循环。
switch-case语句的语法:switch(表达式){case:值1;语句块一;break:case值2;语句块2:break;..........default:相应语句块:break;}执行过程是:计算switch表达式并将结果与case值匹配,在搜索匹配项时,无论default项在哪都会搜索所有的匹配项,而且switch表达式的值类型必须与case的值类型一致!switch-case语句和if-else if类似都可以实现多分支结构,但是switch-case一般只用于等值比较,而if-else if则可以处理范围!
while和do-while循环,while是先判断循环条件后执行循环体,do-while则先执行一次循环体再判断循环条件是否成立,while循环的循环体如果没用{}括起来则while循环的循环体是条件语句后的一句话而已!
for循环,当已知循环次数时一般用for循环,for循环的语法:for(表达式1;表达式2;表达式3){循环体;},而在for 循环内的定义的变量,他的作用域和使用周期只在for循环内,跳出for循环则便消失清除!for循环的三个表达式可以不写for(;;),表示一个死循环!
break用于循环中退出当前循环,break用于switch-case判断中,用于跳出switch循环,break在嵌套的循环中跳出的是其所在的循环!
continue用于立即结束本次循环,然后判断循环条件是否成立,如果成立,则进入下一次循环中,否则就退出当前的循环,而对于for循环,则continue的作用是,先执行一次表达式3,然后再判断循环条件是否成立!用法简单举例如下:
int j = 0;//计算1~100之间逐个相加到哪个当前数的值大于等于20
for ( j= 1; j <= 100; j++)
{
sum2 += j;
if (sum2 >= 20)
{
break;
}
} Console.WriteLine("当前数为:{0}", j);
Console.ReadKey();
int count=1,sum3=0;//计算1~100之间所有不能被7整除的数的和
while ( count <= 100)
{
//if (count % 7 != 0)
//{ sum3 += count; count++; }
//else { count++; }
if (count % 7 == 0)
{ count++; continue; }
sum3 += count; count++;
}
Console.WriteLine(sum3);
Console.ReadKey();