《C#语言的基本原理.ppt》由会员分享,可在线阅读,更多相关《C#语言的基本原理.ppt(55页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、 MicrosoftMicrosoftMicrosoftMicrosoft 第一章:概述第一章:概述第一章:概述第一章:概述 第二章:第二章:第二章:第二章:C#C#语言的基本原理语言的基本原理语言的基本原理语言的基本原理 第三章:第三章:第三章:第三章:C#C#中对象的创建中对象的创建中对象的创建中对象的创建 第四章:面向对象的编程技术第四章:面向对象的编程技术第四章:面向对象的编程技术第四章:面向对象的编程技术 第五章:第五章:第五章:第五章:C#C#编程编程编程编程 第六章:编写基于第六章:编写基于第六章:编写基于第六章:编写基于.NET .NET 的应用的应用的应用的应用 程序程序程序
2、程序 第七章:使用第七章:使用第七章:使用第七章:使用 ADO.NET ADO.NET 访问访问访问访问 数据数据数据数据 第八章:创建基于第八章:创建基于第八章:创建基于第八章:创建基于 Windows Windows 的应用程序的应用程序的应用程序的应用程序 第九章:在第九章:在第九章:在第九章:在 C#C#应用程序中使应用程序中使应用程序中使应用程序中使 用用用用 XML Web Service XML Web Service 第十章:创建第十章:创建第十章:创建第十章:创建 Web Web 应用程序应用程序应用程序应用程序 十一章:十一章:十一章:十一章:应用程序设置和应用程序设置和应
3、用程序设置和应用程序设置和 部署部署部署部署 十二章:进阶学习目标十二章:进阶学习目标十二章:进阶学习目标十二章:进阶学习目标C#程序设计语言课程内容程序设计语言课程内容2C#C#语言的基本原理语言的基本原理语言的基本原理语言的基本原理内容:内容:内容:内容:C#C#程序的基本原理程序的基本原理程序的基本原理程序的基本原理 C#C#预定义类型预定义类型预定义类型预定义类型 编写表达式编写表达式编写表达式编写表达式 条件语句条件语句条件语句条件语句 循环语句循环语句循环语句循环语句 MicrosoftMicrosoftMicrosoftMicrosoft 学习完本节后,你将能够:学习完本节后,你
4、将能够:学习完本节后,你将能够:学习完本节后,你将能够:了解了解了解了解C#C#语句语句语句语句 使用大括号来组织语句使用大括号来组织语句使用大括号来组织语句使用大括号来组织语句 在代码中加入注释在代码中加入注释在代码中加入注释在代码中加入注释C#程序的基本原理程序的基本原理 2.1 MicrosoftMicrosoftMicrosoftMicrosoft 程序结构程序结构程序结构程序结构w w构成应用程序的必要元素有哪些?构成应用程序的必要元素有哪些?构成应用程序的必要元素有哪些?构成应用程序的必要元素有哪些?w w怎样组织这些元素,使得编译器能够识别应用程序怎样组织这些元素,使得编译器能够
5、识别应用程序怎样组织这些元素,使得编译器能够识别应用程序怎样组织这些元素,使得编译器能够识别应用程序代码?代码?代码?代码?MicrosoftMicrosoftMicrosoftMicrosoft 第一个第一个 C#程序程序:HelloWorld1.using System;2.class HelloWorld3.4.static void Main()5.6.Console.WriteLine(“Hello,World!”);7.8.HelloWorld.cs MicrosoftMicrosoftMicrosoftMicrosoft 第一个第一个 C#程序程序:HelloWorld1:usi
6、ng System;第第 1 行:行:using using 关键字关键字关键字关键字w w用来引用用来引用用来引用用来引用.NET.NET框架类库中的资源框架类库中的资源框架类库中的资源框架类库中的资源w w通常在程序文件的开头使用通常在程序文件的开头使用通常在程序文件的开头使用通常在程序文件的开头使用w w如果程序中需要多种资源,可以使用多次如果程序中需要多种资源,可以使用多次如果程序中需要多种资源,可以使用多次如果程序中需要多种资源,可以使用多次usingusing System System 命名空间命名空间命名空间命名空间w wSystemSystem命名空间提供了构建应用程序所需的
7、系统统能的访问命名空间提供了构建应用程序所需的系统统能的访问命名空间提供了构建应用程序所需的系统统能的访问命名空间提供了构建应用程序所需的系统统能的访问 MicrosoftMicrosoftMicrosoftMicrosoft 第一个第一个 C#程序程序:HelloWorld2:class HelloWorld3:.8:第第 2,3,8 行:行:类类类类w w在在在在C#C#或其他面向对象语言中,需要编写类或其他面向对象语言中,需要编写类或其他面向对象语言中,需要编写类或其他面向对象语言中,需要编写类w w使用关键字使用关键字使用关键字使用关键字classclass定义一个类,类的内容放在一对
8、定义一个类,类的内容放在一对定义一个类,类的内容放在一对定义一个类,类的内容放在一对 中中中中w w示例中定义了一个名为示例中定义了一个名为示例中定义了一个名为示例中定义了一个名为HelloWorldHelloWorld的类的类的类的类 MicrosoftMicrosoftMicrosoftMicrosoft 第一个第一个 C#程序程序:HelloWorld4:static void Main()5:.7:第第 4,5,7 行:行:Main Main 方法方法方法方法w wMain Main 方法是应用程序的入口点,编译器将由该处开始执行方法是应用程序的入口点,编译器将由该处开始执行方法是应用
9、程序的入口点,编译器将由该处开始执行方法是应用程序的入口点,编译器将由该处开始执行程序程序程序程序w w方法体也放在一对方法体也放在一对方法体也放在一对方法体也放在一对 中中中中w w每个每个每个每个C#C#的应用程序都必须包含的应用程序都必须包含的应用程序都必须包含的应用程序都必须包含MainMain方法方法方法方法 MicrosoftMicrosoftMicrosoftMicrosoft 4:static void Main()5:.7:第第 4,5,7 行:行:MainMain方法方法方法方法 w wstaticstatic表示表示表示表示MainMain方法是一个全局方法方法是一个全局
10、方法方法是一个全局方法方法是一个全局方法w wvoidvoid表示表示表示表示MainMain方法没有任何返回值,即返回值是空方法没有任何返回值,即返回值是空方法没有任何返回值,即返回值是空方法没有任何返回值,即返回值是空w w参数放在小括号中定义。此处括号内没有内容,表明参数放在小括号中定义。此处括号内没有内容,表明参数放在小括号中定义。此处括号内没有内容,表明参数放在小括号中定义。此处括号内没有内容,表明MainMain方法方法方法方法没有任何参数没有任何参数没有任何参数没有任何参数第一个第一个 C#程序程序:HelloWorld MicrosoftMicrosoftMicrosoftMi
11、crosoft 6:Console.WriteLine(“Hello,World!”);第第 6 行:行:语句语句语句语句w w在在在在C#C#中要执行的指令中要执行的指令中要执行的指令中要执行的指令w w语句之间用;分隔,编译器通过分号来区分多个语句语句之间用;分隔,编译器通过分号来区分多个语句语句之间用;分隔,编译器通过分号来区分多个语句语句之间用;分隔,编译器通过分号来区分多个语句w w使用大括号使用大括号使用大括号使用大括号 标识某个代码块的开始和结束,从而可以对语标识某个代码块的开始和结束,从而可以对语标识某个代码块的开始和结束,从而可以对语标识某个代码块的开始和结束,从而可以对语句
12、进行组合。大括号必须成对匹配。句进行组合。大括号必须成对匹配。句进行组合。大括号必须成对匹配。句进行组合。大括号必须成对匹配。第一个第一个 C#程序程序:HelloWorld MicrosoftMicrosoftMicrosoftMicrosoft 6:Console.WriteLine(“Hello,World!”);第第 6 行:行:语句语句语句语句w w HelloWorldHelloWorld程序的主要目的就是在屏幕上显示一条问候程序的主要目的就是在屏幕上显示一条问候程序的主要目的就是在屏幕上显示一条问候程序的主要目的就是在屏幕上显示一条问候 WriteLineWriteLine方法用
13、来将问候语写到标准输出设备上。方法用来将问候语写到标准输出设备上。方法用来将问候语写到标准输出设备上。方法用来将问候语写到标准输出设备上。w w ConsoleConsole代表标准输出设备代表标准输出设备代表标准输出设备代表标准输出设备-屏幕,它属于屏幕,它属于屏幕,它属于屏幕,它属于SystemSystem命名空间命名空间命名空间命名空间 w w WriteLineWriteLine方法是方法是方法是方法是ConsoleConsole类的方法。访问类或对象的方法使用类的方法。访问类或对象的方法使用类的方法。访问类或对象的方法使用类的方法。访问类或对象的方法使用 点取符点取符点取符点取符.来
14、完成。来完成。来完成。来完成。w w 字符串用双引号字符串用双引号字符串用双引号字符串用双引号“”“”表示表示表示表示w w 字符串字符串字符串字符串“Hello,WorldHello,World”是是是是WriteLineWriteLine方法的参数,表示屏幕输方法的参数,表示屏幕输方法的参数,表示屏幕输方法的参数,表示屏幕输出出出出 的内容的内容的内容的内容第一个第一个 C#程序程序:HelloWorld MicrosoftMicrosoftMicrosoftMicrosoft 作用作用作用作用w w良好、清晰的组织代码良好、清晰的组织代码良好、清晰的组织代码良好、清晰的组织代码w w提高
15、代码的可读性,易于代码维护提高代码的可读性,易于代码维护提高代码的可读性,易于代码维护提高代码的可读性,易于代码维护 C#C#的代码格式的代码格式的代码格式的代码格式w w缩进缩进缩进缩进w w区分大小写区分大小写区分大小写区分大小写w w忽略空白区忽略空白区忽略空白区忽略空白区w w注释注释注释注释建议使用建议使用建议使用建议使用约定的代约定的代约定的代约定的代码风格码风格码风格码风格 MicrosoftMicrosoftMicrosoftMicrosoft 注释注释注释注释 w w单行注释单行注释单行注释单行注释/w w多行注释多行注释多行注释多行注释/*/*和和和和*/*/This is
16、 my first C#Programusing System;class HelloWorld static void Main()Console.WriteLine(Hello,World);MicrosoftMicrosoftMicrosoftMicrosoft 编译和运行编译和运行 HelloWorld1.using System;2.class HelloWorld3.4.static void Main()5.6.Console.WriteLine(“Hello,World!”);7.8.HelloWorld.cs2C#C#语言的基本原理语言的基本原理语言的基本原理语言的基本原理内
17、容:内容:内容:内容:C#C#程序的基本原理程序的基本原理程序的基本原理程序的基本原理 C#C#预定义类型预定义类型预定义类型预定义类型 编写表达式编写表达式编写表达式编写表达式 条件语句条件语句条件语句条件语句 循环语句循环语句循环语句循环语句 MicrosoftMicrosoftMicrosoftMicrosoft C#预定义类型预定义类型 2.2学习完本章后,你将能够:学习完本章后,你将能够:学习完本章后,你将能够:学习完本章后,你将能够:声明并初始化变量声明并初始化变量声明并初始化变量声明并初始化变量 创建并使用字符串创建并使用字符串创建并使用字符串创建并使用字符串 创建并使用常量创建
18、并使用常量创建并使用常量创建并使用常量 执行类型转换执行类型转换执行类型转换执行类型转换在编写应用程序在编写应用程序在编写应用程序在编写应用程序时,都必须使用时,都必须使用时,都必须使用时,都必须使用某种方式表示数某种方式表示数某种方式表示数某种方式表示数据,因此必须正据,因此必须正据,因此必须正据,因此必须正确使用数据类型确使用数据类型确使用数据类型确使用数据类型 MicrosoftMicrosoftMicrosoftMicrosoft C#C#的内置数据类型大致可划分为:(的内置数据类型大致可划分为:(的内置数据类型大致可划分为:(的内置数据类型大致可划分为:(P25P25表表表表2.1)
19、2.1)逻辑型:逻辑型:逻辑型:逻辑型:boolbool 文本型:文本型:文本型:文本型:char,stringchar,string 整整整整 型:型:型:型:bytebyte,sbyte,shortsbyte,short,ushort,ushort,intint,uint,long,ulong uint,long,ulong 浮点型:浮点型:浮点型:浮点型:float,doublefloat,double,decimal decimal MicrosoftMicrosoftMicrosoftMicrosoft 第第第第 1 1步:声明变量步:声明变量步:声明变量步:声明变量 作用:通过声明
20、变量,可以在内存中为该变量申作用:通过声明变量,可以在内存中为该变量申作用:通过声明变量,可以在内存中为该变量申作用:通过声明变量,可以在内存中为该变量申 请存储空间请存储空间请存储空间请存储空间 语法:语法:语法:语法:类型类型类型类型 变量名;变量名;变量名;变量名;int numberOfVisitors;string bear;MicrosoftMicrosoftMicrosoftMicrosoft 第第第第 2 2步:初始化变量步:初始化变量步:初始化变量步:初始化变量 作用:给变量分配初值作用:给变量分配初值作用:给变量分配初值作用:给变量分配初值 语法:语法:语法:语法:变量名变
21、量名变量名变量名=初值;初值;初值;初值;string bear;bear=“Grizzly”;/声明和初始化一步完成声明和初始化一步完成string bear=“Grizzly”;MicrosoftMicrosoftMicrosoftMicrosoft 注意事项:注意事项:注意事项:注意事项:bool bool 只能取只能取只能取只能取2 2个值:个值:个值:个值:true true 或或或或 false false char char 表示单个表示单个表示单个表示单个UnicodeUnicode字符,用字符,用字符,用字符,用 表示表示表示表示 使用后缀使用后缀使用后缀使用后缀(P27(P
22、27页表页表页表页表2-22-2)bool isOpen=0;/错误bool isOpen=false;char c =A;decimal balance=3400.20;/错误decimal balance=3400.20M;MicrosoftMicrosoftMicrosoftMicrosoft 特殊字符和转义字符特殊字符和转义字符字符名称字符名称转义符转义符字符名称字符名称转义符转义符反斜线反斜线水平制水平制表符表符t退格退格b垂直制表符垂直制表符v回车回车r换行换行n双引号双引号”单引号单引号 有些特殊字符无法直接放在引号中,此时要表示有些特殊字符无法直接放在引号中,此时要表示有些特殊
23、字符无法直接放在引号中,此时要表示有些特殊字符无法直接放在引号中,此时要表示这些字符,必须使用转义符这些字符,必须使用转义符这些字符,必须使用转义符这些字符,必须使用转义符 MicrosoftMicrosoftMicrosoftMicrosoft 检查检查Visual Studio.NET中的变量中的变量 如何设置断点、使用如何设置断点、使用如何设置断点、使用如何设置断点、使用watchwatch窗口、单步执行窗口、单步执行窗口、单步执行窗口、单步执行DemoDemo MicrosoftMicrosoftMicrosoftMicrosoft 字符串表示任意长度的字符串表示任意长度的字符串表示任
24、意长度的字符串表示任意长度的UnicodeUnicode字符序列字符序列字符序列字符序列 字符串使用字符串使用字符串使用字符串使用“”“”表示表示表示表示 可以使用转义字符或可以使用转义字符或可以使用转义字符或可以使用转义字符或verbatimverbatim字符字符字符字符string s=Hello World;string filename=“c:trainerReadme.txt”;/错误或string filename=“c:trainerReadme.txt”;MicrosoftMicrosoftMicrosoftMicrosoft 常量是指一旦被初始化,其数值保持不变的变量常量是
25、指一旦被初始化,其数值保持不变的变量常量是指一旦被初始化,其数值保持不变的变量常量是指一旦被初始化,其数值保持不变的变量 常量通常用来表示有意义的固定数值,如圆周率常量通常用来表示有意义的固定数值,如圆周率常量通常用来表示有意义的固定数值,如圆周率常量通常用来表示有意义的固定数值,如圆周率 声明常量时必须对其赋值声明常量时必须对其赋值声明常量时必须对其赋值声明常量时必须对其赋值语法:语法:语法:语法:const const 类型类型类型类型 常量名常量名常量名常量名 =数值数值数值数值 const decimal PI=3.1415926M;/圆周率圆周率const int earthRadi
26、us=6378;/地球半径地球半径 MicrosoftMicrosoftMicrosoftMicrosoft 思考题:思考题:思考题:思考题:我们经常需要从多个相关的值中进行选取,如我们经常需要从多个相关的值中进行选取,如我们经常需要从多个相关的值中进行选取,如我们经常需要从多个相关的值中进行选取,如 一种天气:晴、阴、雨、雪、雾一种天气:晴、阴、雨、雪、雾一种天气:晴、阴、雨、雪、雾一种天气:晴、阴、雨、雪、雾 一周的某一天:一周的某一天:一周的某一天:一周的某一天:Monday,Tuesday,SundayMonday,Tuesday,Sunday 一年的某个月:一年的某个月:一年的某个月
27、:一年的某个月:Jan,Feb,Mar.DecJan,Feb,Mar.Dec 一种对齐方式:左对齐、右对齐、居中对齐、两一种对齐方式:左对齐、右对齐、居中对齐、两一种对齐方式:左对齐、右对齐、居中对齐、两一种对齐方式:左对齐、右对齐、居中对齐、两端对齐端对齐端对齐端对齐 MicrosoftMicrosoftMicrosoftMicrosoft 枚举类型是一组被命名的数字常量,即:一个枚枚举类型是一组被命名的数字常量,即:一个枚枚举类型是一组被命名的数字常量,即:一个枚枚举类型是一组被命名的数字常量,即:一个枚举类型中包含了多个相关的数字常量,且每个常举类型中包含了多个相关的数字常量,且每个常举
28、类型中包含了多个相关的数字常量,且每个常举类型中包含了多个相关的数字常量,且每个常量都被赋予了一个容易记忆的量都被赋予了一个容易记忆的量都被赋予了一个容易记忆的量都被赋予了一个容易记忆的“名字名字名字名字”使用使用使用使用enumenum关键字创建枚举类型关键字创建枚举类型关键字创建枚举类型关键字创建枚举类型enum Weather Sunny,/默认值0Cloudy,/默认值1Rain,/默认值2Snow,/默认值3fog /默认值4 MicrosoftMicrosoftMicrosoftMicrosoft 引用枚举成员引用枚举成员引用枚举成员引用枚举成员Weather bj;bj=Weat
29、her.Sunny;/显示结果Console.WriteLine(bj);/显示Sunny,而不是数字0 MicrosoftMicrosoftMicrosoftMicrosoft 给枚举成员明确赋值给枚举成员明确赋值给枚举成员明确赋值给枚举成员明确赋值enum Month Jan=1,Feb=2,Mar=3,Dec=12 MicrosoftMicrosoftMicrosoftMicrosoft 相容的数据类型可以混合运算。运算中,不同数相容的数据类型可以混合运算。运算中,不同数相容的数据类型可以混合运算。运算中,不同数相容的数据类型可以混合运算。运算中,不同数据类型先被自动转换为相同数据类型,
30、然后再进据类型先被自动转换为相同数据类型,然后再进据类型先被自动转换为相同数据类型,然后再进据类型先被自动转换为相同数据类型,然后再进行运算。转换时低容量数据类型向高容量数据类行运算。转换时低容量数据类型向高容量数据类行运算。转换时低容量数据类型向高容量数据类行运算。转换时低容量数据类型向高容量数据类型转换。型转换。型转换。型转换。低低低低 高高高高 byte short byte short intint long long floatfloat double double MicrosoftMicrosoftMicrosoftMicrosoft 将小容量数据类型转换成大容量数据类型时,系将
31、小容量数据类型转换成大容量数据类型时,系统自动完成,成为隐式转换统自动完成,成为隐式转换 将大容量数据类型转换成小容量数据类型时,可将大容量数据类型转换成小容量数据类型时,可能丢失信息,必须使用强制类型转换能丢失信息,必须使用强制类型转换int x=123456;long y=x;/将int隐式转换为longdecimal d=100.99;int x=(int)d;/x的值是100,小数点后的值被舍弃2C#C#语言的基本原理语言的基本原理语言的基本原理语言的基本原理内容:内容:内容:内容:C#C#程序的基本原理程序的基本原理程序的基本原理程序的基本原理 C#C#预定义类型预定义类型预定义类型
32、预定义类型 编写表达式编写表达式编写表达式编写表达式 条件语句条件语句条件语句条件语句 循环语句循环语句循环语句循环语句 MicrosoftMicrosoftMicrosoftMicrosoft 编写表达式编写表达式 2.3学习完本节后,你将能够:学习完本节后,你将能够:学习完本节后,你将能够:学习完本节后,你将能够:使用运算符和创建表达式使用运算符和创建表达式使用运算符和创建表达式使用运算符和创建表达式 确定运算符的优先级确定运算符的优先级确定运算符的优先级确定运算符的优先级 MicrosoftMicrosoftMicrosoftMicrosoft 运算符就是表达式中的符号运算符就是表达式中
33、的符号运算符就是表达式中的符号运算符就是表达式中的符号常见运算符常见运算符常见运算符常见运算符增增/减减算术算术关系关系相等相等条件条件赋值赋值示例示例示例示例+-*/%+-=!=&|?:=*=/=%=+=-=&=|=MicrosoftMicrosoftMicrosoftMicrosoft 按照运算符的优先级计算表达式按照运算符的优先级计算表达式按照运算符的优先级计算表达式按照运算符的优先级计算表达式 可以使用圆括号控制运算的顺序可以使用圆括号控制运算的顺序可以使用圆括号控制运算的顺序可以使用圆括号控制运算的顺序 左结合和右结合左结合和右结合左结合和右结合左结合和右结合 w w所有二元运算符都
34、是左结合的所有二元运算符都是左结合的所有二元运算符都是左结合的所有二元运算符都是左结合的 w w赋值运算符和条件运算符是右结合的赋值运算符和条件运算符是右结合的赋值运算符和条件运算符是右结合的赋值运算符和条件运算符是右结合的(10+20)/5 结果是 610+(20/5)结果是 1410+20/5结果是 142C#C#语言的基本原理语言的基本原理语言的基本原理语言的基本原理内容:内容:内容:内容:C#C#程序的基本原理程序的基本原理程序的基本原理程序的基本原理 C#C#预定义类型预定义类型预定义类型预定义类型 编写表达式编写表达式编写表达式编写表达式 条件语句条件语句条件语句条件语句 循环语句
35、循环语句循环语句循环语句 MicrosoftMicrosoftMicrosoftMicrosoft 条件语句条件语句 2.4 条件语句可以根据布尔表达式的值,有选择性的条件语句可以根据布尔表达式的值,有选择性的条件语句可以根据布尔表达式的值,有选择性的条件语句可以根据布尔表达式的值,有选择性的执行程序的某一部分执行程序的某一部分执行程序的某一部分执行程序的某一部分 在在在在C#C#中的条件语句有中的条件语句有中的条件语句有中的条件语句有 if if 和和和和 switch switch 两种两种两种两种 if if 适合两个分支判断适合两个分支判断适合两个分支判断适合两个分支判断 switch
36、 switch 适合多个分支判断适合多个分支判断适合多个分支判断适合多个分支判断 MicrosoftMicrosoftMicrosoftMicrosoft 语法:语法:语法:语法:else else 部分可选部分可选部分可选部分可选 if else if else 可以嵌套可以嵌套可以嵌套可以嵌套if(布尔表达式)语句块1;else 语句块2;MicrosoftMicrosoftMicrosoftMicrosoft if(sales 10000)bonus=0.05*sales;else bonus=0;示例:示例:示例:示例:运算符(?:)是运算符(?:)是运算符(?:)是运算符(?:)是
37、if else if else 语句的缩略形式语句的缩略形式语句的缩略形式语句的缩略形式 bonus=(sales1000)?(0.05*sales):0;MicrosoftMicrosoftMicrosoftMicrosoft 在互斥的多个选项中选一个,在互斥的多个选项中选一个,在互斥的多个选项中选一个,在互斥的多个选项中选一个,switch switch 语句很有用语句很有用语句很有用语句很有用 语法:语法:语法:语法:switch(待测试表达式)case value1:语句;break;case value2:语句;break;default:语句;break;MicrosoftMicr
38、osoftMicrosoftMicrosoft switchswitch表表表表达达达达式式式式中中中中求求求求值值值值的的的的类类类类型型型型可可可可以以以以是是是是整整整整形、字符型、字符串、枚举类型形、字符型、字符串、枚举类型形、字符型、字符串、枚举类型形、字符型、字符串、枚举类型 计计计计算算算算表表表表达达达达式式式式的的的的值值值值并并并并进进进进行行行行等等等等值值值值匹匹匹匹配配配配。若若若若表表表表达达达达式式式式的的的的值值值值与与与与某某某某个个个个casecase标标标标记记记记中中中中的的的的值值值值相相相相等等等等,则则则则执执执执行行行行权权权权转转转转到到到到该
39、该该该 case case 标标标标记记记记后后后后的语句的语句的语句的语句 break break 跳跳跳跳出出出出整整整整个个个个switch switch。每每每每个个个个case case 中中中中都都都都必必必必须须须须使使使使用用用用 breakbreak,C#C#不不不不允允允允许许许许从从从从一一一一个个个个casecase进进进进入入入入下下下下一一一一个个个个casecase,称称称称为为为为不不不不可可可可贯贯贯贯穿性穿性穿性穿性switch(待测试表达式)case value1:语句;break;case value2:语句;break;default:语句;break
40、;MicrosoftMicrosoftMicrosoftMicrosoft 若没有任何一个若没有任何一个若没有任何一个若没有任何一个 case case 标记的值与表标记的值与表标记的值与表标记的值与表达式匹配,则转到达式匹配,则转到达式匹配,则转到达式匹配,则转到 default default 语句中;语句中;语句中;语句中;若没有定义若没有定义若没有定义若没有定义defaultdefault,则结束,则结束,则结束,则结束switchswitch判判判判断断断断 default default 是可选的,但通常需要定义,是可选的,但通常需要定义,是可选的,但通常需要定义,是可选的,但通常
41、需要定义,以捕获没有被任何以捕获没有被任何以捕获没有被任何以捕获没有被任何case case 处理的值,处理的值,处理的值,处理的值,其作用相当于其作用相当于其作用相当于其作用相当于 else else。switch(待测试表达式)case value1:语句;break;case value2:语句;break;default:语句;break;MicrosoftMicrosoftMicrosoftMicrosoft DateTime today=DateTime.Now;DayOfWeek weekday=today.DayOfWeek;string str=;switch(weekday
42、)case DayOfWeek.Monday:str=Dont speak to me!;break;case DayOfWeek.Friday:str=Anticipation.;break;default:str=Wondeful!;break;MicrosoftMicrosoftMicrosoftMicrosoft 使用使用 switch语句语句练练练练 习习习习10 分钟分钟2C#C#语言的基本原理语言的基本原理语言的基本原理语言的基本原理内容:内容:内容:内容:C#C#程序的基本原理程序的基本原理程序的基本原理程序的基本原理 C#C#预定义类型预定义类型预定义类型预定义类型 编写表达
43、式编写表达式编写表达式编写表达式 条件语句条件语句条件语句条件语句 循环语句循环语句循环语句循环语句 MicrosoftMicrosoftMicrosoftMicrosoft 循循 环环 语语 句句 2.5 借助循环机制,编译器可以重复执行一块代码,借助循环机制,编译器可以重复执行一块代码,借助循环机制,编译器可以重复执行一块代码,借助循环机制,编译器可以重复执行一块代码,直至满足某个条件为止,从而避免重复输入相同直至满足某个条件为止,从而避免重复输入相同直至满足某个条件为止,从而避免重复输入相同直至满足某个条件为止,从而避免重复输入相同的代码行的代码行的代码行的代码行 C#C#提供的循环机制
44、有:提供的循环机制有:提供的循环机制有:提供的循环机制有:w wfor for 循环循环循环循环 w wwhile while 循环循环循环循环w wdo do 循环循环循环循环 MicrosoftMicrosoftMicrosoftMicrosoft forfor循环用于将代码块执行固定的次数循环用于将代码块执行固定的次数循环用于将代码块执行固定的次数循环用于将代码块执行固定的次数 语法:语法:语法:语法:for(初始化表达式;循环条件;迭代表达式)循环语句;MicrosoftMicrosoftMicrosoftMicrosoft 先执行初始化表达式,此部分只执行一次先执行初始化表达式,此部
45、分只执行一次先执行初始化表达式,此部分只执行一次先执行初始化表达式,此部分只执行一次 判断条件表达式,若满足条件则执行循环体;否则跳出判断条件表达式,若满足条件则执行循环体;否则跳出判断条件表达式,若满足条件则执行循环体;否则跳出判断条件表达式,若满足条件则执行循环体;否则跳出for for 循环循环循环循环 每次循环语句执行完后要执行一次迭代,并重新判断循环条件每次循环语句执行完后要执行一次迭代,并重新判断循环条件每次循环语句执行完后要执行一次迭代,并重新判断循环条件每次循环语句执行完后要执行一次迭代,并重新判断循环条件 示例:示例:示例:示例:for(int i=0;i 0;j-=10)C
46、onsole.WriteLine(j=0,j);MicrosoftMicrosoftMicrosoftMicrosoft 与与与与for for 循环类似,也是预测试循环,即首先判断循循环类似,也是预测试循环,即首先判断循循环类似,也是预测试循环,即首先判断循循环类似,也是预测试循环,即首先判断循环条件,若满足则执行循环;否则不执行环条件,若满足则执行循环;否则不执行环条件,若满足则执行循环;否则不执行环条件,若满足则执行循环;否则不执行 语法:语法:语法:语法:while(循环条件)循环语句;MicrosoftMicrosoftMicrosoftMicrosoft 当不知道循环执行的次数时,
47、可以使用当不知道循环执行的次数时,可以使用当不知道循环执行的次数时,可以使用当不知道循环执行的次数时,可以使用whilewhile 示例:示例:示例:示例:while(command!=“Exit”)doSomething();MicrosoftMicrosoftMicrosoftMicrosoft 先执行循环语句,再进行循环条件测试,所以循先执行循环语句,再进行循环条件测试,所以循先执行循环语句,再进行循环条件测试,所以循先执行循环语句,再进行循环条件测试,所以循环语句至少执行一次,成为后测试循环环语句至少执行一次,成为后测试循环环语句至少执行一次,成为后测试循环环语句至少执行一次,成为后测
48、试循环 语法:语法:语法:语法:示例:示例:示例:示例:do 循环语句;while(循环条件);int i=1;do Console.WriteLine(0,i+);while(i=10);MicrosoftMicrosoftMicrosoftMicrosoft continue continue 关键字终止当次循环,开始下一次迭代关键字终止当次循环,开始下一次迭代关键字终止当次循环,开始下一次迭代关键字终止当次循环,开始下一次迭代和循环(并不终止整个循环)和循环(并不终止整个循环)和循环(并不终止整个循环)和循环(并不终止整个循环)break break 关键字跳出和终止整个循环关键字跳出和
49、终止整个循环关键字跳出和终止整个循环关键字跳出和终止整个循环 示例:示例:示例:示例:输出输出输出输出1 1,2 2,3 3,4 4,5 5,6 6,8 8,9 9for(int i=1;i 10;i+)if(i=7)continue;Console.WriteLine(i);MicrosoftMicrosoftMicrosoftMicrosoft 练练练练 习习习习1.1.参见教材参见教材参见教材参见教材P55P55页页页页2.5.4 2.5.4 课堂练习课堂练习课堂练习课堂练习 MicrosoftMicrosoftMicrosoftMicrosoft 小小 憩憩 片片 刻刻 学学 完完 了了就可以就可以 MicrosoftMicrosoftMicrosoftMicrosoft 我想,想,想我想,想,想int m=10;int k=+m;/k=?,m=?如果换成int k=m+;/k=?,m=?(5个积分)1 12 2C#的枚举类型功能强大,可以支持逻辑运算符&和|。如果北京的天气为雨加雪,上海的天气是晴转阴有小雨,是多种天气状况的组合,怎样创建这种枚举类型?Weather bj,sh;bj=Weather.Rain|Weather.Snow;sh=Weather.Sunny|Weather.Cloudy|Weather.Rain;(10个积分)
限制150内