C#经典入门教程详解知识讲解课件.ppt

上传人(卖家):晟晟文业 文档编号:5183033 上传时间:2023-02-16 格式:PPT 页数:431 大小:5.21MB
下载 相关 举报
C#经典入门教程详解知识讲解课件.ppt_第1页
第1页 / 共431页
C#经典入门教程详解知识讲解课件.ppt_第2页
第2页 / 共431页
C#经典入门教程详解知识讲解课件.ppt_第3页
第3页 / 共431页
C#经典入门教程详解知识讲解课件.ppt_第4页
第4页 / 共431页
C#经典入门教程详解知识讲解课件.ppt_第5页
第5页 / 共431页
点击查看更多>>
资源描述

1、第第1章章 C#与与NET平台介绍平台介绍本章目标本章目标了解了解.NET Framework 的结构的结构理解理解.NET Framework 的基本概念的基本概念CLRJITCTSMSIL了解了解.NET Framework 命名空间命名空间了解了解C#程序的基本结构程序的基本结构1 C#语言的由来语言的由来在过去的二十年里,C和C+已经成为在商业软件的开发领域中使用最广泛的语言。它们为程序员提供了十分灵活的操作,不过同时也牺牲了一定的开发效率。与VB等语言相比,同等级别的C/C+应用程序往往需要更长时间来开发。由于C/C+语言的复杂性,许多程序员都试图寻找一种新的语言,希望能在功能与效率

2、之间找到一个更为理想的权衡点。VB以牺牲灵活性的代价来提高效率。可是这些灵活性正是C/C+程序员所需要的。这些解决方案对编程人员的限制过多(如屏蔽一些底层代码控制的机制),所提供的功能难以令人满意。这些语言无法方便地同早先的系统交互,也无法很好地和当前的网络编程相结合。C#语言的特点:C#语言是Microsoft发布的一种全新的编程语言,是其.Net战略的一枚重要棋子。C#语言是面向对象的、现代的编程语言,用C#编写的应用程序可以充分利用.Net的框架体系带来的优点.既可以用来编写基于通用网络协议的Internet服务软件,也可以编写各种数据库、网络服务应用程序和Windows窗口界面程序。C

3、#继承了C/C+的优点和灵活性,能够充分利用OS系统的底层功能,同时又具备了完全的面向对象特性。可以让初学者直接了解面向对象编程的各种概念,学习现代的编程思想和手段。代码代码被执行被执行C+VB编译器编译器编译器编译器可执行可执行代码代码可执行可执行代码代码RUNTIMERUNTIME2 .NET代码的编译代码的编译语言特定的编译器和运行库语言特定的编译器和运行库代码代码被执行被执行C+VB编译器编译器编译器编译器可执行可执行代码代码可执行可执行代码代码RUNTIMERUNTIMEIL+元数据CLRIL 和和 CLR 的使用的使用Intermediate LanguageCommon Lang

4、uage Runtime编译执行.NET 程序MSIL+元数据元数据机器机器代码代码代码代码被执行被执行CLR第一次编译第一次编译第二次编译第二次编译.NET 程序被编译两次,第一次编译很慢,而第二次程序被编译两次,第一次编译很慢,而第二次编译较快!编译较快!语言语言编译器编译器.NET 源代码源代码Microsoft 中间语言中间语言MSIL+元数据机器代码代码 被执行CLRMSIL帮助语言实现互操作IL 不是字节代码,但很接近字节代码。因此,执行应用程序时,IL 到机器码的转换速度非常快!通过 CLR将 MSIL 转换为具体 CPU 的代码CPU 无关的指令集语言语言编译器编译器.NET

5、源代码程序集程序集moduleILIL语言范例语言范例 IL_0000:nop IL_0001:call IL_0006:nop IL_0007:ldc.i4.0 IL_0008:call IL_000d:nop IL_000e:ldnull IL_000f:ldftn IL_0015:newobj IL_001a:call IL_001f:nop IL_0020:newobj IL_0025:call IL_002a:nop IL_002b:newobj IL_0030:throw通用语言运行时通用语言运行时CLRCLR.NET 源代码MSIL+元数据机器代码代码被执行管理内存易于设计组件和

6、应用程序,其对象可以跨语言互动跨语言集成(特别是跨语言继承)JIT 编译器:一次编译,就可运行在支持运行库的任何 CPU 和操作系统上语言语言编译器编译器.NET的语言互操作性:的语言互操作性:不同语言编写的代码可互相调用不同语言编写的代码可互相调用C#的平台移植性:的平台移植性:框架框架JIT编译器编译器(Just In Time,即时编译器即时编译器。)3 .NET Framework 简介简介.NET Framework类似于类似于JVM.NET Framework 两个主要组件:两个主要组件:通用语言运行时通用语言运行时(CLR)统一的类库集统一的类库集.NET的类库的类库:线程线程文

7、件输入文件输入/输出输出(I/O)数据库支持数据库支持XML 解析解析数据结构数据结构.NET Framework 的体系结构通用语言运行时通用语言运行时(CLR)IO,Drawing,Threading操作系统操作系统.Net Framework 类类库库(FCL)CLS和和CTS通用语言规范通用语言规范 CLS Common Language Specification规定所有规定所有.NET 语言都应语言都应遵循的规则遵循的规则生成可与其他语言互操作生成可与其他语言互操作的应用程序的应用程序通用类型系统通用类型系统(Common Type System,CTS。)包含标准数据类型包含标准

8、数据类型 包含准则集包含准则集CLS、CTS 和和 MSIL 紧密配合以实现语言互操作性紧密配合以实现语言互操作性命名空间就像在文件系统中一个文件夹容纳多命名空间就像在文件系统中一个文件夹容纳多个文件一样,可以看作某些类的一个容器。通个文件一样,可以看作某些类的一个容器。通过把类放入命名空间可以把相关的类组织起来,过把类放入命名空间可以把相关的类组织起来,并且可以避免命名冲突。命名空间既用作程序并且可以避免命名冲突。命名空间既用作程序的的“内部内部”组织系统,也用作组织系统,也用作“外部外部”组织系组织系统(一种向其他程序公开自己拥有的程序元素统(一种向其他程序公开自己拥有的程序元素的方法)的

9、方法)使用命名空间:使用命名空间:using类似类似#include4 命名空间1.Hclass A 2.Hclass A 3.cpp#include“1.h”#include“2.h”.3.cppclass A class A namespace a1class A namespace a2class A 3.csusing a1;using a2;a1.Aa2.A常用命名空间常用命名空间命名空间命名空间说明说明System.Drawing 处理图形和绘图,包括打印处理图形和绘图,包括打印 System.Data 处理数据存取和管理,在定义处理数据存取和管理,在定义 ADO.NET 技术中扮

10、技术中扮演重要角色演重要角色System.IO 管理对文件和流的同步和异步访问管理对文件和流的同步和异步访问System.Windows 处理基于窗体的窗口的创建处理基于窗体的窗口的创建System.Reflection 包含从程序集读取元数据的类包含从程序集读取元数据的类System.Threading 包含用于多线程编程的类包含用于多线程编程的类 System.Collections 包含定义各种对象集的接口和类包含定义各种对象集的接口和类5 创建创建“Hello World”应用程序应用程序单击单击“开始开始”“程序程序”“Microsoft Visual Studio.NET 2005

11、”“Microsoft Visual Studio.NET 2005”此时将打开此时将打开 VS.NET 2005 的起始页的起始页要创建要创建 C#控制台应用程序,请从列表中选择控制台应用程序,请从列表中选择“创创建建建建”“项目项目”。此时将打开。此时将打开“新建项目新建项目”窗口窗口选择选择“Visual C#项目项目”作为项目类型,选择作为项目类型,选择“控控制台应用程序制台应用程序”作为模板作为模板 C#模板模板Console.WriteLine(Hello World);输出输出HelloWorld.csprojAssemblyInfo.csProgram.cs“Hello Wor

12、ld”应用程序文件应用程序文件编译和执行编译和执行 C#应用程序应用程序要生成要生成 C#项目,请从菜单中选择项目,请从菜单中选择“生成生成”“生成解决方案生成解决方案”该过程将编译项目中包括的所有文件,编译结该过程将编译项目中包括的所有文件,编译结果显示在果显示在“输出输出”窗口中窗口中 如果结果显示如果结果显示“生成生成:1 成功或最新,成功或最新,0失败,失败,0被跳过被跳过”,则说明已经成功生成,然后即可交付,则说明已经成功生成,然后即可交付该应用程序该应用程序要运行刚才生成的应用程序,请从菜单中选要运行刚才生成的应用程序,请从菜单中选择择“调试调试”“开始执行开始执行(不调试不调试)

13、”输出结果显示在输出结果显示在 VS.NET 控制台窗口中控制台窗口中C#应用程序文件夹结构应用程序文件夹结构Visual Studio.NET 2005 创建一个与项目同名的文创建一个与项目同名的文件夹,此处为件夹,此处为“HelloWorld”该文件夹包含项目文件该文件夹包含项目文件“HelloWorld.csproj”和其和其他关联文件他关联文件 每个新项目都创建了每个新项目都创建了 bin、obj和和Properties 三个文三个文件夹。件夹。Bin和和obj这两个文件夹下都有一个这两个文件夹下都有一个 Debug 子目录,其子目录,其中包含可执行文件中包含可执行文件 HelloWo

14、rld.exe 在在“解决方案资源管理器解决方案资源管理器”中启用中启用“显示所有文件显示所有文件”选选项,可查看项,可查看“HelloWorld”项目的结构项目的结构 /这是用这是用 C#编写的一个简单的编写的一个简单的 HelloWorld 程序程序using System;namespace Notepadclass HelloWorldstatic void Main()Console.WriteLine(Hello World);声明 HelloWorld 类描述代码的注释Hello World 程序程序程序入口点,Main 的返回类型为 void控制台类的 WriteLine()方

15、法用于显示输出结果导入 System 命名空间声明命名空间 Notepad将文件保存为将文件保存为*.cs说明说明:1.程序一般包括以下几部分:程序一般包括以下几部分:名称空间的引用:使用名称空间的引用:使用using关键字指明引用的名称空间。关键字指明引用的名称空间。名称空间的声明:使用名称空间的声明:使用namespace关键字声明名称空间。关键字声明名称空间。类:使用类:使用class关键字声明类。关键字声明类。Main方法:方法:Main方法是方法是C#程序的入口。程序的入口。2.类中包含了程序所要用到的数据和所要执行的方法的定义。每个类中类中包含了程序所要用到的数据和所要执行的方法的

16、定义。每个类中可以有:可以有:(1)变量声明变量声明 (2)构造函数构造函数 (3)方法方法 (4)属性属性 (5)事件事件3.一个文件中可以有一个文件中可以有1个或者多个类。个或者多个类。4.所有语句都以分号所有语句都以分号;结束。结束。ZJWCHCC#语言基础语言基础第第2章章目标目标在在C#中定义变量和常量中定义变量和常量使用使用C#中的基本数据类型中的基本数据类型理解装箱和拆箱的概念理解装箱和拆箱的概念使用使用C#中的运算符,选择结构和循环结构中的运算符,选择结构和循环结构定义和使用数组,了解结构和枚举定义和使用数组,了解结构和枚举了解了解C#中的预处理指令中的预处理指令理解理解C#中

17、常用的字符串处理方法中常用的字符串处理方法第一个第一个 C#程序程序:HelloWorld using System;class HelloWorld static void Main()Console.WriteLine(“Hello,World!”);HelloWorld.cs第一个第一个 C#程序程序:HelloWorld1:using System;第第 1 行:行:using 关键字关键字用来引用用来引用.NET框架类库中的资源框架类库中的资源通常在程序文件的开头使用通常在程序文件的开头使用如果程序中需要多种资源,可以使用多次如果程序中需要多种资源,可以使用多次usingSystem

18、 命名空间命名空间System命名空间提供了构建应用程序所需的系统统能的访命名空间提供了构建应用程序所需的系统统能的访问问第一个第一个 C#程序程序:HelloWorld2:class HelloWorld3:.8:第第 2,3,8 行:行:类类在在C#或其他面向对象语言中,需要编写类或其他面向对象语言中,需要编写类使用关键字使用关键字class定义一个类,类的内容放在一对定义一个类,类的内容放在一对 中中示例中定义了一个名为示例中定义了一个名为HelloWorld的类的类第一个第一个 C#程序程序:HelloWorld4:static void Main()5:.7:第第 4,5,7 行:行

19、:Main 方法方法w Main 方法是应用程序的入口点,编译器将由该处开始执行方法是应用程序的入口点,编译器将由该处开始执行程序程序w 方法体也放在一对方法体也放在一对 中中w 每个每个C#的应用程序都必须包含的应用程序都必须包含Main方法方法4:static void Main()5:.7:第第 4,5,7 行:行:Main方法方法 w static表示表示Main方法是一个全局方法方法是一个全局方法w void表示表示Main方法没有任何返回值,即返回值是空方法没有任何返回值,即返回值是空w 参数放在小括号中定义。此处括号内没有内容,表明参数放在小括号中定义。此处括号内没有内容,表明M

20、ain方法方法没有任何参数没有任何参数第一个第一个 C#程序程序:HelloWorld6:Console.WriteLine(“Hello,World!”);第第 6 行:行:语句语句w 在在C#中要执行的指令中要执行的指令w 语句之间用;分隔,编译器通过分号来区分多个语句语句之间用;分隔,编译器通过分号来区分多个语句w 使用大括号使用大括号 标识某个代码块的开始和结束,从而可以对语标识某个代码块的开始和结束,从而可以对语句进行组合。大括号必须成对匹配。句进行组合。大括号必须成对匹配。第一个第一个 C#程序程序:HelloWorld6:Console.WriteLine(“Hello,Worl

21、d!”);第第 6 行:行:语句语句w HelloWorld程序的主要目的就是在屏幕上显示一条问候程序的主要目的就是在屏幕上显示一条问候 WriteLine方法用来将问候语写到标准输出设备上。方法用来将问候语写到标准输出设备上。w Console代表标准输出设备代表标准输出设备-屏幕,它属于屏幕,它属于System命名空间命名空间 w WriteLine方法是方法是Console类的方法。访问类或对象的方法使用类的方法。访问类或对象的方法使用 点取符点取符.来完成。来完成。w 字符串用双引号字符串用双引号“”表示表示w 字符串字符串“Hello,World”是是WriteLine方法的参数,表

22、示屏幕输出方法的参数,表示屏幕输出 的内容的内容第一个第一个 C#程序程序:HelloWorld系统预定义类型系统预定义类型类型类型描描 述述范围范围/精度精度例子例子object所有其它类型的最根本的基所有其它类型的最根本的基础类型础类型object o=null;string字符串类型,一个字符串是字符串类型,一个字符串是一个一个Unicode字符序列字符序列string s=Hello;sbyte8-bit 有符号整数类型有符号整数类型128.127sbyte val=12;short16-bit有符号整数类型有符号整数类型32,768.32,767short val=12;int32-

23、bit有符号整数类型有符号整数类型2,147,483,648.2,147,483,647int val=12;long64-bit有符号整数类型有符号整数类型9,223,372,036,854,775,808.9,223,372,036,854,775,807long val1=12;long val2=34L;byte8-bit无符号整数类型无符号整数类型0.255byte val1=12;byte val2=34U;ushort16-bit无符号整数类型无符号整数类型0.65,535ushort val1=12;ushort val2=34U;uint32-bit无符号整数类型无符号整数类

24、型0.4,294,967,295uint val1=12;uint val2=34U;系统预定义类型系统预定义类型类型类型描描 述述范围范围/精度精度例子例子ulong64-bit无符号整数类型无符号整数类型0.18,446,744,073,709,551,615ulong val1=12;ulong val2=34U;ulong val3=56L;ulong val4=78UL;float单精度浮点数类型单精度浮点数类型1.5 1045 至至 3.4 1038,7 位精度位精度float val=1.23F;double双精度浮点数类型双精度浮点数类型5.0 10324 至至 1.7 103

25、08,15 位精度位精度double val1=1.23;double val2=4.56D;bool布尔类型类型布尔类型类型;一个布尔类型数据一个布尔类型数据不是真就是假不是真就是假true,falsebool val1=true;bool val2=false;char字符类型字符类型;一个字符数据是一个一个字符数据是一个Unicode字符字符char val=h;decimal精确十进制类型,有精确十进制类型,有28个有效位个有效位1.0 1028 至至 7.9 1028,28 位精度位精度decimal val=1.23M;字面量字面量类型类别后缀示例/允许的值bool布尔布尔无无tr

26、ue或或falseint整数整数无无int x=100uint,ulog整数整数U或或Uuint x=1000ulong,ulong长整型长整型L或或llong x=100000Lulong无符号长整型无符号长整型ul,uL,Ul,UL,lu,Lu,lU或或LUulong x=4324ulfloat单精度浮点数类型单精度浮点数类型F或或ffloat x=34.76Fdouble双精度浮点数类型双精度浮点数类型D或或ddouble x=763.7245Ddecimal精确十进制类型精确十进制类型M或或mdecimal x=1.544Mchar字符字符无无char x=astring字符串字符串无

27、无string=”abc”int:int iMax=int.MaxValue;int pVal=int.Parse(“100”);short i16=50;int i32=i16;i16=i32;错误错误i16=(short)i32;decimaldecimal iRate=3.9834M;iRate=decimal.Round(iRate,2);/四舍五入四舍五入iRate=decimal.Remainder(512.0M,51.0M);boolbool bt=(bool)1;/错误错误charstring pattern=“123abcd?”;bool bt;bt=char.IsLette

28、r(pattern,3);bt=char.IsNumber(pattern,3);bt=char.IsLower(pattern,3);bt=char.IsPunctuation(pattern,7);bt=char.IsLetterOrDigit(pattern,3);single,doublefloat f=24567.66f;double d=124.45;If(Single.IsNaN(1/0)使用使用Parse转换数字字符串转换数字字符串short shParse=Int16.Parse(100);int iParse=Int32.Parse(100);long shParse=In

29、t64.Parse(100);decimal dParse=decimal.Parse(“99.99);float sParse=float.Parse(“99.99);double dParse=double.Parse(“99.99);字符串字符串字符串直接量字符串直接量string path;path=”C:note.txt”;path=“C:note.txt”;字符串操作字符串操作索引字符串中的单个字符索引字符串中的单个字符string str=“abcd”;char c=str0;字符串连接字符串连接string s1=“My age=“;int myAge=28;string ca

30、t=s1+myAge;字符串操作字符串操作抽取和定位子串抽取和定位子串string poem=“In Xanadu did Kubla Khan”;string poemSeg=poem.Substring(10);poemSeg=poem.Substring(0,9);int index=poem.IndexOf(“I”);index=poem.LastIndexOf(“n”);比较字符串比较字符串bool isMatch;string title=Ancient Mariner;isMatch=(title=ANCIENT AMRINER);isMatch=(title.ToUpper()

31、=ANCIENT MARINER);isMatch=title.Equals(Ancient Mariner);String常用方法常用方法C#中常用的字符串处理方法:中常用的字符串处理方法:Equals():比较两个字符串的值是否相等:比较两个字符串的值是否相等ToLower():将字符串转换成小写形式:将字符串转换成小写形式IndexOf():查找某个字符在字符串中的位置:查找某个字符在字符串中的位置SubString():从字符串中截取子字符串:从字符串中截取子字符串Join():连接字符串:连接字符串Split():分割字符串:分割字符串Trim():去掉字符串两边的空格:去掉字符串两

32、边的空格实例实例 将一文件名的扩展名改为将一文件名的扩展名改为.dat。例:。例:1.txt改为改为1.datusing System;using System.Collections.Generic;using System.Linq;using System.Text;namespace _011 class Program static void Main(string args)string filename=1.2.txt;int indexDot=filename.LastIndexOf(.);string extendName=dat;filename=filename.Subs

33、tring(0,indexDot+1);filename+=extendName;Console.WriteLine(filename);String 常用方法应用常用方法应用1已有如下代码,按要求增加功能:已有如下代码,按要求增加功能:static void Main(string args)string email;/电子邮件地址电子邮件地址 Console.WriteLine(请输入你的邮箱请输入你的邮箱:);email=Console.ReadLine();Console.WriteLine(你的邮箱是你的邮箱是 0,email);需实现的功能:需实现的功能:1、输入输入 yes 时,

34、程序循环执行时,程序循环执行2、兼容以下各种形式兼容以下各种形式 yes(YES、yes、YeS.)3、提取邮箱的用户名提取邮箱的用户名using System;using System.Collections.Generic;using System.Linq;using System.Text;namespace _011 class Program static void Main(string args)while(1)string email;/电子邮件地址 Console.WriteLine(请输入你的邮箱:);email=Console.ReadLine();Console.Wr

35、iteLine(你的邮箱是 0,email);Console.WriteLine(继续输入邮箱吗?);string input=Console.ReadLine();if(input.ToUpper()=YES)continue;else break;while(true)String 常用方法应用常用方法应用2输入一个字符串,输出每个单词,重新用下划线输入一个字符串,输出每个单词,重新用下划线连接输出连接输出使用使用 Split()方法分割字符串方法分割字符串使用使用 Join()方法连接字符串方法连接字符串Split()方法方法分割字符串分割字符串代码分析代码分析splitStrings=

36、inputString.Split();/将分割后的字符串使用下划线连接在一起将分割后的字符串使用下划线连接在一起joinString=string.Join(_,splitStrings);返回值为返回值为字符串数组字符串数组字符串变量名字符串变量名参数:分隔符(参数:分隔符(char型)型)返回字符串返回字符串静态方法静态方法参数参数1:连接符:连接符参数参数2:字符串数组:字符串数组关键代码:关键代码:Join()方法方法连接字符串连接字符串using System;class Program static void Main(string args)string inputString

37、;inputString=Console.ReadLine();inputString=inputString.Trim();string splitStrings=inputString.Split();string joinString=string.Join(_,splitStrings);Console.WriteLine(joinString);如果字符串两边有空格?如果字符串两边有空格?Format()方法方法两种输出字符串的方式:两种输出字符串的方式:string name=李四李四;Console.WriteLine(My name is +name+,I am+18);str

38、ing name=李四李四;Console.WriteLine(My name is 0,I am 1,name,18);格式字符串格式字符串变量列表变量列表String类的类的Format()方法用来格式化字符串方法用来格式化字符串关键代码:关键代码:record=string.Format(姓名姓名:0n出生年月出生年月:1n身高身高:2n 血型血型:3n星座星座:4n最喜欢的食物最喜欢的食物:5,name,birthday,height,bloodType,planet,favourFood);Console.WriteLine(n这是你的个人档案这是你的个人档案:);Console.W

39、riteLine(record);参数与参数与 WritLine()方法相似方法相似Format()的语法小结的语法小结string myString=string.Format(格式字符串格式字符串,参数列表参数列表);string myString=string.Format(0 乘以乘以 1 等于等于 2,2,3,2*3);格式字符串格式字符串代表代表参数列表参数列表2乘以乘以3等于等于6包括占位符包括占位符x小结小结补充补充下划线处的下划线处的占位符占位符,输出五个成语,输出五个成语string yi=一一;string er=二二;string san=三三;string word=

40、string.Format(独独 _ 无无 _,_ 心心 _ 意意,垂涎垂涎 _ 尺尺,略知略知 _ _,举举_ 反反 _,yi,er,san);Console.WriteLine(word);string yi=一一;string er=二二;string san=三三;string word=string.Format(独独0无无1,2心心1意意,垂涎垂涎2尺尺,略知略知01,举举0反反2,yi,er,san);Console.WriteLine(word);枚举枚举qaccess modifiers enum :enum_base enum bodyclass MyAppenum Fab

41、ric:int Cotton=1,Silk=2,Wool=4static void Main()Fabric fab=Fabric.Cotton;int fabNum=(int)fab;string fabType=fab.ToString();Console.WriteLine(fab);整型,默认为整型,默认为int默认为默认为internal枚举和位标志枚举和位标志namespace MyHelloApp class myApp Flags enum Fabric Cotton=1,Silk=2 static void Main()Fabric fab1=(Fabric)3;Consol

42、e.WriteLine(fab1.ToString();System.Enum的方法的方法using System;namespace App1 class myApp enum Fabric Cotton=1,Silk=2 static void Main()string fabStr=Cotton;if(Enum.IsDefined(typeof(Fabric),fabStr)Fabric fab=(Fabric)Enum.Parse(typeof(Fabric),fabStr);Console.WriteLine(Enum.GetName(typeof(Fabric),2);变量变量st

43、atic void Main(string args)/声明布尔型、字符串型、整型、短整型和浮点型变量 bool t=false;short n1=30;int n2=1200;string str=jeny;float n3=23.1f;/显示变量值 Console.WriteLine(布尔值 =+t);Console.WriteLine(短整型值 =+n1);Console.WriteLine(整型值 =+n2);Console.WriteLine(字符串值 =+str);Console.WriteLine(浮点值 =+n3);变量中存储的值取决于该变量的类型常量常量static void

44、 Main(string args)/PI常量PIconst float _pi=3.1415169F;/由地球引力引起的加速度常量,单位为 cm/s*s const float _gravity=980;/钟摆的长度 int length=60;/钟摆的周期 double period=0;/钟摆周期的计算公式 period=2*_pi*Math.Sqrt(length/_gravity);Console.WriteLine(钟摆的周期为 0 秒,period);声明常量在表达式中使用常量qconst 关键字用于声明常量数组数组数组是同一数据类型的一组值数组是同一数据类型的一组值 数组属于引

45、用类型,因此存储在堆内存中数组属于引用类型,因此存储在堆内存中 数组元素初始化或给数组元素赋值都可以在声数组元素初始化或给数组元素赋值都可以在声明数组时或在程序的后面阶段中进行明数组时或在程序的后面阶段中进行 语法语法:数据类型数据类型,数组名称数组名称=new 类型类型 n,;int arrayHere=new int 6;数组数组static void Main(string args)int count;Console.WriteLine(“请输入准备登机的乘客人数);count=int.Parse(Console.ReadLine();/声明一个存放姓名的字符串数组,其长度等于乘客人数

46、 string names=new stringcount;/用一个 for 循环来接受姓名 for(int i=0;i检查一个数是否大于检查一个数是否大于另一个数另一个数 操作数操作数1 操作数操作数2检查一个数是否小于检查一个数是否小于另一个数另一个数 操作数操作数1=检查一个数是否大于检查一个数是否大于或等于另一个数或等于另一个数 操作数操作数1=操作数操作数2=检查一个数是否小于检查一个数是否小于或等于另一个数或等于另一个数 操作数操作数1=操作数操作数2=检查两个值是否相等检查两个值是否相等 操作数操作数1=操作数操作数2!=检查两个值是否不相检查两个值是否不相等等操作数操作数1!=

47、操作数操作数2运算符和表达式运算符和表达式类别类别运算符运算符说明说明表达式表达式成员访问运算符成员访问运算符.用于访问数据结构的成员用于访问数据结构的成员 数据结构数据结构.成员成员赋值运算符赋值运算符=给变量赋值给变量赋值 操作数操作数1=操作数操作数2逻辑运算符逻辑运算符&对两个表达式执行逻辑对两个表达式执行逻辑“与与”运算运算 操作数操作数1&操作数操作数2|对两个表达式执行逻辑对两个表达式执行逻辑“或或”运算运算 操作数操作数1|操作数操作数2!对两个表达式执行逻辑对两个表达式执行逻辑“非非”运算运算!操作数操作数()将操作数强制转换为给定将操作数强制转换为给定的数据类型的数据类型

48、(数据类型数据类型)操作数操作数运算符和表达式运算符和表达式 9-6赋值运算符赋值运算符 (=)变量=表达式;例如:身高=177.5;体重=78;性别=“m”;运算符和表达式运算符和表达式 9-7一元运算符一元运算符 (+/-)Variable +;相当于相当于 Variable=Variable+1;Variable-;相当于相当于 Variable=Variable-1;运算符和表达式运算符和表达式运算符运算符计算方法计算方法表达式表达式求值求值结果(设结果(设 X=10)+=运算结果运算结果=操作数操作数1+操作数操作数2X+=2X=X+212-=运算结果运算结果=操作数操作数1-操作数

49、操作数2X-=2X=X-28*=运算结果运算结果=操作数操作数1*操作数操作数2X*=2X=X*220/=运算结果运算结果=操作数操作数1/操作数操作数2X/=2X=X/25%=运算结果运算结果=操作数操作数1%操作数操作数2X%=2X=X%20运算符和表达式运算符和表达式C#运算符的优先级运算符的优先级优先级优先级说明说明运算符运算符结合性结合性1括号括号()从左到右从左到右2自加自加/自减运算符自减运算符+/-从右到左从右到左3乘法运算符乘法运算符除法运算符除法运算符取模运算符取模运算符*/%从左到右从左到右4加法运算符加法运算符减法运算符减法运算符+-从左到右从左到右5小于小于小于等于小

50、于等于大于大于大于等于大于等于=从左到右从左到右6等于等于不等于不等于=!=从左到右从左到右从左到右从左到右7逻辑与逻辑与&从左到右从左到右8逻辑或逻辑或|从左到右从左到右9赋值运算符和快捷运赋值运算符和快捷运算符算符=+=*=/=%=-=从右到左从右到左选择结构选择结构语法:语法:if()else q选择结构用于根据表达式的值执行语句if else条件:只能是条件:只能是bool类型的值类型的值 选择结构选择结构switch(“cotton”)case“COTTON”:case“cotton”:break;case 值3:case 值4:break;switchcase 表达式可以是表达式可

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

当前位置:首页 > 办公、行业 > 各类PPT课件(模板)
版权提示 | 免责声明

1,本文(C#经典入门教程详解知识讲解课件.ppt)为本站会员(晟晟文业)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|