C#语法基础解读ppt课件.ppt

上传人:牧羊曲112 文档编号:1375493 上传时间:2022-11-16 格式:PPT 页数:49 大小:438KB
返回 下载 相关 举报
C#语法基础解读ppt课件.ppt_第1页
第1页 / 共49页
C#语法基础解读ppt课件.ppt_第2页
第2页 / 共49页
C#语法基础解读ppt课件.ppt_第3页
第3页 / 共49页
C#语法基础解读ppt课件.ppt_第4页
第4页 / 共49页
C#语法基础解读ppt课件.ppt_第5页
第5页 / 共49页
点击查看更多>>
资源描述

《C#语法基础解读ppt课件.ppt》由会员分享,可在线阅读,更多相关《C#语法基础解读ppt课件.ppt(49页珍藏版)》请在三一办公上搜索。

1、1,模块2-1,Visual C#语法,2,using System;namespace hello class Class1 static void Main( string args ) Console.WriteLine(“Hello”); /*我的第一个C#程序*/ ,关键字,2.1一个简单的C#程序,标识符,标识符,3,关键字也叫保留字,是对C#有特定意义的字符串。关键字在Visual Studio 环境的代码视图中默认以蓝色显示。,1、关键字,4,2、标识符,标识符(identifier)是一串字符,在程序中作为各种标识,用来代表一个名字。 C#的标识符有如下规则: (1)一个合法

2、的C#标识符,是由字母、数字、下划线组成,但是第一个字符不能是数字 。 (2)C#的标识符严格区分大小写。 (3)不能是关键字。标识符的名称最好和实际的应用联系起来,这样可以使程序更容易理解,做到“见名知意”。比如,用来表示售货员的标识符使用salesman比用people更容易理解。,标识符的第一个字符不能为数字,5,C#的标识符不能与关键字相同,但是可以使用“”前缀来避免这种冲突。例如:whilewhile,5,C#程序设计实用教程,2、标识符,6,3、.NET的命名空间,using 关键字 允许在一个命名空间中使用另一个命名空间的类 using System; 如果在该例中没有导入该命名

3、空间,则程序应该写成: System. Console.WriteLine(“Hello”);注:using 语句是惟一允许写在任何花括号之外的语句,并且其后必须带有分号“;”一般在创建项目时,会自动生成需要的系统的命名空间,但是如果需要某用户的命名空间,需要自己导入。,7,using 语句使用示例,/ 在这里引入命名空间 System 中的所有名字,以便使用其中/ 的 Console 类进行输入输出。using System;class Program static void Main(string args) Console.WriteLine(“Hello world!”); ,3、.N

4、ET的命名空间,8,3、.NET的命名空间,命名空间又称名空间或名字空间,它是组织应用程序的一种结构。使用命名空间是为了避免程序中类名的冲突。namespace关键字定义命名空间的语法为:namespace name.name1type declarations任何一段代码都必须放在某一个命名空间内,以防止类名的冲突。,9,3、类和方法C#中,必须用类来组织程序的变量与方法。C#要求每个程序必须且只能有一个“Main”方法。“Main”方法必须放在某一个类中。“Main”方法是应用程序的入口。4、 语句语句就是C#应用程序中执行操作的指令。C#中的语句必须用分号“;”结束。可以在一行中书写多条

5、语句,也可以将一条语句书写在多行上。,10,5、在C#中,括号“”和“”是一种范围标志,用于标识应用程序一段代码的开始与结束。6、缩进与空格缩进用于表示代码的结构层次,这在程序中不是必须的,但是缩进可以清晰地表示程序的结构层次。空格有两种作用,一种是语法要求,必须遵守,一种是为使语句不至于太拥挤。例如: int a = 3;,11,7、添加注释: A)“/”:单行注释 B)“/* */”:多行注释 C) /,12,/*导入.NET系统类库提供的命名空间System*/ using System; class Welcome /定义类 static void Main( ) /*程序的入口。其中

6、static 表示Main( ) 方法是一个静态方法,void表示该方法 没有返回值*/ Console.WriteLine(欢迎使用C#); /输出 欢迎使用C# ,13,8、注意:严格区分大小写;大写“A”与小写“a”对C#来说,是两个不同的字符。例如下面的4个标识符是不同的:MembermemberMemBerMEMBER,14,练习:1以下标识符中,错误的是( ) A. _b39 B. x345 C. 6_321 D. nAverage2以下标识符中,正确的是( ) A. _nName B. Main C. 6b D. x5#,15,2.3 C#的数据类型,C#数据类型,值类型,引用类

7、型,简单类型,结构类型,枚举类型,类类型,数组类型,字符串类型,接口类型,委托类型,整数类型,实数类型,字符类型,布尔类型,16,2.3 C#基本数据类型-值类型,1、整数类型,17,2.3 C#基本数据类型-值类型,2、实数类型,精度为7位数,精度可达15到16位,方便我们在金融和货币方面的计算,18,2.3 C#基本数据类型-值类型,数值常量后缀,例如:long l=278L; float f=2.6F; decimal d_value=2.0M;,注:如果不加后缀,整型默认int类型; 实数默认double类型,19,3、字符类型 字符类型的类型标识符是char,采用Unicode字符集

8、,为双字节型,它的数据可以占有2个字节,可表示 65536 种不同的字符,这样就可以直接在一个 char 型变量中存储一个汉字。 凡是在单引号中的一个字符,就是一个字符常数, 如: 你、 A、 ?、 6、2 为了表示单引号和反斜杠等特殊的字符常数,C#提供了转义字符。表2.1列出了C#的转义字符:,2.3 C#基本数据类型-值类型,可以适用于所有已知的编码,20,2.1 C#的转义字符。,2.3 C#基本数据类型-值类型,21,2.3 C#基本数据类型-值类型,例如字符串常量“c:windowssystem32”的真正含义是路径c:windowssystem32。C#可以用反转符去掉反斜杠的转

9、义,如上也可以写成: “c:windowssystem32”,22,2.3 C#基本数据类型-值类型,4、布尔类型 布尔类型是用来表示“真”和“假”这两个概念的,在C#中,分别采用true和false两个值来表示。注意:true值不能被其他任何非零值所代替。只能如下写法:bool x=true; 或 x=false;,23,该类型的变量不直接存储所包含的值,而是指向它所要存储的值的地址。在C#中提供以下引用类型:l 对象类型l 类类型l 接口l 代表元(委托)l 字符串类型l 数组,2.3 C#基本数据类型-引用类型,24,1、对象类型(object) 对象类型是所有类型之母它是其他类型最根本

10、的基类,可把任何类型的值赋给它。例如:object theObj = 123;object theObjc=a;Object theObjd=12.3;,2.2 C#的数据类型-引用类型,25,2.2 C#的数据类型-引用类型,2、字符串类型(string)一个字符串是被双引号包含的一系列字符。 string类是专门用于对字符串进行操作的。string str1=中国,;string str2=你好!;string str3=str1+str2; /这相当于str3=中国,你好!char c=str30; /取出str3的第一个字符,即“中”字。,26,字节数少的类型-字节数多的类型(隐式转换

11、)例如:int a=10;double d=3.5;d=a;a=d;,2.4 数据类型转换,正确,错误,1、值类型,int x = 123456; / int是4字节的整型long y = x; / 隐式转换为long,27,但字节数多的类型-字节数少的类型(显式转换)例如:a=(int)d;,强制类型转换,正确,28,C#中的字符型与整型之间不能自动转换。以下语句在C#中不合法: char c=13;不过用户依旧可以将一个整型数显式地转换为一个字符数据类型,然后赋值给字符变量。如下: char c=(char)13;,注意:bool类型与数字类型之间不能转换,即使强制类型转换也不行。,29,

12、2、引用类型装箱和拆箱: 装箱和拆箱概念是C#类型系统的核心,它可以完成值类型和引用类型之间的转换。 装箱:是指将一个值类型隐式地转换成一个object类型,或者把这个值类型转换成一个被该值类型应用的接口类型。,2.4 数据类型转换,30,对象类型(object)装箱过程分两步:首先创建一个object实例;然后将这个值类型的值复制到这个object实例中。如: int k=10; object obj=k; 也可用显式的方法进行装箱操作: object obj=(object)k;,2.4 数据类型转换,31,例2_6:在程序中执行装箱转换。 class Program static voi

13、d Main(string args) Console.WriteLine(执行装箱转换:); int k=200; object obj=k; k=300; Console.WriteLine(obj=0,obj); Console.WriteLine(k=0, k); ,2.4 数据类型转换,32,拆箱: 和装箱转换正好相反,拆箱转换是指将一个对象类型显式地转换成一个值类型,或是将一个接口类型显式地转换成一个执行该接口的值类型。,2.4 数据类型转换,33,对象类型(object) 拆箱的过程分为两步:首先,检查这个对象实例,看它是否为给定的值类型的装箱值然后,把这个实例的值拷贝给值类型的

14、变量。如: int k=10; object obj=k; int j=(int)obj;,2.4 数据类型转换,34,装箱和拆箱,int value = 130;object o = value;Console.WriteLine (“对象的值 = 0, o);,int value = 130;object o = value;int number = (int) o;Console.WriteLine (num: 0, number);,值类型,引用类型,拆箱,装箱,值类型,引用类型,值类型,注:被装过箱的对象才能被拆箱,35,例2_7:在程序中使用拆箱转换。 class Program

15、static void Main(string args) int k = 228; object obj = k; /装箱转换 int j = (int)obj; /拆箱转换 Console.WriteLine(k=0tobj=1tj=2, k, obj, j); ,该程序执行后,输出结果如下: k=228 obj=228 j=228,36,变量变量是程序运行过程中用于存放数据的存储单元。变量的值在程序的运行过程中可以改变。1、变量的定义变量必须先定义后使用,定义的格式是: 类型名 变量名1,变量名2;例如:int a,b,c;double fsum;string strName;char

16、b;int x;,2.5 变量和常量,注意:C#的标识符要严格区分大小写。,37,2变量的赋值 变量的赋值,就是将数据保存到变量所代表的存储单元中的过程。 格式: 变量名=表达式; 意义:计算表达式的值,然后将这个值赋予变量。例: int nAgeSum; nAgeSum=210; /给nAgeSum变量赋予数值210,2.5 变量和常量,38,3、变量的初始化定义变量时可以一并用“=”赋值,称为变量的初始化。例如:int a=10;初始化时需要注意“=”两边的数据类型的匹配,例如: decimal bankBalance=1200.00; float pi=3.14159;,编译报错,120

17、0.00M,编译报错,3.14159F,若无特殊声明,C#编译器默认所有带小数点的数字都是double类型的,2.5 变量和常量,39,常量定义:在C#中,常量在程序的运行过程中其值是不能改变的,例如,数字100就是一个常量,这样的常量一般被称作常数。符号常量使用const关键字定义,格式为: const 类型名称 常量名=常量表达式;例如:const double pi=3.1415926; double area,vol,r; r=15; area=pi*r*r;,注意:常量一旦赋值,只能使用,不能再赋值,2.5 变量和常量,40,2.6运算符和表达式,运算符和表达式,Result,=,n

18、umber,*,10,变量,变量,常量,操作数,表达式,操作数和运算符的组合,运算符,41,1. 算术运算符与算术表达式 算术运算符有一元运算符与二元运算符。 一元运算符:-(取负)、+(取正)、+(增量)、-(减量)。 二元运算符:+(加)、-(减)、*(乘)、/(除)、%(求余)。例如:7.5%1.5结果为0 37/2 结果为18 37/2.0结果为18.5 由算术运算符与操作数构成的表达式叫算术表达式。,既可以放在操作数左边,也可以放在操作数右边,表示操作数增1或减1,只能放在左边,不仅支持整型数值,还支持实型数值,要注意不同的数据类型,2.6运算符和表达式,42,特殊的算术运算符:+(

19、自增运算符) -(自减速运算符) 作用:使变量的值自动增加1或者减少1。 例如,x=x+1; 可以被写成 +x; /前缀格式 或者 x+; /后缀格式,43,2. 字符串运算符与字符串表达式 字符串运算符只有一个,即“+”运算符,表示将两个字符串连接起来。例如:string connec=abcd+ef; 注:在C#中,允许将字符串与数值型数据进行连接,连接时,数值类型数据被隐式的转换成字符串。例如:”2”+10的结果为“210”,2.6运算符和表达式,44,2.6运算符和表达式,3. 赋值运算符与赋值表达式简单常用的为“=”复合赋值运算符,如“*=”、“/=”、“%=”、“+=”、“-=”等

20、例如: int i=2,j=4; int x=8; x=x+x; x=16-x; i+=j; /等价为i=i+j;,45,4. 关系运算符与关系表达式 ,=,=,=,!=比较两个操作数之间的关系,若关系成立,则返回“true”,否则返回”false”。,2.6运算符和表达式,46,5. 逻辑运算符与逻辑表达式逻辑运算符用于表示两个布尔值之间的逻辑关系,得到的结果只能是true或false。 逻辑非(!):运算的结果是原先的运算结果的逆。逻辑与(&):只有两个运算对象都为true,结果才为true;只要其中有一个是false,结果就为false。逻辑或(| ):只要两个运算对象中有一个是true

21、,结果就为true,只有两个条件均为false,结果才为false。,2.6运算符和表达式,47,当需要多个判定条件时,可以很方便地使用逻辑运算符将关系表达式连接起来。 例: xy&x0 如果表达式中同时存在着多个逻辑运算符,逻辑非的优先级最高,逻辑与的优先级高于逻辑或。 例: 32|!(5-36)&ab,48,5. 条件运算符 条件运算符是C#中唯一的三元运算符。 格式: 操作数1?操作数2:操作数3 含义:进行条件运算时,首先判断问号前面的布尔值是true还是false,如果是true,则值等于操作数2的值;如果为false,则值等于操作数3的值。 例如:条件表达式“68?15+a:39”,由于68的值为false,所以整个表达式的值是39。,49,当表达式包含多个运算符时,运算符的优先级控制各运算符的计算顺序除了赋值运算符外,所有的二元运算都是从左向右执行运算。,算术,关系,逻辑,条件,赋值,为了使表达式按正确的顺序运行,可以添加小括号,2.6运算符和表达式,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号