欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    第2章编程语言基础优秀课件.ppt

    • 资源ID:78737068       资源大小:2.60MB        全文页数:49页
    • 资源格式: PPT        下载积分:18金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要18金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    第2章编程语言基础优秀课件.ppt

    第第2章章编程程语言基言基础第1页,本讲稿共49页第第2章章C#编程语言基础编程语言基础2.1C#程序构成程序构成2.2C#数据类型数据类型2.3常量、变量与表达式常量、变量与表达式2.4基本结构基本结构2第2页,本讲稿共49页C#语言简介语言简介C#从从C和和C+语言演化而来,是语言演化而来,是Microsoft专门为使用专门为使用.NET平台而创建的。平台而创建的。因为因为C#是近期发展起来的。所以吸取了以前是近期发展起来的。所以吸取了以前的教训,考虑了其他语言的许多优点,并解的教训,考虑了其他语言的许多优点,并解决了它们的问题。使用决了它们的问题。使用C#开发应用程序比使开发应用程序比使用用C+简单,因为其语法比较简单。但是,简单,因为其语法比较简单。但是,C#是一种强大的语言,在是一种强大的语言,在C+中能完成的中能完成的任务在任务在C#中也能完成。中也能完成。3第3页,本讲稿共49页C、C+、C#区别区别三者都是编程语言三者都是编程语言C语言是基础语言语言是基础语言C#和和C+是高级编程语言是高级编程语言C语言是低级语言,它主要是面向过程编程的,语言是低级语言,它主要是面向过程编程的,即对一个事件的一步一步的过程编程。主函数即对一个事件的一步一步的过程编程。主函数和函数的调用和函数的调用。C+是是C语言的继承和扩展,继承的是:语言的继承和扩展,继承的是:C+中可以面向过程,扩展的是:也可以面向中可以面向过程,扩展的是:也可以面向对象,并且面向对象是它的特点。对象,并且面向对象是它的特点。C#语言是微软公司语言是微软公司.NET平台专门推出的语言,平台专门推出的语言,是是.NET支持的高级语言之一,它是在开发支持的高级语言之一,它是在开发windows程序或编写网站时用到的语言,程序或编写网站时用到的语言,4第4页,本讲稿共49页2.1C#程序构成程序构成C#程序是用命名空间组织起来的。程序是用命名空间组织起来的。命名空间使用点语法命名方案将关联的类进命名空间使用点语法命名方案将关联的类进行逻辑分组。行逻辑分组。System命名空间是命名空间是.netFramework所所有类型的根命名。有类型的根命名。System.data命名空间中包含命名空间中包含ADO.net体体系结构中的类。系结构中的类。System.web.UI命名空间中包含用于构建命名空间中包含用于构建窗体的类窗体的类一个命名空间中可以包含类或继续嵌套命名一个命名空间中可以包含类或继续嵌套命名空间。空间。5第5页,本讲稿共49页使用命名空间使用命名空间使用命名空间使用命名空间直接使用直接使用System.Console.WriteLine引用所需的命名空间引用所需的命名空间Usingsystem;Console.WriteLine()6第6页,本讲稿共49页C#应用程序的结构应用程序的结构命名空间命名空间C#程序是用命名空间来组织代码,要访问某个命名空间中的类或对程序是用命名空间来组织代码,要访问某个命名空间中的类或对象,必须用如下语法:象,必须用如下语法:命名空间命名空间.类名类名由于由于Console类位于类位于System命名空间中,所以实际上用户在访命名空间中,所以实际上用户在访问问Console类时,完整的写法应该是:类时,完整的写法应该是:System.Consoleu类类C#程序由大括号程序由大括号“”和和“”构成,程序中每一对大括号构成,程序中每一对大括号“”构成一个块。大括号成对出现,可以嵌套,即块内可构成一个块。大括号成对出现,可以嵌套,即块内可以出现子块,嵌套深度不受限制,可以嵌套任意层,但以出现子块,嵌套深度不受限制,可以嵌套任意层,但一定要保证一定要保证“”和和“”成对出现,否则,程序就是错误成对出现,否则,程序就是错误的。的。注意注意:C#程序中的语句以程序中的语句以“;”表示结束表示结束7第7页,本讲稿共49页Main()方法方法程序的入口从下面的代码开始:程序的入口从下面的代码开始:staticvoidMain()注释注释在在C#语言中,提供了两种注释方法:语言中,提供了两种注释方法:(1)每一行中每一行中“/”后面的内容作为注释内容,后面的内容作为注释内容,该方式只对本行生效;该方式只对本行生效;(2)需要多行注释的时候,在第一行之前使用需要多行注释的时候,在第一行之前使用“/*”,在末尾一行之后使用,在末尾一行之后使用“*/”,也就是,也就是说被说被“/*”与与*/所包含的内容都作为注释内容。所包含的内容都作为注释内容。注意注意:C#区分区分大小写大小写8第8页,本讲稿共49页2.2C#数据类型数据类型C#语言的类型如图语言的类型如图9第9页,本讲稿共49页2.2.1值类型值类型简单类型(简单类型(SimpleType)类型长度.NET类型说明范围和精度byte1byte8位无符号整型0255sbyte1sbyte8位有符号整型-128127short2int1616位有符号整型-3276832767ushort2uint1616位无符号整型065535int4int3232位有符号整型21474836482147483647uint4uint3232位无符号整型04294967295long8int6464位有符号整型92233720368547758089223372036854775807ulong8uint6464位无符号整型018446744073709551615float4single32位单精度浮点类型+1.51045至+3.41038(7位精度)double8double64位双精度浮点类型+5.010324至+1.710308(15位精度)decimal16decimal128位高精度十进制数类型+1.01028至+7.91028(28位精度)Charchar16位字符类型Boolboolean逻辑值(真或假)true,false10第10页,本讲稿共49页枚举类型(枚举类型(EnumType)访问修辞符访问修辞符enum枚举名:基础类型枚举名:基础类型枚举成员枚举成员11第11页,本讲稿共49页结构类型结构类型结构类型也是先声明后使用。声明结构类型时要使用结构类型也是先声明后使用。声明结构类型时要使用struct关关键字,声明结构类型的一般语法格式如下:键字,声明结构类型的一般语法格式如下:struct标识符标识符结构成员定义;结构成员定义;说明:说明:(1)struct关键字表示声明的是一种结构类型。关键字表示声明的是一种结构类型。(2)标识符必须是)标识符必须是C#合法的标识符,它用来在程序中唯合法的标识符,它用来在程序中唯一确定所定义的结构。一确定所定义的结构。(3)由一对花括号括起来的部分称为结构体,它定义了结)由一对花括号括起来的部分称为结构体,它定义了结构中所包含的各种成员。构中所包含的各种成员。12第12页,本讲稿共49页结构类型结构类型structStudent/定义名为定义名为Student的结构类型的结构类型longno;/定义结构的数据成员定义结构的数据成员stringname;intage;stringuniversity;/定义结构的方法成员定义结构的方法成员voidstructmethod()/方法可执行代码方法可执行代码13第13页,本讲稿共49页2.2.2引用类型引用类型引用类型是将数据保存在堆上的存储方式。当引用类型是将数据保存在堆上的存储方式。当将一个数据给引用类型时,它被保存在堆上的将一个数据给引用类型时,它被保存在堆上的变量中。引用类型的大小不固定,为了可以快变量中。引用类型的大小不固定,为了可以快速地搜索引用类型数据的值,通过将其地址保速地搜索引用类型数据的值,通过将其地址保存在堆栈上,可以通过地址找到真正数据的所存在堆栈上,可以通过地址找到真正数据的所在。引用类型很抽象,就像一个门牌号,可以在。引用类型很抽象,就像一个门牌号,可以根据门牌号找到所在的房子。根据门牌号找到所在的房子。14第14页,本讲稿共49页2.3常量、变量与表达式常量、变量与表达式2.3.1常量常量1直接常量直接常量直接常量即数据值本身。直接常量即数据值本身。(1)整型常量)整型常量C#语言整型常量的三种表示形式:语言整型常量的三种表示形式:十进制整数,如十进制整数,如12,-314,0。八进制整数,要求以八进制整数,要求以0开头,如开头,如012十六进制数,要求十六进制数,要求0 x或或0X开头,如开头,如0 x12C#语言的整型常量默认为语言的整型常量默认为int型,如:型,如:inti=3;声明声明long型常量可以后加型常量可以后加l或或L,如:,如:longl=3L;15第15页,本讲稿共49页2.3常量、变量与表达式常量、变量与表达式(2)实型常量)实型常量C#浮点类型常量有两种表示形式:浮点类型常量有两种表示形式:十进制数形式:必须含有小数点,例如:十进制数形式:必须含有小数点,例如:3.14314.0.314科学记数法形式:如:科学记数法形式:如:3.14e23.14E2314E2C#浮点型常量默认为浮点型常量默认为double型,如要声明一个常量为型,如要声明一个常量为float型,则需在数字后面加型,则需在数字后面加f或或F,如:,如:doubled=3.14;floatf=3.14f;(3)字符常量)字符常量字符常量是用单引号括起来的单个字符,如:字符常量是用单引号括起来的单个字符,如:charc=A;16第16页,本讲稿共49页转义字符转义字符转义字符含义ddd1到3位八进制数所表示的字符(ddd)uxxxx1到4位十六进制数所表示的字符(xxxx)单引号字符双引号字符反斜杠字符r回车n换行f走纸换页t横向跳格b退格17第17页,本讲稿共49页(4)字符串常量)字符串常量字符串常量是用双引号括起的零个或多个字符字符串常量是用双引号括起的零个或多个字符序列。序列。C#支持两种形式的字符串常量,一种是支持两种形式的字符串常量,一种是常规字符串,另一种是逐字字符串常规字符串,另一种是逐字字符串常规字符串,另一种是逐字字符串常规字符串,另一种是逐字字符串。常规字符。常规字符串就是用双引号括起的一串字符,可以包括转串就是用双引号括起的一串字符,可以包括转义字符。如:义字符。如:”China,Beijing”,“d:myfilef1.txt”等。等。(5)布尔常量)布尔常量boolean类型适于逻辑运算,一般用于程序流类型适于逻辑运算,一般用于程序流程控制。程控制。boolean类型数据只允许取值类型数据只允许取值true或或false,不可以不可以0或非或非0的整数替代的整数替代true和和false。18第18页,本讲稿共49页2.符号常量符号常量符号常量通常用来保存一个固定值,例如,在符号常量通常用来保存一个固定值,例如,在程序设计中,圆周率程序设计中,圆周率“PI”是一个固定的值,是一个固定的值,那么,在程序开始时,就可以将其定义为一个那么,在程序开始时,就可以将其定义为一个常量。常量。常量的定义语法如下所示,其中,常量的定义语法如下所示,其中,“const”是是定义常量的关键字,同时还要将变量名大写。定义常量的关键字,同时还要将变量名大写。const类型名称类型名称常量名常量名=常量表达式常量表达式;19第19页,本讲稿共49页2.3.2变量变量1变量命名规则变量命名规则变量名的第首字符必须是字母、汉字或下划线。变量名的第首字符必须是字母、汉字或下划线。变量名中不能包含空格、小数点以及各种符号。变量名中不能包含空格、小数点以及各种符号。组成变量名的字符数不要太长,应控制在组成变量名的字符数不要太长,应控制在330个字符。个字符。变量名不能是关键字。如:变量名不能是关键字。如:int,object等不能用作变量等不能用作变量名。名。变量名在同一范围内必须是唯一的。变量名在同一范围内必须是唯一的。在在C#中声明变量使用下述语法:中声明变量使用下述语法:类型类型标识符标识符;例如:例如:inti;20第20页,本讲稿共49页2变量的初始化变量的初始化C#有两个方法可确保变量在使用前进行了初始有两个方法可确保变量在使用前进行了初始化:化:(1)变量是类或结构中的字段,如果没有显)变量是类或结构中的字段,如果没有显式初始化,在默认状态下创建这些变量时,其式初始化,在默认状态下创建这些变量时,其值就是值就是0。(2)方法的局部变量必须在代码中显式初始)方法的局部变量必须在代码中显式初始化,之后才能在语句中使用它们的值。此时,化,之后才能在语句中使用它们的值。此时,初始化不是在声明该变量时进行的,但编译器初始化不是在声明该变量时进行的,但编译器会通过方法检查所有可能的路径,如果检测到会通过方法检查所有可能的路径,如果检测到局部变量在初始化之前就使用了它的值,就会局部变量在初始化之前就使用了它的值,就会产生错误。产生错误。21第21页,本讲稿共49页3变量的作用域变量的作用域变量的作用域是可以访问该变量的代码区域。变量的作用域是可以访问该变量的代码区域。一般情况下,确定作用域有以下规则:一般情况下,确定作用域有以下规则:只要字段所属的类在某个作用域内,其字段只要字段所属的类在某个作用域内,其字段(也称为成员变量)也在该作用域内(也称为成员变量)也在该作用域内(在在C+、Java和和VB中也是这样中也是这样)。局部变量存在于表示声明该变量的块语句或方局部变量存在于表示声明该变量的块语句或方法结束的封闭花括号之前的作用域内。法结束的封闭花括号之前的作用域内。在在for、while或类似语句中声明的局部变量或类似语句中声明的局部变量存在于该循环体内(存在于该循环体内(C+程序员注意,这与程序员注意,这与C+的的ANSI标准相同。标准相同。MicrosoftC+编编译器的早期版本不遵守该标准,但在循环停止译器的早期版本不遵守该标准,但在循环停止后这种变量仍存在)。后这种变量仍存在)。22第22页,本讲稿共49页3变量的作用域变量的作用域(1)局部变量的作用域冲突)局部变量的作用域冲突大型程序在不同部分为不同的变量使用相同的大型程序在不同部分为不同的变量使用相同的变量名是很常见的。只要变量的作用域是程序变量名是很常见的。只要变量的作用域是程序的不同部分,就不会有问题,也不会产生模糊的不同部分,就不会有问题,也不会产生模糊性。但要注意,同名的局部变量不能在同一作性。但要注意,同名的局部变量不能在同一作用域内声明两次,所以不能使用下面的代码:用域内声明两次,所以不能使用下面的代码:intx=20;intx=30;23第23页,本讲稿共49页3变量的作用域变量的作用域(2)字段和局部变量的作用域冲突)字段和局部变量的作用域冲突在某些情况下,可以区分名称相同(尽管其完在某些情况下,可以区分名称相同(尽管其完全限定的名称不同)、作用域相同的两个标识全限定的名称不同)、作用域相同的两个标识符。此时编译器允许声明第二个变量。原因是符。此时编译器允许声明第二个变量。原因是C#在变量之间有一个基本的区分,它把声明为在变量之间有一个基本的区分,它把声明为类型级的变量看作是字段,而把在方法中声明类型级的变量看作是字段,而把在方法中声明的变量看作局部变量。的变量看作局部变量。24第24页,本讲稿共49页2.3.3运算符与表达式运算符与表达式算术运算符算术运算符算术运算符是常见的数学运算,算术运算符有算术运算符是常见的数学运算,算术运算符有一元运算符与二元运算符。一元运算符与二元运算符。一元运算符:一元运算符:-(取负)、(取负)、+(取正)、(取正)、+(增量)、(增量)、-(减量)。(减量)。二元运算符:二元运算符:+(加)、(加)、-(减)、(减)、*(乘)、(乘)、/(除)、(除)、%(求余)。下面的代码演示了常(求余)。下面的代码演示了常见的见的4种算术运算,注意,这些参与运算的变种算术运算,注意,这些参与运算的变量的数据类型,一定是可计算的类型。量的数据类型,一定是可计算的类型。25第25页,本讲稿共49页2.3.3运算符与表达式运算符与表达式2字符串运算符字符串运算符字符串运算符是常用的运算符号,用在字符串字符串运算符是常用的运算符号,用在字符串和字符的处理上。在和字符的处理上。在C#中,字符串运算最常中,字符串运算最常用的运算符是用的运算符是“+”和和“”。“+”用来连接用来连接两个字符串,虽然效率有些低,但使用方便。两个字符串,虽然效率有些低,但使用方便。“”用来以索引方式查找字符串数组中的值,用来以索引方式查找字符串数组中的值,可以被称为字符串的索引器。可以被称为字符串的索引器。26第26页,本讲稿共49页2.3.3运算符与表达式运算符与表达式3赋值运算符赋值运算符赋值运算符就是常见的赋值运算符就是常见的“=”,它可以为数值,它可以为数值型、枚举、类等所有的类型赋值。使用型、枚举、类等所有的类型赋值。使用“=”的语法如下所示:的语法如下所示:变量变量=值;值;其中,其中,“=”左边一般为变量的名称,左边一般为变量的名称,“=”右右边为固定的值、已经知道的变量或新实例化的边为固定的值、已经知道的变量或新实例化的类。还有一种赋值运算符可计算后再赋值。如类。还有一种赋值运算符可计算后再赋值。如“+=”或或“-=”。27第27页,本讲稿共49页2.3.3运算符与表达式运算符与表达式4关系运算符与关系表达式关系运算符与关系表达式(1)关系运算符)关系运算符关系运算符含义关系表达式示例运算结果=等于“abcd”=”aabc”False大于85True=大于等于3=1True小于135False=小于等于3=8True!=不等于3!=6True28第28页,本讲稿共49页2.3.3运算符与表达式运算符与表达式(2)关系表达式)关系表达式关系表达式由操作数和关系运算符组成。关系关系表达式由操作数和关系运算符组成。关系表达式中既可以包含数值,也可以用于字符或表达式中既可以包含数值,也可以用于字符或字符串,但是用于字符串的关系运算符只有相字符串,但是用于字符串的关系运算符只有相等等“=”和不等和不等“!=”两种运算符。两种运算符。29第29页,本讲稿共49页2.3.3运算符与表达式运算符与表达式5逻辑运算符逻辑运算符逻辑运算就是常说的逻辑运算就是常说的“是否是否”操作,操作,“是是”就执行就执行A代码,代码,“否否”就执行就执行B代码。逻辑运算符一般包括代码。逻辑运算符一般包括“与与”、“或或”、“非非”。与:与:C#中的符号为中的符号为“&”,表示必须满足两个条件。语法,表示必须满足两个条件。语法为为“表达式表达式1&表达式表达式2”。或:或:C#中的符号为中的符号为“|”,表示满足两个条件中的任意一个,表示满足两个条件中的任意一个即可。语法为即可。语法为“表达式表达式1|表达式表达式2”。非:非:C#中的符号为中的符号为“!”。表示取当前表达式结果的相反结。表示取当前表达式结果的相反结果。如果当前表达式为果。如果当前表达式为“true”,则计算结果为,则计算结果为“false”。语法为语法为“!表达式表达式”。30第30页,本讲稿共49页2.3.3运算符与表达式运算符与表达式6位运算符位运算符位运算符标识标识说明&按位与。将两个值的二进制进行与操作。只有两个二进位均为1时,结果位才为1,否则为0|按位或。将两个值的二进制进行或操作。只要两个二进制位中有一个为1,结果位就等于1,否则为0按位异或取反右移。将变量的二进制位往右移动31第31页,本讲稿共49页2.3.3运算符与表达式运算符与表达式7条件赋值运算符及表达式条件赋值运算符及表达式条件赋值表达式可以看作是逻辑表达式和赋值表达式的条件赋值表达式可以看作是逻辑表达式和赋值表达式的组合,它可根据逻辑表达式的值(组合,它可根据逻辑表达式的值(true或或false)返回不)返回不同的结果。条件运算符由符号同的结果。条件运算符由符号“?”与与“:”组成,通过操作三组成,通过操作三个操作数完成运算,其一般格式为:个操作数完成运算,其一般格式为:逻辑表达式逻辑表达式?表达式表达式1:表达式:表达式2在条件赋值表达式在运算时,首先运算在条件赋值表达式在运算时,首先运算“逻辑表达式逻辑表达式”的值,如果为的值,如果为true,则运算结果为,则运算结果为“表达式表达式1”的值,否则的值,否则运算结果为运算结果为“表达式表达式2”的值。的值。如:条件表达式如:条件表达式43?1:2的值为的值为1;条件表达式;条件表达式34?1:2的值为的值为2。32第32页,本讲稿共49页2.4基本结构基本结构2.4.1顺序结构顺序结构1.赋值语句赋值语句赋值语句是最简单的语句,其一般形式为:赋值语句是最简单的语句,其一般形式为:=赋值语句的作用是计算表达式的值,并赋给变赋值语句的作用是计算表达式的值,并赋给变量。对于任何一个变量必须首先赋值,然后才量。对于任何一个变量必须首先赋值,然后才能引用,否则,未赋初值的变量将不能参与运能引用,否则,未赋初值的变量将不能参与运算。另外,赋值号两边的类型必须相同,或者算。另外,赋值号两边的类型必须相同,或者符合隐式类型转换规则。符合隐式类型转换规则。例如:例如:intage=30;33第33页,本讲稿共49页2.输入语句输入语句C#语言的输入语句有如下两种形式:语言的输入语句有如下两种形式:Console.Read();Console.ReadKey();Console.ReadLine();输入可以是整型或字符串等,但布尔型不可以直接读入。输入可以是整型或字符串等,但布尔型不可以直接读入。例如:例如:strInput为字符串变量,为字符串变量,ReadLine之后,将赋予变量之后,将赋予变量对应的值。对应的值。stringstrInput=Console.ReadLine();键盘输入:键盘输入:20回车回车结果:结果:strInput=20;Read语句和语句和ReadLine语句不同之处在于输入数据到各变量语句不同之处在于输入数据到各变量之后,之后,ReadLine自动换行,从下一行开始再输入数据。一个自动换行,从下一行开始再输入数据。一个Read语句执行完后,数据行中多余的未读数据可以被下一个输入语语句执行完后,数据行中多余的未读数据可以被下一个输入语句读入;而一个句读入;而一个ReadLine于执行完后,数据行中多余未读数据就于执行完后,数据行中多余未读数据就没有用了。没有用了。34第34页,本讲稿共49页3.输出语句输出语句C#语言的输出语句有两种形式:语言的输出语句有两种形式:Console.Write(输出项输出项);Console.WriteLine(输出项输出项);其中其中可以是常量、变量、表达式或字符串。如果是变可以是常量、变量、表达式或字符串。如果是变量、表达式,则将其计算结果输出;如果是常量或字符串,则直量、表达式,则将其计算结果输出;如果是常量或字符串,则直接输出其值。接输出其值。Write和和WriteLine的区别在于:的区别在于:Write语句是输出项输出语句是输出项输出后,不换行,光标停留在最后一项后,后,不换行,光标停留在最后一项后,WriteLine语句按项语句按项输出后,自动换行,光标则停留在下一行的开始位置。输出后,自动换行,光标则停留在下一行的开始位置。WriteLine语句允许不含有输出项,即仅语句允许不含有输出项,即仅WriteLine;表;表示换行。示换行。35第35页,本讲稿共49页4.复合语句复合语句复合语句是由若干语句组成的序列,语句之间用分号复合语句是由若干语句组成的序列,语句之间用分号“;”隔开,并且以隔开,并且以括起来,作为一条语句。复合语句的一般形式:括起来,作为一条语句。复合语句的一般形式:语句语句1;语句语句2;语句语句n;例如:变量值的交换例如:变量值的交换intx=10;inty=100;intbuffer=x;x=y;y=buffer;36第36页,本讲稿共49页2.4.2选择结构选择结构1.使用使用if语句实现单分支选择结构语句实现单分支选择结构if语句用于判断表达式的值,满足条件时执行其包含的一组语句。语句用于判断表达式的值,满足条件时执行其包含的一组语句。其语法如下:其语法如下:if(表达式表达式)语句语句1;语句语句2;语句语句n;如果表达式的值为如果表达式的值为true(真),则执行语句块一中的语句;如果(真),则执行语句块一中的语句;如果表达式的值为表达式的值为false(假),则不执行语句块一中的语句。(假),则不执行语句块一中的语句。37第37页,本讲稿共49页2.使用使用ifelse语句实现双分支选择结构语句实现双分支选择结构ifelse语句根据表达式的值有选择地执行程序中的语句。语句根据表达式的值有选择地执行程序中的语句。其声明语法如下:其声明语法如下:if(表达式表达式)语句语句1;语句语句2;语句语句n;else语句语句1;语句语句2;语句语句n;如果表达式的值为如果表达式的值为true(真),则执行(真),则执行if语句块中的语句;如果表达式的值为语句块中的语句;如果表达式的值为false(假),则执行(假),则执行else语句块中的语句。语句块中的语句。38第38页,本讲稿共49页3.使用使用ifelseifelse语句实现多分支选择结构语句实现多分支选择结构有时必须判定多个条件以便决定执行什么操作。在这种情况下就要使用有时必须判定多个条件以便决定执行什么操作。在这种情况下就要使用ifelseifelse语句。其声明语法如下:语句。其声明语法如下:if(表达式表达式1)语句语句1;语句语句2;语句语句n;elseif(表达式表达式2)语句语句1;语句语句2;语句语句n;elseif(表达式表达式3)elseif(表达式表达式4)else语句语句1;语句语句2;语句语句n;39第39页,本讲稿共49页3.使用使用ifelseifelse语句实现多分支选择结构语句实现多分支选择结构执行过程说明如下:执行过程说明如下:(1)首先判断表达式)首先判断表达式1,如果其值为,如果其值为true,则执行则执行if语句块中的语句,然后结束语句块中的语句,然后结束if语句。语句。(2)如果表达式)如果表达式1的值为的值为false,则判断表达,则判断表达式式2,如果其值为,如果其值为true,则执行,则执行elseif语句块语句块中的语句,然后结束中的语句,然后结束if语句。语句。(3)如果表达式)如果表达式2的值为的值为false,再继续往下,再继续往下判断其他表达式的值。判断其他表达式的值。(4)如果所有表达式的值都为)如果所有表达式的值都为false,则执行,则执行else语句块中的语句,然后结束语句块中的语句,然后结束if语句。语句。40第40页,本讲稿共49页4.嵌套嵌套if语句的使用语句的使用其声明语法如下:其声明语法如下:if(表达式表达式1)语句语句1;语句语句2;语句语句n;if(表达式表达式2)语句语句1;语句语句2;语句语句n;对于多层对于多层if嵌套结构,要特别注意嵌套结构,要特别注意if与与else的配对关系,一个的配对关系,一个else必须必须与一个与一个if配合。一定要使用代码缩进,这样便于日后的阅读与维护。配合。一定要使用代码缩进,这样便于日后的阅读与维护。41第41页,本讲稿共49页5.使用使用Switch语句实现多分支选择语句实现多分支选择在判定多个条件时,如果用在判定多个条件时,如果用ifelseif.else语句可能会很复杂和冗长。语句可能会很复杂和冗长。在这种情况下,应用在这种情况下,应用switch语句就会简明清晰得多。用语句就会简明清晰得多。用switch语句可以将语句可以将任何整型变量或字符串与多个值进行检查。当两者匹配时就会执行相应的所有语句。任何整型变量或字符串与多个值进行检查。当两者匹配时就会执行相应的所有语句。其声明语法如下:其声明语法如下:Switch(表达式表达式)Case常数表达式:常数表达式:语句块语句块跳转语句(如跳转语句(如break、return、goto)./其他的其他的case子句子句Defalut:语句块语句块42第42页,本讲稿共49页2.4.3循环结构循环结构1.for语句语句当你预先知道一个内含语句应要执行多少次时,当你预先知道一个内含语句应要执行多少次时,for语句特别语句特别有用。当条件为真时,常规语法允许重复地执行内含语句。有用。当条件为真时,常规语法允许重复地执行内含语句。其声明语法如下:其声明语法如下:for(初始化初始化;条件条件;循环循环)内含语句内含语句请注意,初始化、条件和循环都是可选的。比如你可以在请注意,初始化、条件和循环都是可选的。比如你可以在其他地方初始化,在其他地方初始化,在for循环就不用再次进行初始化了。循环就不用再次进行初始化了。43第43页,本讲稿共49页2.foreach语句语句foreach语句用来循环一个集合中的元素。由于语句用来循环一个集合中的元素。由于C#中的数组中的数组支持支持foreach语句,因此你可以应用语句,因此你可以应用foreach语句处理数组语句处理数组中的每一个元素。中的每一个元素。使用使用foreach语句时,首先输入语句时,首先输入foreach关键字,然后是括关键字,然后是括号。括号内必须包含以下信息:集合中元素的类型、集合中号。括号内必须包含以下信息:集合中元素的类型、集合中元素的标识符名称、关键字元素的标识符名称、关键字in和集合的标识符,嵌套语句在和集合的标识符,嵌套语句在括号之后。括号之后。其声明语法如下:其声明语法如下:foreach(元素类型元素类型元素变量元素变量in元素变量集合元素变量集合)循环语句循环语句44第44页,本讲稿共49页3.while语句语句while语句表示条件满足时执行循环体,循环体的执行次数我们语句表示条件满足时执行循环体,循环体的执行次数我们是可以控制的,可以是可以控制的,可以0次,可以次,可以1次,也可以无数。次,也可以无数。其声明语法如下:其声明语法如下:while(条件表达式条件表达式)循环语句循环语句当条件表达式的值为真时,这个语句执行循环语句。控制当条件表达式的值为真时,这个语句执行循环语句。控制while语句的布尔表达式包含在括号内,前面是语句的布尔表达式包含在括号内,前面是while关键关键字。括号后面是当布尔表达式值为真时应执行的语句。字。括号后面是当布尔表达式值为真时应执行的语句。45第45页,本讲稿共49页4.do-while语句语句do-while语句与语句与while语句十分相似,语句十分相似,do-while语句执行语句执行其嵌套语句其嵌套语句0次或多次。如果次或多次。如果while语句中的布尔表达式值为语句中的布尔表达式值为假,则不执行任何嵌套语句。但是,为了保证嵌套语句至少执假,则不执行任何嵌套语句。但是,为了保证嵌套语句至少执行一次,就可以使用行一次,就可以使用do-while语句。语句。其声明语法如下:其声明语法如下:do循环语句循环语句while(条件表达式条件表达式)do语句后面是一个循环语句,后面紧跟着一个语句后面是一个循环语句,后面紧跟着一个while关键字。关键字。控制循环执行次数的布尔表达式位于控制循环执行次数的布尔表达式位于while关键字的后面。由于关键字的后面。由于布尔表达式在嵌套语句执行后再求值,因此嵌套语句至少被执行布尔表达式在嵌套语句执行后再求值,因此嵌套语句至少被执行一次。一次。46第46页,本讲稿共49页2.4.4continue、break与与return语句语句1.break语句语句break语句会使运行的程序立刻退出它所在的最内层循环或者语句会使运行的程序立刻退出它所在的最内层循环或者退出一个退出一个switch语句。由于它是用来退出循环或者语句。由于它是用来退出循环或者switch语句,所以在其他地方使用语句,所以在其他地方使用break语句是不合法的,语句是不合法的,只能在循环体内和只能在循环体内和switch语句体内使用语句体内使用break语句。规则语句。规则如下:如下:1)当当break语句出现在循环体中的语句出现在循环体中的switch语句体内时,语句体内时,其作用只是跳出该其作用只是跳出该switch语句体。语句体。2)当当break语句出现在循环体中,但并不在语句出现在循环体中,但并不在switch语句体语句体内时,则在执行内时,则在执行break后,跳出本层循环体。后,跳出本层循环体。如果一个循环的终止条件非常复杂,那么使用如果一个循环的终止条件非常复杂,那么使用break语句来实语句来实现某些条件比用一个循环表达式来表达所有的条件容易得现某些条件比用一个循环表达式来表达所有的条件容易得多。多。47第47页,本讲稿共49页2.continue语句语句continue语句和语句和break语句用法相似。不同语句用法相似。不同的是,它不是退出一个循环,而是不执行本次的是,它不是退出一个循环,而是不执行本次循环剩下的代码,开始执行下一次循环。循环剩下的代码,开始执行下一次循环。continue语句只能用在语句只能用在while语句、语句、do-while语句、语句、for语句、或者语句、或者foreach语句的语句的循环体内,在其它地方使用都会引起错误。循环体内,在其它地方使用都会引起错误。48第48页,本讲稿共49页3.return语句语句return语句就是用于指定函数返回的值。语句就是用于指定函数返回的值。return语句只能出现在函数体内,出现在代码语句只能出现在函数体内,出现在代码中的其他任何地方都会造成语法错误。规则如中的其他任何地方都会造成语法错误。规则如下:下:1)使用使用return语句从当前的方法中退出,返语句从当前的方法中退出,返回到该调用的方法的语句处,继续执行。回到该调用的方法的语句处,继续执行。2)使用使用return语句返回一个值给调用该方法语句返回一个值给调用该方法的语句,返回值的数据类型必须与方法的声明的语句,返回值的数据类型必须与方法的声明中的返回值的类型一致,可以使用强制类型转中的返回值的类型一致,可以使用强制类型转换来保持数据类型一致。换来保持数据类型一致。3)当方法说明中用当方法说明中用void声明返回类型为空时,声明返回类型为空时,应使用应使用return语句,但不返回任何值。语句,但不返回任何值。49第49页,本讲稿共49页

    注意事项

    本文(第2章编程语言基础优秀课件.ppt)为本站会员(石***)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开