码迷,mamicode.com
首页 > Web开发 > 详细

.NET基础 一步步 一幕幕[循环、逻辑语句块]

时间:2016-12-21 18:31:22      阅读:232      评论:0      收藏:0      [点我收藏+]

标签:没有   res   targe   执行   ret   多条件   简单   ide   pst   

 

循环、逻辑语句块

 

好久不写博客了,断更了好几天了,从上周五到今天,从北京到上海,跨越了1213.0公里,从一个熟悉的城市到陌生的城市,还好本人适应力比较好,还有感谢小伙伴的接风咯,一切都不是事,好了,进入正题:

 

本篇还是.NET 基础部分咯,主要简述循环,判断:

 

循环:

for循环

语法:

for(表达式1;表达式2;表达式3)

{

       循环体;

}

表达式1一般为声明循环变量,记录循环的次数(int i=0;)

表达式2一般为循环条件(i<10)

表达式3一般为改变循环条件的代码,使循环条件终有一天不再成立(i++)。

执行过程:程序首先执行表达式1,声明了一个循环变量用来记录循环的次数,

然后执行表达式2,判断循环条件是否成立,如果表达式2返回的结果为true,

则执行循环体。当执行完循环体后,执行表达式3,然后执行表达式2继续判断循环条件是否成立,如果成立则继续执行循环体,如果不成立,则跳出for循环。

 

 案例:

技术分享

注:如案例中的“水仙花数” 不懂自行百度。

 

foreach循环:

语法:

foreach(数据类型 标识符 in 表达式)

{

循环体

}

 

foreach (type identifier in expression)

{

Statement

}

其中:

type

identifier 的类型。

identifier

表示集合元素的迭代变量。如果迭代变量为值类型,则无法修改的只读变量也是有效的。

expression

对象集合或数组表达式。集合元素的类型必须可以转换为 identifier 类型。请不要使用计算为 null 的表达式。

而应计算为实现 IEnumerable 的类型或声明 GetEnumerator 方法的类型。在后一种情况中,GetEnumerator 应该要么返回实现 IEnumerator 的类型,要么声明 IEnumerator 中定义的所有方法。

statement

要执行的嵌入语句。

 

案例:

 技术分享

注:案例中技术分享是声明一个int类型的数组。以后的篇章中会讲述到数组、集合。

 

while循环

语法:

while(循环条件)

{

         循环体;

}

执行过程:程序运行到while处,首先判断while所带的小括号内的循环条件是否成立,

如果成立的话,也就是返回一个true,则执行循环体,执行完一遍循环体后,再次回到

循环条件进行判断,如果依然成立,则继续执行循环体,如果不成立,则跳出while循环。

在while循环当中,一般总会有那么一行代码,能够改变循环条件,使之终有一天不再成立,

如果没有那么一行代码能够改变循环条件,也就是循环条件永远都成立,我们称之这种循环

叫做死循环。

最简单的最常用的死循环:

while(true)

{

 

}

特点:先判断,再执行,有可能一遍循环都不执行。

 

案例:

 技术分享

 

do-while循环

语法:

do

{

         循环体;

}while(循环条件);

执行过程:程序首先会执行do中的循环体,执行完成后,去判断do-while循环的循环条件,

如果成立,则继续执行do中的循环体,如果不成立,则跳出do-while循环。

特点:先循环,再判断,最少执行一遍循环体。

 

案例:

 技术分享

 

嵌套循环:外层循环用来控制输出的行数,内层循环用来控制输出的列数

for(表达式1;表达式2;表达式3)

{

       for(表达式1;表达式2;表达式3)

{

    循环体;

}

}

 

例如99乘法表:

 技术分享

 

逻辑语句块:

if语句

语法:

if(判断条件)

{

         要执行的代码;

}

判断条件:一般为关系表达式或者bool类型的值。

执行过程:程序运行到if处,首先判断if所带的小括号中的判断条件,

如果条件成立,也就是返回true,则执行if所带的大括号中的代码,

如果判断条件不成立,也就是返回一个false。则跳过if结构,继续向下执行。

 

if结构的特点:先判断,再执行

 

案例:

 技术分享

 

if-else

语法:

if(判断条件)

{

         执行的代码;

}

else

{

         执行的代码

}

执行过程:程序执行到if处,首先判断if所带的小括号中的判断条件是否成立,

如果成立,也就是返回一个true,则执行if所带的大括号中的代码,

执行完成后,跳出if-else结构。

如果if所带的小括号中的判断条件不成立,也就是返回一个false,

则跳过if语句,执行else所带的大括号中的语句,执行完成后,跳出if-else结构。

 

if-else特点:先判断,再执行,最少都要执行一条代码。

用于两种情况的判断

 

注意:else永远跟离它最近的那个if配对

 

案例:

 技术分享

 

if else-if

作用:用来处理多条件的区间性的判断。

语法:

if(判断条件)

{

         要执行的代码;

}

else if(判断条件)

{

         要执行的代码;

}

else if(判断条件)

{

         要执行的代码;

}

else if(判断条件)

{

         要执行的代码;

}

........

else

{

         要执行的代码;

}

执行过程;程序首先判断第一个if所带的小括号中的判断条件,如果条件成立,也就是返回一个true,

则执行该if所带的大括号中的代码,执行完成后,立即跳出if else-if结构。

如果第一个if所带的判断条件不成立,也就是返回一个false,则继续向下进行判断,依次的判断每一个if所带

的判断条件,如果成立,就执行该if所带的大括号中的代码,如果不成立,则继续向下判断,

如果每个if所带的判断条件都不成立,就看当前这个if else-if结构中是否存在else。

如果有else的话,则执行else中所带的代码,如果没有else,则整个 if-else if神马都不做。

else可以省略。

 

案例:

 技术分享

 

根据上边你就是会看出if else-if 在条件特别多的时候会导致代码很长很不好看,这时我们会用另一个来替换:

switch-case

用来处理多条件的定值的判断。

语法:

switch(变量或者表达式的值)

{

         case 值1:要执行的代码;

         break;

         case 值2:要执行的代码;

         break;

         case 值3:要执行的代码;

         break;

         ..........

         default:要执行的代码;

         break;

}

执行过程:程序执行到switch处,首先将括号中变量或者表达式的值计算出来,

然后拿着这个值依次跟每个case后面所带的值进行匹配,一旦匹配成功,则执行

该case所带的代码,执行完成后,遇到break。跳出switch-case结构。

如果,跟每个case所带的值都不匹配。就看当前这个switch-case结构中是否存在

default,如果有default,则执行default中的语句,如果没有default,则该switch-case结构

什么都不做。

 

案例:

 技术分享

 

最后来个彩蛋

break ,continue ,return 的区别及作用:

第一:break语句通常用在循环语句和开关语句中,当break语句用于do-while、for、while循环语句中时,可使程序终止循环而执行循环后面的语句, 通常break语句总是与if语句联在一起,即满足条件时便跳出循环。例如:注意:
1)       break语句对if-else的条件语句不起作用。
2)       在多层循环中, 一个break语句只向外跳一层。

第二:continue语句的作用是跳过循环本中剩余的语句而强行执行下一次循环。continue语句只用在for、while、do-while等循环体中,常与if条件语句一起使用,用来加速循环。其实就是continue跳过一次循环以及后面的语句,进行下次循环。

第三: return语句是将函数的值返回主调函数。例如:
return  语句的一般形式为:
return 表达式
或者为:
return (表达式)

 

好了 , 本篇就到这里了,另本篇提供的案例只有截图,没有运行的结果,请自行处理咯。希望能对初学者带来帮助,更希望大神能带带我们,带我们装逼,带我们飞。。。

最后打个小广告:QQ群: .NET 一步步一幕幕   群号:590170361 (加群备注:博客园看到的)

.NET基础 一步步 一幕幕[循环、逻辑语句块]

标签:没有   res   targe   执行   ret   多条件   简单   ide   pst   

原文地址:http://www.cnblogs.com/yuhangwang/p/6208514.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!