第3章CSharp语言基础

上传人:ni****g 文档编号:579119018 上传时间:2024-08-25 格式:PPT 页数:53 大小:726.54KB
返回 下载 相关 举报
第3章CSharp语言基础_第1页
第1页 / 共53页
第3章CSharp语言基础_第2页
第2页 / 共53页
第3章CSharp语言基础_第3页
第3页 / 共53页
第3章CSharp语言基础_第4页
第4页 / 共53页
第3章CSharp语言基础_第5页
第5页 / 共53页
点击查看更多>>
资源描述

《第3章CSharp语言基础》由会员分享,可在线阅读,更多相关《第3章CSharp语言基础(53页珍藏版)》请在金锄头文库上搜索。

1、Visual C#程序设计基础程序设计基础XXXXXX大学计算机系基础教研室大学计算机系基础教研室第3章 简单C#程序设计3.1 C#程序结构程序结构3.2 变量和常量变量和常量3.3 常用数据类型常用数据类型3.4 C#语言的运算符和表达式语言的运算符和表达式小结和习题小结和习题3.1 面向对象的概念3.1.1 组成要素成要素1.关键字关键字在在C#代码中常常使用关键字,关键字也叫保留字,是代码中常常使用关键字,关键字也叫保留字,是有特定意义的字符串。关键字在有特定意义的字符串。关键字在Visual Studio .NET环环境的代码视图中默认以蓝色显示,所以在编辑器中用境的代码视图中默认以

2、蓝色显示,所以在编辑器中用户可以通过颜色识别该关键字是否是标识符。户可以通过颜色识别该关键字是否是标识符。例如,代码中的例如,代码中的using、namespace、class、static、void等,均为等,均为C#的关键字。的关键字。3.1 面向对象的概念3.1.1组成要素成要素2.命名空间命名空间系统命名空间系统命名空间(System)使用使用using关键字导入,是关键字导入,是Visual Studio .NET中的中的最基本的命名空间最基本的命名空间.命名空间命名空间System是是.NET基础类库的根命名空间,根基础类库的根命名空间,根据功能分成若干个子命名空间,如据功能分成若

3、干个子命名空间,如System.Collections.Generic、System. ComponentModel、 System.Drawing、System.Windows.Forms等等等等用户自定义命名空间用户自定义命名空间3.1 面向对象的概念3.1.1组成要素成要素3.类和方法类和方法C#中,必须用类来组织程序的变量与方法。中,必须用类来组织程序的变量与方法。C#要求每个程序必须且只能有一个要求每个程序必须且只能有一个“Main”方法。方法。“Main”方法必须放在某一个类中。方法必须放在某一个类中。“Main”方法是应用程序的入口。方法是应用程序的入口。3.1 面向对象的概念3

4、.1.1组成要素成要素4.语句语句 C#应用程序中执行操作的指令,一条语句就是执行一应用程序中执行操作的指令,一条语句就是执行一个动作的命令。个动作的命令。C#中的语句必须用分号中的语句必须用分号“;”结尾。结尾。 例如:例如:Console.WriteLine(“Hello World!”);语句就语句就是C#应用程序中执行操作的指令,一条语句就是执行一个动作的命令。C#中的语句必须用分号“;”结尾。例如:Console.WriteLine(“Hello World!”);3.1 面向对象的概念3.1.1组成要素成要素4.大括号大括号在在C#中,括号中,括号“”和和“”是一种范围标志,是组织

5、代码是一种范围标志,是组织代码的一种方式,用于标识应用程序中逻辑上有紧密联系的一种方式,用于标识应用程序中逻辑上有紧密联系的一段代码的开始与结束。的一段代码的开始与结束。大括号可以嵌套,以表示应用程序中的不同层次。大括号可以嵌套,以表示应用程序中的不同层次。 例如:例如:Console.WriteLine(“Hello World!”);语句就语句就是C#应用程序中执行操作的指令,一条语句就是执行一个动作的命令。C#中的语句必须用分号“;”结尾。例如:Console.WriteLine(“Hello World!”);3.1.2 C#C#程序的格式程序的格式1. 缩进与空格缩进与空格缩进用于表

6、示代码的结构层次,在程序设计缩进用于表示代码的结构层次,在程序设计中应该使用统一的缩进格式书写代码。中应该使用统一的缩进格式书写代码。空格有两种作用空格有两种作用:语法要求语法要求 ,必须遵守必须遵守;避免语句拥挤。避免语句拥挤。 例如:例如:int ia = 3;3.1.2 C#C#程序的格式程序的格式2. 字母大小写字母大小写 C#中的字母可以大小写混合,但是必中的字母可以大小写混合,但是必须注意的是,注意的是,C#把同一字母的大小写当作两个不把同一字母的大小写当作两个不同的字符同的字符对待待。 如如:大写大写“A”与小写与小写“a”对C#来来说,是两个不,是两个不同的字符。同的字符。3.

7、1.2 C#C#程序的格式程序的格式3. 注释注释C#中的注释基本有两种中的注释基本有两种:单行注释。单行注释以双斜线单行注释。单行注释以双斜线“/ ”开始,不能换行开始,不能换行。多行注释。多行注释以多行注释。多行注释以“/*”开始,以开始,以“*/”结束,可结束,可以换行。以换行。3.1.3 标识符与用法约定1.标识符符标识符符是是给变量量、用用户定定义的的类型型(例例如如类和和结构构)和和这些些类型型的的成成员指指定定的的名名称称,以以识别程程序序中中的的不不同元素(如:同元素(如:变量名、量名、类名等)名等)标识符的命名符的命名规则:标识符只能使用数字、字母、下划线;标识符只能使用数字

8、、字母、下划线;标识符开头第一个字符必须是字母或下划线;标识符开头第一个字符必须是字母或下划线;不能把不能把C#关键字用作标识符;关键字用作标识符;C#标识符区分大小写。标识符区分大小写。3.1.3 标识符与用法约定2. 关关键字字 C#中有中有76 个关个关键字字3.1.3 标识符与用法约定3. 用法用法约定定命名变量时通常不使用前缀。命名变量时通常不使用前缀。变量名应当体现变量的功能。变量名应当体现变量的功能。处理控件时,处理控件时,尽量尽量使用能说明变量类型的名称。使用能说明变量类型的名称。如:如:ConfirmationDialog、ChosseEmployeeListBox第一个字母

9、大写第一个字母大写。命名空间、类、以及基类中的成员等的名称都应遵循该命名空间、类、以及基类中的成员等的名称都应遵循该规则。规则。如:如:EmployeeSalary、ConfirmationDialog。最好不要使用下划线最好不要使用下划线。如如:employee_salary。常量也应遵循该规则常量也应遵循该规则。如:如:Const int MaximumLength;3.1.3 标识符与用法约定3. 用法用法约定定使用使用camel大小写形式大小写形式。通常用于以下三种情况下:通常用于以下三种情况下:类型中所有私有成员字段名称;类型中所有私有成员字段名称;传递给方法的参数;传递给方法的参数

10、;用于区分同名的两个对象,比较常见的是属性封装一用于区分同名的两个对象,比较常见的是属性封装一个字段个字段。如如:employeeSalary、confirmationDialog。风格应保持一致风格应保持一致。 如:若如:若一个方法叫一个方法叫ShowConfirmationDialog,那么那么另一另一个就不要叫个就不要叫ShowDialogWarning,应叫,应叫ShowWarningDialog。3.1 建立简单的应用程序【例例3-1】程序程序举例例using System;public sealed class P3_1 public static void Main() int

11、result; result = 9 * 6; int thirteen; thirteen = 13; Console.WriteLine(result / thirteen); Console.WriteLine(result % thirteen); 3.2 变量和常量变量和常量3.2.1 变量含义变量含义变量是指在程序运行过程中其值可以不断变化变量是指在程序运行过程中其值可以不断变化的量。的量。变量通常用来保存程序运行过程中的输入数据变量通常用来保存程序运行过程中的输入数据并计算获得的中间结果和最终结果。并计算获得的中间结果和最终结果。每个变量都具有一个类型,它确定哪些值可以每个变量都

12、具有一个类型,它确定哪些值可以存储在该变量中。存储在该变量中。变量的命名规则必须符合标识符的命名规则,变量的命名规则必须符合标识符的命名规则,并且变量名要有意义并且变量名要有意义,以便阅读,例如学生成以便阅读,例如学生成绩的命名可以为绩的命名可以为studentGrade。3.2 变量和常量变量和常量3.2.2 变量声明变量声明变量必须先声明后使用变量必须先声明后使用1变量声明量声明格式格式: 数据数据类型型 变量名量名;其中,其中,是可是可选项,访问修修饰符可以是符可以是public、private、protected、internal 或或 protected internal等。等。例如

13、:例如:int number; / 声明一个整型变量声明一个整型变量bool open; / 声明一个布尔型变量声明一个布尔型变量decimal bankBlance; / 声明一个十进制变量声明一个十进制变量3.2 变量和常量变量和常量3.2.2 变量声明变量声明1变量声明量声明如果一次声明多个如果一次声明多个变量,量,变量名之量名之间用逗号分隔,格式:用逗号分隔,格式: 数据数据类型型 变量名量名1,;例如:例如:sbyte a , b; / 声明两个有符号字节型变量声明两个有符号字节型变量double x , y , z; / 声明三个双精度声明三个双精度实型变量实型变量3.2 变量和常

14、量变量和常量3.2.2 变量声明变量声明2变量量赋值n变量必量必须赋值后才能引用后才能引用n为变量量赋值需使用需使用赋值号号“=”例如:例如:定定义变量,直接量,直接赋值:int number1=32; 先定先定义变量,后量,后进行行赋值: int number1; number1 = 32; 使用使用变量量为变量量赋值:int number2; number2=number1; 3.2 变量和常量变量和常量3.2.3 常量常量常量是在常量是在编译时已知的已知的值在程序的生存周期内始在程序的生存周期内始终不不变的量的量。1直接常量直接常量常量必常量必须在声明在声明时初始化,格式:初始化,格式:

15、 const 数据数据类型型 常常量名量名=常量常量值;例如:例如:public const int months = 12;常量在使用的常量在使用的过程中,不可以程中,不可以对其其进行行赋值改改变,否否则系系统会自会自动报错。 3.2 变量和常量变量和常量3.2.3 常量常量2符号常量符号常量符号符号常量使用常量使用const关关键字声明,格式:字声明,格式:const 数据数据类型型 常常量名量名=常量表达式常量表达式;“常量表达式常量表达式”的意的意义在于在于该表达式不能包含表达式不能包含变量及函数等量及函数等值会会发生生变化的内容化的内容,但,但可以包含其他已定可以包含其他已定义常量。

16、常量。 例如:例如: const double PI = 3.1415926;符号常量不能出符号常量不能出现在在赋值号的左号的左边。3.2 变量和常量变量和常量3.2.3 常量常量2符号常量符号常量说明明:(1)可以同)可以同时声明多个相同声明多个相同类型的常量型的常量例如:例如:const int months = 12, weeks = 52, days = 365;(2)如果不会造成循)如果不会造成循环引用,用于初始化一个常量的表达式引用,用于初始化一个常量的表达式可以引用另一个常量。例如:可以引用另一个常量。例如:const int months = 12,weeks = 52,day

17、s = 365; const double daysPerWeek = (double)days / (double)weeks; const double daysPerMonth = (double)days / (double)months;3.2 变量和常量变量和常量3.2.3 常量常量2符号常量符号常量说明明:(3)常量可)常量可标记为 public、private、protected、internal 或或 protected internal。这些些访问修修饰符定符定义类的用的用户访问该常常量的方式。量的方式。(4)未包含在定)未包含在定义常量的常量的类中的表达式必中的表达式必须

18、使用使用类名、一个名、一个句点和常量名来句点和常量名来访问该常量。例如:常量。例如:int birthstones = Calendar.months;(5)如果在程序中)如果在程序中强制修改常量的制修改常量的值,就会,就会发生生错误。(6)常量通常用于:)常量通常用于:程序中一旦程序中一旦设定就不允定就不允许被修改的被修改的值(如(如圆周率);周率);程序中被程序中被经常引用的常引用的值。3.2 变量和常量变量和常量3.2.4 应用实例应用实例【例例3-2 】设计一个Windows窗体应用程序,输入速度和时间,计算行使路程,如图所示3.3 常用数据类型3.3 常用数据类型3.3.1 数数值类

19、型型1. 整数类型整数类型(1)整型常量整型常量整型常量即整数,整型常量有三种形式:整型常量即整数,整型常量有三种形式:十进制形式,十进制形式,即通常意义上的整数,如即通常意义上的整数,如12,123,48910等。等。八进制形式,八进制形式,输入八进制整型常量,需要在数字前面加输入八进制整型常量,需要在数字前面加“0”,如,如,0123,038等。等。十六进制形式,十六进制形式,输入十六进制整型常量,需要在数字前面加输入十六进制整型常量,需要在数字前面加“0x”或或“0X”,如,如,0x123,0X48910等。等。(2) 整型整型变量量整数整数类型的型的变量的量的值为整数整数,整型整型变量

20、可分量可分为以下几以下几类:有符号整数包括有符号整数包括sbyte(符号字节型)、(符号字节型)、short(短整型)、(短整型)、int(整(整型)、型)、long(长整型);(长整型);无符号整数包括无符号整数包括byte(字节型)、(字节型)、ushort(无符号短整型)、(无符号短整型)、uint(无符号整型)、(无符号整型)、ulong(无符号长整型)。(无符号长整型)。3.3 常用数据类型3.3.1 数数值类型型1. 整数类型整数类型类型解释取值范围sbyte有符号8位整数-128127byte无符号8位整数0255short有符号16位整数-32,76832,767ushort无

21、符号16位整数065,535int有符号32位整数-2,147,483,6482,147,483,647uint无符号32位整数04,294,967,295long有符号64位整数-9,223,372,036,854,775,8089,223,372,036,854,775,807ulong无符号64位整数018,446,744,073,709,551,6153.3 常用数据类型3.3.1 数数值类型型1. 整数类型整数类型(3) 整型整型变量量的声明的声明变量声明的形式量声明的形式为: 数据数据类型型说明符明符 变量名量名标识符符1,变量名量名标识符符2,.;而而对整型整型变量而言,量而言,

22、类型型说明符可以是明符可以是int、long、unsigned等等。例如:等等。例如: int a,b,c; / a,b,c为整型整型变量量 long x,y; / x,y为长整型整型变量量 unsigned p,q; / p,q为无符号整型无符号整型变量量定定义一个一个变量,意味着在内存中量,意味着在内存中给这个个变量分配相量分配相应大小的存大小的存储空空间,同,同时确定确定这个个变量量值的存的存储方式和可以方式和可以进行的操作。行的操作。3.3 常用数据类型3.3.1 数数值类型型2. 实实数类型数类型(1)实型型常量常量实型型常量又称常量又称实数或浮点数,即数或浮点数,即带小数的数小数的

23、数值,实型常量有两种表示形式:型常量有两种表示形式:小数形式,如小数形式,如0.123,12.3,.123等等。等等。指数形式,由底数加大写的指数形式,由底数加大写的E或小写的或小写的e加指数组成,如加指数组成,如123e5或或123E5都表示都表示123105。注意:注意:小数形式表示的实型常量必须要有小数点。小数形式表示的实型常量必须要有小数点。(2) 实型型变量量实数数类型的型的变量的量的值为实数数,实型型变量可分量可分为以下以下两两类:单精度单精度(float)双精度双精度(double)3.3 常用数据类型3.3.1 数数值类型型2. 实实数类型数类型类型类型解释解释取值范围取值范围

24、float32位单精度实数1.510e-453.410e38double64位双精度实数5.010e-3241.710e308decimal128位十进度实数1.010e-287.910e283.3 常用数据类型3.3.1 数数值类型型1. 实实数类型数类型(3) 实型型变量量的声明的声明实型型变量声明的形式量声明的形式为: 数据数据类型型说明符明符 变量名量名标识符符1,变量名量名标识符符2,.;而而对整型整型变量而言,量而言,类型型说明符可以是明符可以是float、double、long double。例如:。例如: float a,b,c; / a,b,c为实型型变量量 double x

25、,y; / x,y为长实型型变量量 long double p,q; / p,q为无符号无符号实型型变量量3.3 常用数据类型usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Text;namespaceP3_3classRealNumberpublicstaticvoidMain()floatf=System.Single.PositiveInfinity;SpecialRealValue(f);f=System.Single.NegativeInfinity;SpecialRealValue(f

26、);f=System.Single.NaN;SpecialRealValue(f);publicstaticvoidSpecialRealValue(floatf1)floatf2=-1*f1;doubled1=1/f1;doubled2=-1/d1;Console.WriteLine(-1*0=1,f1,f2);Console.WriteLine(1/0=1,f1,d1);Console.WriteLine(-1/0=1,d1,d2);【例例3-3 】特殊数值的计算3.3 常用数据类型3.3.2字符和字符串类型字符和字符串类型1.字符字符类型类型字符字符类型型为由一个字符由一个字符组成的字符

27、常量或字符成的字符常量或字符变量。量。(1) 字符常量字符常量字符常字符常量声明的量声明的格格式式为: const 字符常量字符常量 = 字符字符;字符常量用一对英文单引号界定,如,字符常量用一对英文单引号界定,如,A,a,+,汉汉 等等。转义转义字字符符,有些字符不能直接放在单引号中作为字符常量,这时需要有些字符不能直接放在单引号中作为字符常量,这时需要使用转义符来表示这些字符常量,转义符由反斜杠使用转义符来表示这些字符常量,转义符由反斜杠“”加字符组成,加字符组成,如如 n 。3.3 常用数据类型3.3.2字符和字符串类型字符和字符串类型1.字符字符类型类型(2) 字符字符变量量字符字符变

28、量声明量声明格格式:式: char 字符字符变量名量名 ;字符字符变量量初始化:初始化:char 字符字符变量名量名 = 字符常量字符常量 ;C#支持支持Unicode字符集。字符集。char(字符型):数据范围是(字符型):数据范围是065535之间的之间的Unicode字字符集中的单个字符,占用符集中的单个字符,占用2个字节。个字节。char(字符型)表示无符号(字符型)表示无符号16位整数,它的可能值集与位整数,它的可能值集与Unicode字符集相对应。字符集相对应。3.3 常用数据类型3.3.2 字符和字符串类型字符和字符串类型常用常用转义字符字符转义符字符名字符的Unicode值转义

29、符字符名字符的Unicode值单引号0x0027f换页0x双引号0x0022n新行0x反斜杠0xr回车0x000D0空字符0x0000t水平制表符0x0009a警告(产生蜂鸣)0x0007v垂直制表符0x000Bb退格0x00083.3 常用数据类型3.3.2字符和字符串类型字符和字符串类型2. 字符串类型字符串类型-string(1) 字符串常量字符串常量字符串常量是由一对双引号界定的字符序列字符串常量是由一对双引号界定的字符序列 例如:例如:teacher and student. (2) 字符串字符串变量量字符串变量声明的格式:字符串变量声明的格式:string 字符串字符串变量量;例如

30、:例如:string str3;变量声明的同时,还可以对变量初始化,变量声明的同时,还可以对变量初始化,例如:例如:string str1=C#语言言;string str2=程序程序设计;3.3 常用数据类型3.3.2字符和字符串类型字符和字符串类型2. 字符串类型字符串类型-string(2) 字符串字符串变量量合并字符串只需在需要合并的子字符串间使用连接运算符合并字符串只需在需要合并的子字符串间使用连接运算符“+”,例如:例如:string myString=欢迎使用迎使用 + C#!;string greeting = Hello, World!;str3=str1+str2; /st

31、r3的的值为:C#语言程序言程序设计3.3 常用数据类型3.3.3 布尔类型和对象类型布尔类型和对象类型1.布尔布尔类型类型-bool表示布表示布尔逻辑量。数据范量。数据范围是是“true”(真)和(真)和“false ”,占用一个字占用一个字节(1) 布布尔常量常量布布尔常量即布常量即布尔值本身,布本身,布尔值true(真)和(真)和false(假)是(假)是C#的两个关的两个关键字字(2) 布布尔变量量bool 变量量标识符符 = 布布尔值;【例例3-4】bool类型型举例例3.3 常用数据类型3.3.3 布尔类型和对象类型布尔类型和对象类型2. 对象对象类型类型object可以表示任何类

32、型的值可以表示任何类型的值,占用字节视具体表示的数据类占用字节视具体表示的数据类型而定型而定。C#中的每种类型都是直接或间接从中的每种类型都是直接或间接从object类型派生的。类型派生的。例如:例如:int x1=123;double x2=34.56;object y1,y2; /声明声明y1,y2是是object类型的型的变量量3.3 常用数据类型3.3.4 枚举枚举类型类型枚枚举(enum)是)是值类型的一种特殊形式,基本格式如下:型的一种特殊形式,基本格式如下:修修饰符符 enum 枚枚举类型名型名: 基基类型型 由逗号分隔的枚由逗号分隔的枚举数数标识符符 ;例如:例如:enum D

33、ays Sun,Mon,Tue,Wed,Thu,Fri,sat;enum Days Mon=1,Tue,Wed,Thu,Fri,Sat,Sun;enum MonthNames January=31,February=28,March=31,April=30;enum MonthNames : byte January=31, February=28, March=31, April=30 ;3.3 常用数据类型3.3.5 引用引用类型类型类(类(class):一组具有相同数据结构和相同操一组具有相同数据结构和相同操作的对象集合。作的对象集合。接口(接口(interface)委托(委托(dele

34、gate)数组(数组(array):包含若干相同类型元素的一组包含若干相同类型元素的一组变量。变量。3.3 常用数据类型3.3.6 类型类型转换转换1. 隐式式转换遵守遵守“由低由低级(字(字节数和精度)数和精度)类型向高型向高级类型型转换,结果果为高高级类型型”的的原原则。例如:例如:string a,b;a=10+”12”; double x=3.1415;int y=21;double z=x+y; 3.4 运算符和表达式运算符和表达式运算符大致分运算符大致分为3类:一元运算符,一元运算符,包括前缀运算符和后缀运算符,用于处理一包括前缀运算符和后缀运算符,用于处理一个操作数个操作数二元运

35、算符,二元运算符,使用时在操作数中间插入运算符,用于处理使用时在操作数中间插入运算符,用于处理两个操作数两个操作数三元运算符,三元运算符,使用时在操作数中间插入运算符,用于处理使用时在操作数中间插入运算符,用于处理三个操作数三个操作数3.4 运算符和表达式运算符和表达式 C#语言运算符语言运算符类别运算符初级运算符(x) x.y f(x) ax x+ x- new type of sizeof checked unchecked一元运算符+ - ! +x x (T)x乘除运算符* / %加减运算符+ -移位运算符关系运算符 = is as等式运算符= !=逻辑与运算符&逻辑异或运算符 逻辑或运

36、算符|条件与运算符&条件或运算符|条件运算符?:赋值运算符= *= /= %= += -= = &= = |=3.4.13.4.1运算符与表达式类型运算符与表达式类型1. 算算术运算符与算运算符与算术表达式表达式 一元运算符:一元运算符:-(取(取负)、)、+(取正)、(取正)、+(增量)、(增量)、-(减(减量)。量)。 二元运算符:二元运算符:+(加)、(加)、-(减)、(减)、*(乘)、(乘)、/(除)、(除)、%(求余)。(求余)。 自增自增+和自减和自减- - ( 例例3-5 )+(或(或- -)在前,如)在前,如y=+(或(或- -)x,表示先将,表示先将x值做值做+(或(或- -

37、)运算,然后再赋值给)运算,然后再赋值给y;+(或(或- -)在后,如)在后,如y=x+(或(或- -),表示先将),表示先将x值赋值给值赋值给y,然后再将,然后再将x值做值做+(或(或- -)运算;)运算;乘法运算时的溢出现象乘法运算时的溢出现象 3.4.13.4.1运算符与表达式类型运算符与表达式类型2.字符串运算符与字符串表达式字符串运算符与字符串表达式字符串运算符只有一个,即字符串运算符只有一个,即“+”运算符,表示将两个字符串运算符,表示将两个字符串连接接起来起来。例如:例如:string connec=abcd+ef; / connec的的值为“abcdef”“+”运算符运算符还可

38、以将字符型数据与字符串型数据或多个可以将字符型数据与字符串型数据或多个字符型数据字符型数据连接在一起,例如:接在一起,例如:string connec=abcd+e+f; / connec的的值为“abcdef”3.4.13.4.1运算符与表达式类型运算符与表达式类型3. 关系运算符与关系表达式关系运算符与关系表达式关系运算符的作用是比较两操作数的大小,如表所示。关系运算符的作用是比较两操作数的大小,如表所示。关系运算符都是二元运算符,左右操作数都是表达式,返关系运算符都是二元运算符,左右操作数都是表达式,返 回回 布布 尔尔 类类 型型 的值的值true或或 false。运算符用途= 检查是

39、否相等。!= 检查是否不相等。 大于。= 大于或等于。3&12; / b2的的值为falsebool b3=53|12; / b3的的值为true3.4.13.4.1运算符与表达式类型运算符与表达式类型5. 条件运算符与条件表达式条件运算符与条件表达式条件运算符是条件运算符是C#中唯一的三元运算符,条件运算符由符号中唯一的三元运算符,条件运算符由符号“?”与与“:”组成,通成,通过操作三个操作数完成运算,一般格式操作三个操作数完成运算,一般格式为:布布尔类型表达式型表达式?表达式表达式1:表达式表达式2条件运算符的功能条件运算符的功能为:如果关系表达式的如果关系表达式的值是是true,则条件运

40、条件运算表达式得到的算表达式得到的值为表达式表达式1的的值,否,否则为表达式表达式2的的值。例如:例如:x0?x:-x /判断表达式判断表达式x0的的值,如果是,如果是true结果果为x,如果是,如果是false结果果为-x3.4.13.4.1运算符与表达式类型运算符与表达式类型6. 赋值运算符与运算符与赋值表达式表达式赋值就是就是给一个一个变量量赋一个新一个新值。在。在赋值表达式中,表达式中,赋值运算运算符左符左边的操作数必的操作数必须是一个是一个变量。量。(1)简单赋值运算符运算符“=”运算符被称运算符被称为简单赋值运算符。运算符。赋值表达式的格式:表达式的格式:变量量=表达式表达式在一个

41、在一个简单赋值中,如果中,如果赋值运算符两运算符两边的操作数的操作数类型不一致,那就先要型不一致,那就先要进行行类型型转换。若使其自。若使其自动发生生类型型转换需符合下面条件:需符合下面条件:两个类型是兼容的。两个类型是兼容的。目的类型比源类型的取值范围大。目的类型比源类型的取值范围大。C#中可以中可以对变量量进行行连续赋值,这时赋值运算符是右关运算符是右关联的,的,意味着从右向左运算符被分意味着从右向左运算符被分组。例如,例如,a=b=c的表达式等价于的表达式等价于a=(b=c)。3.4.2 3.4.2 运算符的优先级与结合性运算符的优先级与结合性1. 运算符的运算符的优先先级 一元运算符的

42、一元运算符的优先先级高于二元和三元运算符。高于二元和三元运算符。 不同种不同种类运算符的运算符的优先先级有高低之分,算有高低之分,算术运算符的运算符的优先先级高于关系运算符,关系运算符的高于关系运算符,关系运算符的优先先级高于高于逻辑运算符,运算符,逻辑运算符的运算符的优先先级高于条件运算符,条件运算符的高于条件运算符,条件运算符的优先先级高高于于赋值运算符。运算符。 有些同有些同类运算符运算符优先先级也有高低之分,在算也有高低之分,在算术运算符中,乘、运算符中,乘、除、求余的除、求余的优先先级高于加、减;在关系运算符中,小于、大高于加、减;在关系运算符中,小于、大于、小于等于、大于等于的于、小于等于、大于等于的优先先级高于相等与不等;高于相等与不等;逻辑运运算符的算符的优先先级按从高到低排列按从高到低排列为非、与、或。非、与、或。可以使用可以使用圆括号明确运算括号明确运算顺序。序。本章小结关键字关键字运算符和表达式运算符和表达式语句语句常量、变量常量、变量常用的数据类型常用的数据类型习习 题题1. 选择题(选择题(P. ) (1) (12)2. 填充题填充题 (1) (2)3. 问答题问答题 (1) (3)3. 编程题编程题 (1) (3)

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号