欢迎来到天天文库
浏览记录
ID:49051943
大小:2.29 MB
页数:70页
时间:2020-01-30
《第3章_程序控制与算法.ppt》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、第3章程序控制与算法3.1表达式与运算符3.2流程控制3.3算法本章要点3.1表达式与运算符3.1.1表达式3.1.2字面量3.1.3运算符3.1.4运算符的优先级3.1.1表达式一个表达式就是一个能够返回值的简单结构。最简单的表达式是变量和常量。在C#中也可以通过使用运算符、方法调用以及类型转换等,建立复杂的表达式。建立表达式没有通用的方法,因为要取决于所用的运算符。3.1.2字面量字面量(literal)是原代码中书写的数字或字符串,表示一个明确类型的明确的、固定的值。因为字面量是写进源代码的,所以它们的
2、值必须在编译期可知。个别预定义类型有自己的字面量形式:bool有两个字面量:true/false对于引用类型变量,字面量null表示变量没有被设置内存中的引用例子:Literals.sln整数字面量整数字面量是最常用的字面量。它们被书写为十进制数字序列,并且:没有小数点带有可选的后缀,指明整数的类型例如,下面四个字面量,都是整数256。依据后缀,都被编译解释为不同的整数类型256//整型256L//长整型256U//无符号整型256UL//无符号长整型实数字面量实数字面量的组成如下:10进制数字一个可选的小数
3、点一个可选的指数部分一个可选择的后缀,如下所示:floatf1=256F;doubled1=256.714;doubled2=.3548;doubled3=6.328-26;字符字面量字符字面量由单引号内的字符表示组成。字符字面量可以是下面的任意一种:单个字符、一个简单转义序列、一个十六进制转义序列或一个Unicode转义序列。字符字面量是类型是char简单转义序列是一个反斜杠后面跟着单个字符十六进制转义序列是一个反斜杠,后面跟着一个大写或小写的x,后面跟着多至四个十六进制数字Unicode转义序列是一个反斜
4、杠,后面跟着一个大写或小写的u,后面跟着多至四个十六进制数字字符字面量例如:charc1=‘d’;//单个字符charc1=‘’;//简单转义序列charc1=‘x0061’;//十六进制转义序列charc1=‘u005a’;//转义序列字符串字面量字符串字面量使用双引号标记。有两种字符串字面量类型:规则字符串字面量逐字字符串字面量字符串字面量规则字符串字面量由双引号内的字符序列组成,它包含:字符简单转义序列十六进制和Unicode转义序列逐字字符串字面量的书写如同规则字符串字面量,但以一个@字符为前
5、缀,它有如下特征:逐字字面量与规则字符串字面量区别在于转义字符串不会被求值。在双引号内的所有东西,包括通常被认为是转义序列的东西,都被严格按字符串列出的那样打印逐字字面量的唯一例外是相邻的双引号组,它们被解释为单个双引号字符例子:StringLiteral.sln3.1.3运算符运算符是用来完成一个动作的特定语言的语法记号。1.简单算术运算符2.求余运算符3.关系比较运算符和相等比较运算符4.递增运算符和递减运算符5.条件逻辑运算符6.逻辑运算符7.赋值运算符8.条件运算符9.一元算术运算符10.typeof
6、运算符简单算术运算符简单算术运算符执行基本四则算术运算。这些运算符都是二元左结合运算符。运算符名称描述+加计算两个操作数的和-减从第一个操作数中减去第二个操作数*乘求两个操作数的乘积/除用第二个操作数除第一个。整数除法把结果四舍五入到最近的整数求余运算符求余运算符(%)用第二个操作数除第一个操作数,忽略商,并返回余数。求余运算符是二元左结合运算符。0%3=01%3=12%3=23%3=04%3=1求余运算符求余运算符还可以用于实数以得到实余数。0.0f%1.5f=00.5f%1.5f=0.51.0f%1.5f
7、=11.5f%1.5f=02.0f%1.5f=0.52.5f%1.5f=1关系比较运算符和相等比较运算符关系比较运算符和相等比较运算符是二元运算符并结合,比较它们的操作数并返回bool值。运算符名称描述<小于如果第一个操作数小于第二个操作数,返回true,否则返回false>大于如果第一个操作数大于第二个操作数,返回true,否则返回false<=小于等于如果第一个操作数小于等于第二个操作数,返回true,否则返回false>=大于等于如果第一个操作数大于等于第二个操作数,返回true,否则返回false==
8、等于如果第一个操作数等于第二个操作数,返回true,否则返回false!=不等于如果第一个操作数不等于第二个操作数,返回true,否则返回false比较操作和相等性操作当比较大多数引用类型的相等性时,只有引用被比较。如果引用相等,也就是说,如果它们指向内存中相同的对象,那么相等性比较为true,否则为false,这称为浅比较比较操作和相等性操作在图的左边,a和b两者的引用是相同的,所以比较返回tru
此文档下载收益归作者所有