《C#程序设计教程(第5版)》全套教学课件_第1页
《C#程序设计教程(第5版)》全套教学课件_第2页
《C#程序设计教程(第5版)》全套教学课件_第3页
《C#程序设计教程(第5版)》全套教学课件_第4页
《C#程序设计教程(第5版)》全套教学课件_第5页
已阅读5页,还剩480页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

C#程序设计教程(第5版)全套可编辑PPT课件本课件是可编辑的正常PPT课件

第1章C#概述 第2章简单的C#程序设计 第3章数据类型、运算符与表达式 第4章结构化程序设计 第5章数组、结构和枚举 第6章C#的面向对象程序设计

第7章继承和接口 第8章可视化应用程序设计 第9章C#的文件和流 第10章客户机/服务器编程访问数据 第11章C#的多线程应用

本课件是可编辑的正常PPT课件第1章C#概述本课件是可编辑的正常PPT课件内容提要:

C#的由来、发展及特点

C#2017的新功能Microsoft.NET平台

C#的运行环境、VisualStudio.NET的安装

C#的启动及集成开发环境目的要求:

掌握C#的定义、发展及特点能够安装和使用VisualStudio.NET

理解C#的集成开发环境重点难点:

C#的定义、特点

C#的集成开发环境本课件是可编辑的正常PPT课件1.1C#简介1.1.1C#的缘起1995年,SUN公司正式推出了面向对象的开发语言Java,并具有跨平台、跨语言的功能特点,Java逐渐成了企业级应用系统开发的首选工具,而且使得越来越多的基于C/C++的应用开发人员转向于从事基于Java的应用开发。微软也推出了基于Java语言的编译器VisualJ++。,SUN公司认为VisualJ++违反了Java的许可协议,即违反了其的中立性,因而对微软提出了诉讼。美国微软公司另辟蹊径,于

2000年6月推出其进军互联网的庞大.NET计划,和该计划中重要的开发语言——VisualC#(简称VC#或C#)。本课件是可编辑的正常PPT课件

微软公司对VC#的定义是:“C#是一种类型安全的、现代的、简单的,由C和C++衍生出来的面向对象的编程语言,它是牢牢根植于C和C++语言之上的,并可立即被C和C++开发人员所熟悉。C#的目的就是综合VisualBasic的高生产率和C++的行动力。”本课件是可编辑的正常PPT课件1.1.2C#的特点

1.可避免指针等,语法更简单、易学

2.支持跨平台

3.面向对象且避免了多继承

4.现代快速应用开发(RAD)功能

5.语言的兼容、协作交互性

6.与XML的天然融合

7.对C++的继承且类型安全

8.版本可控

本课件是可编辑的正常PPT课件1.1.3C#的发展及VS2017、C#7.0等的新功能

包含C#语言的VisualStudio.NET已到VS2017版本了。.NETVS2008(C#3.0)促成了称之为LINQ(语言级集成查询)的新编程模型,使得查询和操作数据成为.NET中的一等编程概念。VisualC#4.0(VisualC#2010)提供了进一步的增强,例如协变性和逆变性,它们解决了泛型接口的定义方式所造成的一些问题。VisualStudio.NET2012(C#2012),增加了触摸事件,推出后缀为.mix的新代码,可以在同一份代码里面,混合各种语言的代码。VisualStudio.NET2015(简称VS2015,含有C#2015)中文旗舰版是,可打造跨平台的应用程序,从Windows到Linux、甚至iOS和Android。C#2015的新功能主要有:自定义窗口布局;更优的代码编辑器;SharedProject集成;Bower和NPM中的代码智能提示;调试Lambdas表达式。

本课件是可编辑的正常PPT课件C#2017的新功能主要有:

·VS2017速度比VS2015快3倍,解决加载时间缩短2-4倍;

·改善代码导航,结果着色,自定义分组、排序、过滤和搜索;

·可直接打开并处理

C#、C++、

Ruby、Go等语言的文件;

·智能过滤:IntelliSense帮助你所需要的,不必过多步骤;.CMakesupportforC++:在VS中直接加载

CMake

来编码。

·语言改进:新的C#语言重构命令,代码以最新标准现代化;

·

VisualC++forLinux开发现在是VS2017的一部分;·

Liveunittesting:实时告诉单元测试结果,不离代码编辑器;

·

RuntoClick:在调试器中停止在某个中断状态时,将鼠标悬停在一行代码上,会看到RuntoClickglyph。单击可在该行停止并下次继续以此执行。.ExceptionHelpers:立即查看异常原因,即时访问内部异常;·

小而轻的安装:最小安装只有以前版本的十分之一大小等。本课件是可编辑的正常PPT课件1.1.4Microsoft.NET平台

2000年6月22日微软公布了其下一代基于互联网平台的软件开发构想——.NET,是继DOS开发平台、Windows开发平台之后,以互联网为应用程序开发平台的所谓第三波的改变。其可让随心所欲地选择不同的语言;.NET环境下,采用了标准通信协议,可实现不同平台上的沟通。

.NET的核心是.NET框架(.NETFramework),最上层是应用程序,分为面向网络应用的ASP.NET程序和面向Windows系统的Windows应用程序,两者均可使用VC#.NET、VC++.NET、VB.NET等来编写。.NET框架的中间一层是基础类库,它提供一个可以供不同编程语言调用的、分层的、面向对象的函数库。最底层是公共语言运行环境,它提供了程序代码可以跨平台执行的机制。本课件是可编辑的正常PPT课件1.1.5C#的运行环境及安装

VC#是VisualStudio.NET的一部分。作为一个强大的集成开发工具,VisualStudio.NET对系统环境有较高的要求。因此,在安装VC#之前要全面确定所使用计算机的软、硬件配置情况,看看是否能达到基本配置的要求,以便正确地安装并全面地使用其强大的功能。本课件是可编辑的正常PPT课件

1.硬件要求VisualC#7.0用户计算机的配置需要达到Windows10(或者Windows8、Windows7)的硬件要求。中央处理器(CPU):建议采用2.4GHz或以上64位(X64)处理器。内存(RAM):当系统运行时VisualStudio.NET的IDE和操作系统都要占用不少的内存空间。推荐8GB(64位)内存以上。硬盘:推荐500

GB(64位)或以上硬盘空间。2.软件要求操作系统:Windows10(或者Windows8、Windows7)。后台数据库:推荐MySQL、SQLServerExpress,Access2008或SQLServer2008以上版本。本课件是可编辑的正常PPT课件3.C#的安装C#是VisualStudio.NET的一部分,同其他的.NET语言一样,都必须在.NET框架环境下运行。因此,要建立一个完整的C#开发平台,必须安装VisualStudio.NET和.NETFrameworkSDK(.NET框架软件开发工具包)。系统中无论安装的是Windows10还是Windows8,只要硬件配置满足C#的要求,都可以安装C#。VisualStudio2017图1-2所示,让我们来看一看它安装的方法:本课件是可编辑的正常PPT课件VisualStudio2017安装程序和以前的版本不同,安装步骤是:

(1)下载好之后,解压安装包,打开安装的应用程序,弹框出安装界面,开始进行VS2017的安装。

图1-2VisualStudio2017安装启动本课件是可编辑的正常PPT课件(2)稍等片刻…。选择安装的磁盘位置,并同意条款和条约,然后单击【下一步】安装继续。如图1-3所示。图1-3安装位置本课件是可编辑的正常PPT课件图1-4选择安装功能组件(3)选择安装功能与组件,单击【安装】按钮,开始安装。如图1-4所示。本课件是可编辑的正常PPT课件图1-5启始页

(4)等待,安装结束后,显示【安装成功】界面,点击【启动】按钮,可启动VisualStudio2017启始页,如图1-5。安装成功后,程序自动在开始菜单创建VS2017的所有程序组。启动VS2017进入启动界面,稍等片刻第一次运行VisualStudio程序会自动配置运行环境。本课件是可编辑的正常PPT课件

图1-6设置默认环境(5)进入默认环境设置,根据自己的需要设置默认环境,如果使用多种语言进行开发,则可选择【常规开发设置】,设置完毕后单击【启动VisualStudio】启动程序,如图1-6所示。本课件是可编辑的正常PPT课件(6)进入VisualStudio2017开发环境,安装设置完成。如图1-7所示。图1-7VisualStudio2017开发、运行环境本课件是可编辑的正常PPT课件

在开始菜单中选择“开始”→“程序”→“MicrosoftVisualStudio2017”→“MicrosoftVisualStudio2017”命令,打开“起始页-MicrosoftVisualStudio”窗口。要启动C#开发环境有两种方式,一种是单击“起始页”上的“打开项目”,选择现在已存在的C#项目文件,另一种是单击“起始页”上的“创建项目”,则打开一个“新建项目”对话框,如图1-8、图1-9所示。1.2C#的集成开发环境1.2.1C#的启动本课件是可编辑的正常PPT课件图1-8“新建项目”对话框本课件是可编辑的正常PPT课件图1-9C#集成开发环境本课件是可编辑的正常PPT课件1.2.2C#集成开发环境

C#的集成开发环境集成了设计、开发、编辑、测试和调试的多种功能,使得开发人员能够方便、快速地开发应用程序。集成开发环境标题下面是菜单栏和工具栏,中央工作区是用来设计程序界面的窗体设计器和代码编辑窗口。除此之外,即成开发环境的四周,有很多浮动窗口。本课件是可编辑的正常PPT课件1.菜单栏在菜单栏中,共有11个菜单标题,每个菜单标题都有一个下拉式菜单。2.工具栏工具栏是由多个图标按钮组成的,可提供对常用命令的快速访问。除了在菜单栏下面显示的标准工具栏外,还有Web工具栏、控件布局工具栏等多种特定功能工具栏。

标准工具栏

本课件是可编辑的正常PPT课件

3.工具箱

工具箱中包含了建立应用程序的各种控件以及非图形化的组件。工具箱由不同的选项卡组成,各类控件、组件分别放在“数据”、“组件”、“Windows窗体”、“剪贴板循环”、“常规”5个选项卡下面。如图所示。

工具箱

本课件是可编辑的正常PPT课件4.解决方案资源管理器

在C#中,项目是一个独立的编程单位,其中包含一些相关的文件,若干个项目就组成了一个解决方案。在C#中所有包含C#代码的源文件都是以.cs为扩展名,在解决方案资源管理器中显示这个文件。“解决方案资源管理器”对话框本课件是可编辑的正常PPT课件5.属性窗口属性窗口如图所示,它用于显示和设置所选定的控件或者窗体等对象的属性。在应用程序设计时,可通过属性窗口设置或修改对象的属性。属性窗口由以下部分组成:(1)对象列表框(2)选项按钮(3)属性列表框属性窗口

本课件是可编辑的正常PPT课件6.代码编辑窗口代码编辑窗口是专门用来进行代码设计的窗口,各种事件过程、模块和类等源程序代码的编写和修改均在此窗口进行。如图所示。代码编辑窗口本课件是可编辑的正常PPT课件7.窗体设计器窗体设计器是用于设计和编制应用程序的用户接口,即设计应用程序的界面。VC#应用程序的设计,是以窗体为依托进行设计的。应用程序中的每一个窗口都有它自己的窗体设计器。其中最常用的窗体设计器是Windows窗体设计器。在这个窗体设计器上可以拖动各种控件,创建Windows应用程序界面。除此之外,在VC#中创建项目时,还会遇到用于创建Web界面的Web窗体设计器。本课件是可编辑的正常PPT课件8.其他窗口(1)类视图窗口(2)对象浏览器窗口:

(3)服务器资源管理器:

(4)“输出”窗口:

(5)命令窗口图1-15“类视图”窗口本课件是可编辑的正常PPT课件图1-16“对象浏览器”窗口图1-17“服务器资源管理器”窗口本课件是可编辑的正常PPT课件图1-18“输出”窗口图1-19“命令窗口”本课件是可编辑的正常PPT课件练习:1.C#源程序文件的扩展名为()

A..vbB..cC..cppD..cs2.下列关于解决方案的叙述中,不正确的()

A.一个解决方案可以包含多个项目

B.一个解决方案只能包含一个项目

C.新建项目时,会默认生成一个解决方案

D.解决方案文件的扩展名为“.sln”本课件是可编辑的正常PPT课件本章作业:

1.习题1的1、2、3。本课件是可编辑的正常PPT课件第2章简单的C#程序设计本课件是可编辑的正常PPT课件上节复习:1.大多数编程语言的共性 数据处理 结构化程序设计 面向对象程序设计 可视化程序设计 文件/数据库操作2.程序(exe文件)的运行环境

VS2019C#8.0 VS2017

C#7.0 VS2010 .NETFramework4.0VS2008 .NETFramework3.5本课件是可编辑的正常PPT课件内容提要:C#程序设计相关的基础知识C#程序的基本结构、标识符的相关概念C#程序的编译和执行控制台的输入/输出操作目的要求:掌握C#程序设计相关的基础知识理解常用的四个有关控制台输入、输出方法重点难点:Main()方法WriteLine()和Write()方法中各种参数的含义ReadLine()和Read()方法的区别本课件是可编辑的正常PPT课件2.1C#程序结构

2.1.1第一个C#程序 2.1.2编译和执行程序 2.1.3C#程序结构分析 2.1.4标识符本课件是可编辑的正常PPT课件2.1.1第一个C#程序创建C#控制台应用程序,首先选择【文件】|【新建】|【项目】命令打开【新建项目】对话框。本课件是可编辑的正常PPT课件"新建项目"对话框本课件是可编辑的正常PPT课件2.1.1第一个C#程序usingSystem;namespaceWelcome{classProgram{staticvoidMain(){

Console.WriteLine("欢迎使用C#");//运行后在窗口中显示的字符串

}}}本课件是可编辑的正常PPT课件2.1.2编译和执行程序

在编译程序时,将会打开一个输出窗口显示编译过程中所遇到的错误和警告等信息。本课件是可编辑的正常PPT课件2.1.2编译和执行程序在VisualStudio中,可以采用两种方式运行程序:一种是调试运行,通过使用【调试】|【启动】命令或工具栏的调试按钮或者直接按下F5键;另一种是不进行调试而直接运行,使用【调试】|【开始执行】命令或Ctrl+F5键。程序结果显示窗口本课件是可编辑的正常PPT课件2.1.3C#程序结构分析

1.命名空间

usingSystem语句表示导入System命名空间。Console.WriteLine("欢迎使用C#")这条语句中的Console是System命名空间中包含的系统类库中定义好的一个类,它代表系统控制台,即字符界面的输入和输出。C#程序是用命名空间来组织代码,要访问某个命名空间中的类或对象,必须用如下语法:

命名空间.类名本课件是可编辑的正常PPT课件2.1.3C#程序结构分析由于Console类位于System命名空间中,所以在访问Console类时,完整的写法应该是:System.Console但是,在程序的第一行,使用了:usingSystem;这条语句用using语句导入System命名空间,这样在程序中可以直接使用Sytem命名空间中的类或对象,所以直接写Console即可。本课件是可编辑的正常PPT课件2.1.3C#程序结构分析2.类C#要求其程序中的每一个元素都要属于一个类。如:classWelcome声明了一个类,类的名字叫Welcome。这个程序的功能就是依靠它来完成的。C#程序由大括号"{"和"}"构成,程序中每一对大括号"{}"构成一个块。

注意:C#程序中的语句以";"表示结束。本课件是可编辑的正常PPT课件2.1.3C#程序结构分析3.Main()方法程序的入口从下面的代码开始:

staticvoidMain()这行代码所定义的其实是类Welcome的一个静态方法,C#规定,名字为Main()的静态方法就是程序的入口。方法的执行从左括号"{"开始,到右括号"}"结束。一个程序不允许出现两个甚至两个以上的Main()方法本课件是可编辑的正常PPT课件2.1.3C#程序结构分析4.注释在C#语言中,提供了两种注释方法:(1)

每一行中“//”后面的内容作为注释内容,该方式只对本行生效;(2)

需要多行注释的时候,在第一行之前使用“/*”,在末尾一行之后使用“*/”,也就是说被“/*”与*/所包含的内容都作为注释内容。本课件是可编辑的正常PPT课件2.1.3C#程序结构分析通过上面的分析,可以看出C#程序的基本结构如下:/*导入.NET系统类库提供的命名空间System*/usingSystem;classWelcome//定义类{staticvoidMain()/*程序的入口。其中static表示Main()方法是一个静态方法,void表示该方法没有返回值*/{Cosole.WriteLine("欢迎使用C#");//输出欢迎使用C#}}本课件是可编辑的正常PPT课件2.1.4标识符

标识符(identifier)是一串字符,在程序中作为各种标识,用来代表一个名字。并不是任何一串字符都可以作为C#的标识符。

C#的标识符有如下规则:(1)一个合法的C#标识符,是以字母或者下划线开头、其后可以跟任意个字母、数字或者下划线。合法的_this、MyCompouter001、StarT_Of_Program非法的6ya(以数字开头)、m#(#非字母)本课件是可编辑的正常PPT课件

C#的标识符有如下规则:(2)C#的标识符严格区分大小写,即使两个标识符的区别仅仅字母的大小写不同,也认为是两完全不同的标识符。如:xyz、Xyz、xYz、xyZ是四个不同的标识符(3)关键字也可以作为标识符,只要在关键字前加上@前缀。直接使用关键字作为标识符是不允许的,比如:uintlock通过给关键字加"@"前缀,它们就变成合法的标识符了。@uint@lock2.1.4标识符本课件是可编辑的正常PPT课件练习:1.C#可执行程序的主入口点是()A.main函数B.Main函数C.Run函数D.Form_Load函数参考答案:B2.以下说法中,正确的是()A.Main函数是由C#语言提供的标准函数,不需要用户编写它的内容B.在C#程序中,要调用的函数必须在Main函数中定义C.在C#程序中,必须显式调用Main函数,它才起作用D.一个C#程序无论包含多少个函数,C#程序总是从Main函数开始执行参考答案:D本课件是可编辑的正常PPT课件3.以下叙述中,正确的是()A.C#程序中的注释只能出现在语句的后面B.C#程序中,只有一种单行注释C.C#程序中,只有一种多行注释D.程序执行时,不会执行注释语句参考答案:D4.利用VisualStudio.NET集成开发环境编写一个新的C#应用程序,所做的第一件事是()A.新建一个窗体B.新建一个包含Main函数的文件C.新建一个项目D.新建一个资源文件参考答案:C本课件是可编辑的正常PPT课件5.以下有关注释语句的描述中,不正确的是()A.C#提供两种注释,即"//"和"/*.....*/"B.注释语句可放在程序中的任何位置C.注释语句也可以被执行,只不过它没有输出结果D.程序中加入注释语句的主要目的是提高程序的可读性参考答案:C本课件是可编辑的正常PPT课件2.2输入/输出操作控制台(console)输入/输出主要通过命名空间System中的类Console来实现,它提供了从控制台读写字符的基本功能。控制台输入主要通过Console类的Read方法ReadLine方法来实现的,控制台输出主要通过Console类的Write方法和WriteLine方法来实现的。本课件是可编辑的正常PPT课件2.2.1Console.WriteLine()方法WriteLine()方法的作用是将信息输出到控制台,但是WriteLine方法在输出信息的后面添加一个回车换行符用来产生一个新行。在WriteLine()方法中,可以采用"{N[,M][:格式化字符串]}"的形式来格式化输出字符串,其中的参数含义如下:本课件是可编辑的正常PPT课件花括号("{}")用来在输出字符串中插入变量。N表示输出变量的序号,从0开始,如当N为0时,则对应输出第1个变量的值,当N为5时,则对应输出第6个变量的值,依次类推。[,M]是可选项,其中M表示输出的变量所占的字符个数,当这个变量的值为负数时,输出的变量按照左对齐方式排列;如果这个变量的值为正数的时候,输出的变量按照右对齐方式排列。2.2.1Console.WriteLine()方法本课件是可编辑的正常PPT课件[:格式化字符串]也是可选项,因为在向控制台输出时,常常需要指定输出字符串的格式。通过使用标准数字格式字符串,可以使用Xn的形式来指定结果字符串的格式,其中X指定数字的格式,n指定数字的精度,即有效数字的位数。这里提供7个常用的格式字符。2.2.1Console.WriteLine()方法本课件是可编辑的正常PPT课件2.2.1Console.WriteLine()方法1.货币格式

货币格式用字符C或者c表示,小数位数默认值为2。例如:doublek=1234.789;Console.WriteLine("{0,8:c}",k);//结果是¥1,234.79Console.WriteLine("{0,10:c4}",k);//结果是¥1,234.7890问题1变量k的类型可以是int吗?如果可以,小数位是2位吗?问题2如果要表示外国货币符号该如何处理?本课件是可编辑的正常PPT课件2.2.1Console.WriteLine()方法2.整数数据类型格式

整数数据类型格式用字符D或者d表示。例如:intk=1234;Console.WriteLine("{0:D}",k);//结果是1234Console.WriteLine("{0:d3}",k);//结果是1234Console.WriteLine("{0:d5}",k);//结果是01234问题:k可以是double类型吗?本课件是可编辑的正常PPT课件2.2.1Console.WriteLine()方法3.科学计数法格式科学计数法格式用字符E或者e表示,默认7位有效字。例如:intk=123000;doublef=1234.5578;Console.WriteLine("{0:E}",k);//结果是1.230000E+005Console.WriteLine("{0:e}",k);//结果是1.230000e+005Console.WriteLine("{0:E}",f);//结果是1.234558E+003Console.WriteLine("{0:e}",f);//结果是1.234558e+003Console.WriteLine("{0:e4}",k);//结果是1.2300e+005Console.WriteLine("{0:e4}",f);//结果是1.2346e+003本课件是可编辑的正常PPT课件2.2.1Console.WriteLine()方法4.浮点数据类型格式浮点数据格式用字符F或者f表示,小数位数默认值为2。例如:inta=123000;doubleb=1234.5578;Console.WriteLine("{0,-8:f}",a);//结果是123000.00Console.WriteLine("{0:f}",b);//结果是1234.56Console.WriteLine("{0,-8:f4}",a);//结果是123000.0000Console.WriteLine("{0:f3}",b);//结果是1234.558Console.WriteLine("{0:f6}",b);//结果是1234.557800本课件是可编辑的正常PPT课件2.2.1Console.WriteLine()方法5.通用格式

通用格式用字符G或者g表示。例如:doublek=1234.789;intj=123456;Console.WriteLine("{0:g}",j);//结果是123456Console.WriteLine("{0:g}",k);//结果是1234.789Console.WriteLine("{0:g4}",k);//结果是1235Console.WriteLine("{0:g4}",j);//结果是1.235e+05要注意和D、E、F比较来理解本课件是可编辑的正常PPT课件2.2.1Console.WriteLine()方法6.自然数据格式自然数据格式用字符N或者n表示,小数位数默认值为2。例如:doublek=211122.12345;intj=1234567;Console.WriteLine("{0:N}",k);//结果是211,122.12Console.WriteLine("{0:n}",j);//结果是1,234,567.00Console.WriteLine("{0:n4}",k);//结果是211,122.1235Console.WriteLine("{0:n4}",j);//结果是1,234,567.0000本课件是可编辑的正常PPT课件7.十六进制数据格式十六进制数据用字符X或者x表示。例如:intj=123456;Console.WriteLine("{0:x}",j);//结果是1e240Console.WriteLine("{0:x6}",j);//结果是01e2402.2.1Console.WriteLine()方法本课件是可编辑的正常PPT课件2.2.1Console.WriteLine()方法例:利用Console.WriteLine()方法输出变量值。usingSystem;classTest{staticvoidMain(){inti=12345;doublej=123.45678;Console.WriteLine("i={0,8:D}j={1,10:F3}",i,j);Console.WriteLine();Console.WriteLine("i={0,-8:D}j={1,-10:F3}",i,j);}}输出结果是:本课件是可编辑的正常PPT课件2.2.2Console.Write()方法Write()方法和WriteLine()方法类似,都是将信息输出到控制台,但是输出到屏幕后并不会产生一个新行,即换行符不会连同输出信息一起输出到屏幕上,光标将停留在所输出信息的末尾。在Write()方法中,也可以采用"{N[,M][:格式化字符串]}"的形式来格式化输出字符串,其中的参数含义如同WriteLine()方法。本课件是可编辑的正常PPT课件2.2.2Console.Write()方法例:利用Console.Write()方法输出变量值。程序代码如下:usingSystem;classTest{staticvoidMain(){inti=12345;doublej=123.45678;Console.Write("i={0,8:D}j={1,10:F3}",i,j);Console.Write("i={0,-8:D}j={1,-10:F3}",i,j);}}输出结果是:本课件是可编辑的正常PPT课件2.2.3Console.ReadLine()方法ReadLine()方法用来从控制台读取一行数据,一次读取一行字符的输入,并且直到用户按下回车键它才会返回。但是,ReadLine()方法并不接收回车键。如果ReadLine()方法没有接收到任何输入,或者接收了无效的输入,那么ReadLine()方法将返回null。本课件是可编辑的正常PPT课件2.2.3Console.ReadLine()方法

例:用ReadLine()方法接收用户输入,然后输出。usingSystem;classTest{staticvoidMain(){stringstr;Console.WriteLine("请输入你的姓名:");str=Console.ReadLine();Console.WriteLine("{0},欢迎你!",str);}}输出结果:本课件是可编辑的正常PPT课件2.2.4Console.Read()方法Read()方法的作用是从输入流(控制台)读取下一个字符,Read()方法一次只能从输入流读取一个字符,并且直到用户按回车键才会返回。当这个方法返回时,如果输入流中包含有效的输入,则它返回一个表示输入字符的整数;如果输入流中没有数据,则返回-1。本课件是可编辑的正常PPT课件2.2.4Console.Read()方法例:通过Console.Read()方法从控制台接收用户的输入,然后显示接收的内容。usingSystem;classTest{staticvoidMain(){Console.Write("请输入字符:");inta=Console.Read();Console.WriteLine("用户输入的内容为:{0}",a);}}运行结果:本课件是可编辑的正常PPT课件练习:1.以下标识符中,错误的是()A._b39B.x345C.6_321D.nAverage参考答案:C2.以下标识符中,正确的是()A._nNameB.MainC.6bD.x5#参考答案:A本课件是可编辑的正常PPT课件Console是C#中的标准输入/输出流对象,它通常代表()和()。参考答案:键盘、显示器4.Console.WriteLine("{0},{1}",x,y)语句中"{0}"和"{1}"只是一个占位符。程序运行后,会以变量x的值替换"{0}",以变量y的值替换"{1}"。这句话是否正确?参考答案:正确本课件是可编辑的正常PPT课件作业:

习题2的1、2、3、4。本课件是可编辑的正常PPT课件第3章

数据类型、运算符与表达式本课件是可编辑的正常PPT课件上节复习:

1、C#程序结构usingSystem; //导入命名空间namespaceTest{classProgram //类{staticvoidMain(string[]args) //程序入口{ //程序实现代码} //主函数结束} //Program类结束} //TestConsoleCS命名空间结束本课件是可编辑的正常PPT课件上节复习:

2、输入/输出Console.ReadLine() //读取一行Console.Read() //读取一个字符注意没有任何输入时的返回值Console.WriteLine() //输出并换行Console.Write() //输出不换行注意常用格式化字符的输出本课件是可编辑的正常PPT课件内容提要:

C#的主要数据类型

常量与变量

C#常用的运算符、表达式目的要求:

掌握C#的主要数据类型掌握C#常用运算符

掌握C#常用表达式重点难点:

类型转换、运算符的优先级

引用类型本课件是可编辑的正常PPT课件3.1数据类型类类型数组类型接口类型

委托类型简单类型结构类型枚举类型

值类型数据类型

引用类型整数类型浮点类型小数类型

字符类型

布尔类型本课件是可编辑的正常PPT课件3.1.1值类型1.整数类型整数类型的数据值只能是整数,计算机语言所提供的数据类型有一定的范围。类型标识符描述可表示的数值范围sbyte8位有符号整数-128~+127byte8位无符号整数0~255short16位有符号整数-32768~+32767ushort16位无符号整数0~65535int32位有符号整数-2147483648~+2147483647uint32位无符号整数0~232-1long64位有符号整数-9223372036854775805~+9223372036854775807ulong64位无符号整数0~264-1本课件是可编辑的正常PPT课件3.1.1值类型

2.浮点类型浮点类型的数据包含两种:单精度浮点型(float)和双精度浮点型(double),其区别在于取值范围和精度的不同。

float类型是32位宽,double类型是64位宽。单精度:取值范围在+1.5×10-45~3.4×1038之间,精度为7

位数。双精度:取值范围为+5.0×-324~1.7×10308之间,精度为

15~16位数。本课件是可编辑的正常PPT课件3.1.1值类型3.小数类型

小数类型(decimal)占用16个字节(128位),主要为了满足需要高精度的财务和金融计算机领域。小数类型数据的取值范围和精度如下:取值范围在+1.0×10-28~7.9×1028之间,精度为29位数。注意:小数类型数据的后面必须跟m或者M后缀来表示它是decimal类型的,如3.14m、0.28m等,否则就会被解释成标准的浮点类型数据,导致数据类型不匹配。

本课件是可编辑的正常PPT课件3.1.1值类型例:138f

代表float类型的数值138.0518u代表uint类型的数值51836897123ul

代表ulong类型的数值3689712322.1m

代表decimal类型的数值22.112.68

代表double类型的数值12.6836 代表int类型的数值36本课件是可编辑的正常PPT课件3.1.1值类型4.字符类型

字符类型的类型标识符是char,采用Unicode字符集。凡是在单引号中的一个字符,就是一个字符常数,如:

'你'、'A'、'?'、'6'、'2'

注意:

在表示一个字符常数时,单引号内的有效字符数量必须且只能是一个,并且不能是单引号或者反斜杠(\)。本课件是可编辑的正常PPT课件3.1.1值类型为了表示单引号和反斜杠等特殊的字符常数,C#提供了转义符。下面是

C#常用的转义符:转义符字符名称\'单引号\"双引号\\反斜杠\0空字符(Null)\a发出一个警告

\b倒退一个字符\f换页\n新的一行\r换行并移到同一行的最前面\t水平方向的Tab\v垂直方向的Tab本课件是可编辑的正常PPT课件3.1.1值类型如Console.WriteLine("Hello,"+"\'"+"打印出单引号"+"\'"); //Hello,'打印出单引号'例:usingSystem;classStrDemo{staticvoidMain(){Console.WriteLine("FirstLine\nSecondLine");Console.WriteLine("A\tB\tC");Console.WriteLine("D\tE\tF");}}运行结果:本课件是可编辑的正常PPT课件3.1.1值类型5.布尔类型布尔类型的类型标识符是bool。布尔类型常数只有两种值:true(代表"真")和false(代表"假")。布尔类型数据主要应用在流程控制中。例:

boolb=5>3;//b的值为true;b=false;本课件是可编辑的正常PPT课件3.1.2引用类型1.object类

object类是系统提供的基类型,是所有类型的基类,C#中所有的类型都直接或间接派生于对象类型。对于任一个object变量,均可以赋以任何类型的值。

doubled=3.14;objectobj1;obj1=d;obj1='k';本课件是可编辑的正常PPT课件3.1.2引用类型2.string类一个字符串是被双引号包含的一系列字符。

string类是专门用于对字符串进行操作的。如:

stringstr1="中国,";

stringstr2="你好!";

stringstr3=str1+str2;//这相当于str3="中国,你好!"

charc=str3[0];//取出str3的第一个字符,即"中"字。

stringstr5=@"hello\tworld";//hello\tworld本课件是可编辑的正常PPT课件3.1.2引用类型C#支持两种形式的字符串常数。(1)常规字符串常数如:"thisisatest""C#程序设计教程"例:usingSystem;classStrDemo{staticvoidMain(){Console.WriteLine("First\0line\nSecond\0line");Console.WriteLine("你好\a");Console.WriteLine("1\t2\t3");Console.WriteLine("*\t**\t***");}}

运行结果如下:本课件是可编辑的正常PPT课件3.1.2引用类型例:usingSystem;classStringDemo{publicstaticvoidMain(){stringstr1="Astring";stringstr2="Anotherstring.";Console.WriteLine("{0}\n{1}",str1,str2);}}运行结果:本课件是可编辑的正常PPT课件3.1.2引用类型(2)逐字字符串常数逐字字符串常数以@开头,后跟一对双引号,在双引号中放入字符。如:@"电子高专"@"Thisisabook."逐字字符串常数同常规字符串常数的区别:在逐字字符串常数的双引号中,每个字符都代表其最原始的意义,在逐字字符串常数中没有转义字符。

注意:如果要包含双引号("),就必须在一行中使用两个双引号("")。本课件是可编辑的正常PPT课件3.1.2引用类型stringstr1;//定义字符串类型stringstr2="hello,world";//规则字符串常数:hello,worldstringstr3=@"hello,world";//逐字字符串常数:hello,worldstringstr4="hello\tworld";//helloworldstringstr5=@"hello\tworld";//hello\tworldstringstr6="Hesaid\"Hello\"toyou";//Tomsaid"Hello"toyoustringstr7=@"Hesaid""Hello""toyou";//Tomsaid"Hello"toyou本课件是可编辑的正常PPT课件例:usingSystem;classTest{staticvoidMain(){Console.WriteLine(@"Thisisaverbatimstringliteralthatspansseverallines.

");Console.WriteLine(@"Hereissometabbedoutput:12345678

");Console.WriteLine(@"Programmerssay,"

"IlikeC#""");}}运行结果如下:本课件是可编辑的正常PPT课件3.1.3类型转换数据类型在一定条件下是可以相互转换的。C#允许使用两种转换的方式:隐式转换和显式转换。1.隐式转换隐式转换是系统默认的、不需要加以声明就可以进行的转换。隐式数据转换的使用方法如下:inti=518;//a为整型数据longb=i;//b为长整型数据floatf=i;//f为单精度浮点型数据故:隐式转换发生在取值范围从小到大时且数据不会丢失。本课件是可编辑的正常PPT课件3.1.3类型转换2.显式转换显式转换又叫强制类型转换,显式转换要明确指定转换类型。显式转换格式:(类型标识符)表达式注意:(1)显式转换可能会导致错误。(2)对于将float,double,decimal转换为整数,将通过舍入得到最接近的整型值,如果这个整型值超出目标域,则出现转换异常。比如:(int)6.28m//转换的结果为6 (int)3e25f//将产生溢出错误本课件是可编辑的正常PPT课件3.1.4装箱和拆箱1.装箱转换

装箱转换是指将一个值类型的数据隐式地转换成一个对象类型(object)的数据。

例如:inti=518;

objectobj=i;2.拆箱转换和装箱相反,拆箱转换是指将一个对象类型的数据显式地转换成一个值类型数据。例如:objectobj=228;intk=(int)obj;本课件是可编辑的正常PPT课件3.1.4装箱和拆箱

例:在程序中执行装箱转换。

usingSystem;classBoxingDemo{staticvoidMain(){Console.WriteLine("执行装箱转换:");

intk=200;objectobj=k;k=300;Console.WriteLine("obj={0}",obj);Console.WriteLine("k={0}",k);}}本课件是可编辑的正常PPT课件3.1.4装箱和拆箱2.拆箱转换和装箱相反,拆箱转换是指将一个对象类型的数据显式地转换成一个值类型数据。例如:objectobj=228;intk=(int)obj;本课件是可编辑的正常PPT课件3.1.4装箱和拆箱例:在程序中使用拆箱转换。

usingSystemclassUnboxingDemo{staticvoidMain(){intk=228;objectobj=k;//装箱转换

intj=(int)obj;//拆箱转换

Console.WriteLine("k={0}\tobj={1}\tj={2}",k,obj,j);}}该程序执行后,输出结果如下:k=228obj=228j=228本课件是可编辑的正常PPT课件练习:1.()是decimal类型数据A.123LB.123.4C.123.4FD.123.4M参考答案:D2.已知大写字母A的ASCII码是65,小写字母a的ASCII码是97,则十六进制字符常量'0x0042'表示()A.字符aB.字符AC.字符bD.字符B参考答案:D

本课件是可编辑的正常PPT课件3.2.1常量在C#中,常量在程序的运行过程中其值是不能改变的,例如,数字100就是一个常量,这样的常量一般被称作常数。声明常量的格式:

const类型标识符常量名=表达式;例:constdoublePI=3.14159265;doubler=5.2;doubles=PI*r*r;Console.Write("面积={0}",s);本课件是可编辑的正常PPT课件3.2.1常量常量特点:

在程序中,常量只能被赋予初始值。

定义常量时,表达式中的运算符对象只允许出现常量和常数,不能有变量存在。例如:intb=18;constinta=26;constintk=b+10;//错误,表达式中不允许出现变量constintd=a+23;//正确,因为a是常量a=56;//错误,不能修改常量的值本课件是可编辑的正常PPT课件3.2.2变量变量是程序运行过程中用于存放数据的存储单元。变量的值在程序的运行过程中可以改变。1.变量的定义在定义变量时,首先必须给每一个变量起名,称为变量名,变量名代表存储地址。变量的类型决定了存储在变量中的数值的类型。

变量定义格式:

类型标识符变量名1,变量名2,……;注意:C#规定,任何变量在使用前,必须先定义,后使用。本课件是可编辑的正常PPT课件3.2.2变量2.变量的赋值变量的赋值,就是将数据保存到变量所代表的存储单元中的过程。格式:变量名=表达式;例:

intnAgeSum;

nAgeSum=210;//给nAgeSum变量赋予数值210注意:1.变量的当前值等于最近一次给变量所赋的值。 2.在对变量进行赋值时,表达式的值的类型必须同变量的类型相同。 3.变量是有作用域和生命周期的。本课件是可编辑的正常PPT课件3.2.2变量在程序中,可以给一个变量多次赋值。变量的当值等于最近一次给变量所赋的值。如:

nAgeSum=68;//这时nAgeSum等于68nAgeSum=36+24;//这时nAgeSum等于60nAgeSum=nAgeSum+40;//这这时nAgeSum等于100本课件是可编辑的正常PPT课件3.2.2变量在对变量进行赋值时,表达式的值的类型必须同变量的类型相同。

stringsName;intnScore;sName="Jack";//正确

sName="Tom";//正确

nScore=98;sName=5;//错误,不能将整数赋予字符串对象

nScore="Hello";//错误,不能字符串赋予整型变量本课件是可编辑的正常PPT课件3.2.2变量3.变量的初始化在定义变量的同时,可以对变量赋值,称为变量的初始化。对变量进行初始化的格式如下:

类型标识符变量名=表达式;例:

stringstr="Thisisabook";本课件是可编辑的正常PPT课件练习:

判断题:

1.C#规定所有变量必须先声明后使用。()参考答案:正确

2.双精度浮点数类型double由8个字节组成。()参考答案:正确3.执行constinta=10;a=a+1;这两条语句后,a的值为11。()参考答案:错误填空题:

1.使用变量a存放数据-389,则将变量声明为()类型最合适。参考答案:short本课件是可编辑的正常PPT课件3.3.1运算符

1.算术运算符

算术运算符用于对操作数进行算术运算。C#的算术运算符同数学中的算术运算符是很相似的。本课件是可编辑的正常PPT课件C#算术运算符

运算符意义运算对象数目运算对象类型运算结果类型实例+取正或加法1或2数值类型数值类型+5、6+8+a-取负或减法1或2-3、a-b*乘法23*a*b、5*2/除法27/4、a/b%模(求整数除法的余数,如7除以3的余数为2,则7%3等于2)2a%(2+5)、a%b、3%2++自增运算1a++、++b--自减运算1a--、--b本课件是可编辑的正常PPT课件例:usingSystem;classModDemo{staticvoidMain(){intiresult,irem;doubledresult,drem;iresult=10/3;irem=10%3;dresult=10.0/3.0;drem=10.0%3.0;Console.WriteLine("10/3={0}\t10%3={1}",iresult,irem);Console.WriteLine("10.0/3.0={0}\t10.0%3.0={1}",dresult,drem);}}运行结果:本课件是可编辑的正常PPT课件3.3.1运算符特殊的算术运算符:++(自增运算符)--(自减运算符)作用:使变量的值自动增加1或者减少1。

例如,x=x+1;

可以被写成

++x;//前缀格式或者

x++;

//后缀格式本课件是可编辑的正常PPT课件3.3.1运算符

当一个自增或自减运算符在它的操作数前面时,C#将在取得操作数的值前执行自增或自减操作。如果运算符在操作数的后面,C#将先取得操作数的值,然后进行自增或自减运算。例:

x=8;y=++x;

在这种情况下,x和y被赋值为9。但是,如果代码如下所写:

x=8;y=x++;

那么y被赋值为8,x被赋值为9

。本课件是可编辑的正常PPT课件例:usingSystem;classTest{staticvoidMain()

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论