《C#程序设计及基于工作过程的项目开发》课件第1章.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《《C#程序设计及基于工作过程的项目开发》课件第1章.ppt》由用户(momomo)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C#程序设计及基于工作过程的项目开发 C# 程序设计 基于 工作 过程 项目 开发 课件
- 资源描述:
-
1、第一部分第一部分 快快 速速 热热 身身 1.1 任务一:第一个控制台程序任务一:第一个控制台程序 1.2 任务二:第一个任务二:第一个Windows程序程序 1.3 任务三:在程序中使用数据任务三:在程序中使用数据 1.4 任务四:让程序为我们计算任务四:让程序为我们计算 1.5 举一反三举一反三 1.1 任务一:第一个控制台程序任务一:第一个控制台程序1.1.1 功能描述功能描述本例将创建一个简单却结构完整的本例将创建一个简单却结构完整的C#控制台程序,程控制台程序,程序运行结果是在用户屏幕上输出一行文本。序运行结果是在用户屏幕上输出一行文本。通过本任务,我们应学会:通过本任务,我们应学会
2、:创建一个结构合理的控制台程序并运行调试;创建一个结构合理的控制台程序并运行调试;能够使用控制台输出函数能够使用控制台输出函数WriteLine输出各种字符串及输出各种字符串及特殊字符。特殊字符。1.1.2 任务步骤任务步骤在Visual Studio(简称VS)中创建控制台应用程序的步骤如下:(1)打开Visual Studio,选择“文件新建项目”,弹出“新建项目”对话框,如图1.1所示。单击模板中的“控制台应用程序”,输入一个“名称”,选择要存放的“位置”,然后单击“确定”按钮。1.1.2 任务步骤任务步骤在Visual Studio(简称VS)中创建控制台应用程序的步骤如下:(1)打开
3、Visual Studio,选择“文件新建项目”,弹出“新建项目”对话框,如图1.1所示。单击模板中的“控制台应用程序”,输入一个“名称”,选择要存放的“位置”,然后单击“确定”按钮。图1.1(2)Visual Studio 2005为我们创建了控制台应用程序模板。我们在Main函数的花括号里填入三行代码,形成一个最简单控制台程序,代码展示如下:1 /*日期:09-03-222 第一个控制台程序 */3 using System;4 using System.Collections.Generic;5 using System.Text;6 namespace hello_world7 8 c
4、lass Program 9 10 static void Main(string args)11 12 /以下三行是我们输入的语句,其它是Visual Studio为我们自动生成的。13 Console.WriteLine(你知道标准计算机键盘有多少个按键吗?);14 Console.WriteLine(A.105nB.106nC.107nD.108);15 Console.ReadKey();16 17 18 程序输出为:你知道标准计算机键盘有多少个按键吗?A.105 B.106 C.107 D.108 代码分析:12、12 注释语句。注释起着文档说明的作用,不参与编译。35using语句
5、。使得程序可以使用一个简单的控制台程序所需要的那些常用服务。删除这3行将使程序不能编译(实际上,由于本程序只用到最简单的Console对象,而Console对象是在System类中的,所以只要第3行“using System;”也是可以的)。6 告诉Visual Studio我们创建了一个名称空间(应用程序库)叫做hello_world;实际上这个名称就是创建程序时在“新建项目”对话框中输入的名称。8 C#程序都是由class(类)组成的,它为程序定义了一个容器。这里表示接下来的程序(917行的一对花括号 中)是属于一个叫做Program的类的。10static void Main为程序定义了
6、入口点。应用程序启动时,Main方法是第一个调用的方法,程序总是以Main函数后的一对花括号为开始和结束。一个C#应用程序只能有一个入口点。13WriteLine方法将指定字符串显示到屏幕上,要显示的字符串用双引号(“”)括住。WriteLine方法是Console对象的一部分。14分4行显示4个选项。这里用到转义字符,在输出函数的花括号中,由斜杠“”开头的字符表示某种特殊含义。比如这里的“n”表示回车。15ReadKey和WriteLine方法一样,都是C#的标准类库的方法。将它放在这里程序将会等待用户的输入,我们必须按下Enter键才能终止程序。这样我们就有时间查看程序运行的结果了。如果没
7、有这句,则程序在第15行执行完后将关闭,我们看到的将是闪了一下就关闭的控制台屏幕。注意:类、方法及名称空间以“”开始,以“”结束。其它所有普通语句都以分号“;”结束。丢失“;”将导致编译失败。1.1.3 知识点知识点1注释及空白符的使用注释及空白符的使用1.注释注释注释是独立于代码的文档,不参与编译,是程序员用来交流想法的途径。注释通常反映程序员对代码逻辑的见解。因为程序可能会使用一段比较长的时间,并在这段时间内多次修改。而需要修改时,程序员经常已经记不起特殊的细节,或者已经找不到原来的程序员了。这样从头去理解程序要花费大量的时间和精力。所以好的注释文档是相当重要的。C#的注释有两种形式:一种
8、是多行注释:/*/,在/*和*/之间的语句都不参加编译。另一种是单行注释:/,即本行/后的语句为注释,不参与编译。注释的作用主要有两点:一是让程序员之间更好地交流。一般情况下,程序员习惯在程序的开头加上一段注释,标明该程序的基本信息。注释也经常用在一些较难理解的程序行后,起到解释的作用。二是在调试程序时通过注释来使一些不确定的代码不参加编译,以便帮助程序员找出错误代码。2.空白符空白符C#程序使用空白符来分隔程序中使用的词和符号。空白符包括空格、制表符和换行符。正确使用空白符可以提高程序的可读性。C#程序中,单词之间必须用空白符来分隔。其它空白符都将被编译器忽略,不会影响到程序的编译和运行结果
9、。但一个好的程序员应该养成合理使用缩进和对齐的好习惯,从而使程序的结构更加清晰。比如说以下两个程序都能编译成功,但你更愿意读哪个?class Program static void Main(string args)Console.WriteLine(有趣的程序);class Programstatic void Main(string args)Console.WriteLine(有趣的程序);1.1.4 知识点知识点2Write和和WriteLine方法、字符串连接方法、字符串连接1.Write和和WriteLine方法的基本应用方法的基本应用在该任务中,我们触发了如下的WriteLine
10、函数的语句:Console.WriteLine(你知道标准计算机键盘有多少个按键吗?);在这个语句中,Console是C#的控制台类,WriteLine方法是Console类为我们提供的一项服务。该服务的功能为在用户屏幕上输出字符串。可以说,我们把数据通过WriteLine方法发送消息给Console,请求打印一些文本。我们发送给方法的每个数据都称为参数(parameter)。在这个例子中,WriteLine 方法只使用了一个参数:要打印的字符串。Console类还提供了另一种我们可以使用的类似的服务:Write方法。Write方法和WriteLine方法的区别很小,但我们必须知道:Write
11、Line方法打印发送给它的数据,然后光标移到下一行的开始;而Write方法完成后,光标则停留在打印字符串的末尾,不移动到下一行。例如:Console.Write(我所遇见的每一个人,);Console.WriteLine(或多或少都是我的老师,);Console.Write(因为我从他们身上学到了东西。);Console.WriteLine();Console.Write(-爱默生);其运行结果为:我所遇见的每一个人,或多或少都是我的老师,因为我从他们身上学到了东西。-爱默生 注意:WriteLine方法是在打印完发送给它的数据后,才将光标移动到下一行的。2.字符串连接字符串连接在知识点1中,
12、我们看到,在程序中,代码是可以跨越多行的。因为编译器是以分语句结束标识的,回车换行不影响程序的编译。但是,“”中的字符串文字不能跨越多行!比如:下面的程序语句语法是不正确的,尝试编译时将会产生一个错误。Console.WriteLine(“你知道标准计算机键盘有多少个按键吗?我还真是没注意到。);因此,如果我们想要在程序中打印一个比较长,无法在一行内写完的字符串,就可以使用字符串连接(string concatenation)将两个字符串头尾相连。字符串连接的运算符是加号(+)。例如,下面的表达式将三个字符串和一个变量连接起来,产生一个较长的字符串:Console.WriteLine(你知道标
13、准的计算机键盘有多少个按键吗?+我知道,总共有 +keys +个按键。);在该程序中,WriteLine方法的调用使用了4条信息,有字符串,有变量(keys)。在引用变量keys时,使用当前存储在变量keys中的值(整型值107)。所以,在调用WriteLine时,获取keys的值107。这是个整数,WriteLine将它自动转换成字符串并和原来的字符串连接,连接后的字符串传递给WriteLine打印到屏幕上。打印结果为:你知道标准的计算机键盘有多少个按键吗?我知道,总共有107个按键。3.转义序列转义序列在C#中输出字符串时,双引号()用于指示一个字符串的开始和结束。假如我们想打印出一个引号
14、来,将它放在一对双引号中(),编译器会感到困惑,因为它认为第2个引号是字符串的结束,而不知道对第3个引号该如何处理,结果导致一个编译错误。C#语言定义了一些转义序列(escape sequence)来表示特殊字符,如表1.1所示。转义字符由反斜杠开始(),它告诉编译器,后面跟的一个或者多个字符应该按照特殊的方式来解释编译。表 1.1 转 义 序 列 转义字符 意 义 0 a b f n r t v 用来表示单引号 用来表示双引号 用来表示反斜杠 表示空字符 用来表示感叹号 用来表示退格 用来表示换页 用来表示换行 用来表示回车 用来表示水平 tab 用来表示垂直 tab 1.1.5 知识点知识
15、点3运行与调试:逐语句调试运行与调试:逐语句调试程序编写完后,就可以运行查看结果了。在Visual Studio 2005中,选择“调试启动调试”,若程序没有语法错误,就能直接运行出结果;否则调试终止。启动调试的快捷键为F5。此外,还可选择“调试逐语句”,若程序没有语法错误,则Visual Studio 2005编译器将从Main函数开始,逐行执行代码,正在执行的代码行以黄底高亮显示,如图1.2所示。采用逐语句调试可以逐行查看代码运行过程的详细情况。当程序出现运行错误时(没有语法错误,但运行出来的结果和我们预计的不一样),也可以通过逐语句运行来帮助找出错误所在。逐语句调试的快捷键为F11。图1
16、.2 1.2 任务二:第一个任务二:第一个Windows程序程序1.2.1 Visual Studio C#IDE简介简介Visual Studio C#集成开发环境(IDE)是一种通过常用用户界面公开的开发工具的集合。用户可以通过IDE中的窗口、菜单、属性页和向导与这些开发工具进行交互。我们将在这里介绍开发项目的过程中常用的一些功能。打开Visual Studio,IDE的默认外观如图1.3所示。图1.3 图1.3中所示工具的窗口都可从“视图”菜单打开。其中,较常用的有以下4种:(1)代码编辑器:用于编写源代码。(2)工具箱和Windows窗体设计器:用于使用鼠标迅速开发用户界面。Windo
17、ws窗体设计器和代码编辑器在IDE的同一个位置上,可以通过上方的页面选择切换,如图1.4所示。图1.4 窗体设计器窗口:代码编辑窗口:(3)“属性”窗口:用于配置用户界面中控件的属性和事件。(4)解决方案资源管理器:可用于查看和管理项目文件和设置。该窗口以分层树视图的方式显示项目中的所有文件。创建Windows窗体项目时,默认情况下,Visual C#会将一个窗体添加到项目中,并为其命名为Form1。表示该窗体的两个文件称为Form1.cs和Form1.Designer.cs。这些文件列表我们都可以在“解决方案资源管理器”中查看到,如图1.5所示。图图1.5 图1.5中:Form1.cs 是我
18、们写入代码的文件。Form1.Designer.cs文件中的代码是Windows窗体设计器自动写入的,这些代码用于实现所有通过从“工具箱”中拖放控件执行的操作。我们在该文件中就可以看到对应窗体所有控件的属性及事件。如该任务中“改变标签大小”按钮在Designer.cs中的代码如下:this.btnSize.Location=new System.Drawing.Point(292,277);this.btnSize.Name=btnSize;this.btnSize.Size=new System.Drawing.Size(111,28);this.btnSize.TabIndex=3;thi
19、s.btnSize.Text=改变标签大小;this.btnSize.UseVisualStyleBackColor=true;this.btnSize.Click+=new System.EventHandler(this.btnSize_Click);1.2.2 功能描述功能描述本例将创建一个简单却完整的C#WinForms程序,该程序包含两个窗体,在程序运行时,先显示版权说明窗体,关闭版权窗体后才能显示出主窗体。版权窗体如图1.6所示。图图1.6 主窗体中包含一个label控件和三个button(按钮)。通过代码实现对label的字体、背景及大小的设置。主窗体如图1.7所示。图图1.7
20、通过本任务,我们应:理解窗体控件的属性和事件的作用;能够使用基本控件设计窗体界面;能够编写简单的事件处理程序。1.2.3 任务步骤任务步骤 1.在 VS中创建 Windows 应用程序的步骤 (1)在 Visual Studio 的集成开发环境(IDE)中选择“文件新建项目”,或者单击按钮,弹出“新建项目”对话框,如图 1.8 所示。图图1.8(2)选择“Windows应用程序”输入“名称”选择存放的“位置”点击“确定”。Visual Studio创建出一个默认窗体,该窗体就是本任务的主窗体。在右侧我们看到了一个解决方案管理器(Solution Explorer)。向导为新项目增加了一个For
21、m1.cs文件。注:我们可以为Form1.cs重命名。在解决方案管理器中的Form1.cs上右击,选择“重命名”,输入窗体名称。这里,我们将其重命名为“mainFrm”。我们应当养成给窗体取一个可“顾名思义”的名称的好习惯。试想一下,在开发多窗体的应用程序时,若使用Visual Studio为我们自动创建的名称Form1、Form2、Form3等,将给开发团队的成员造成困扰。2.在在VS中创建中创建Windows窗体的步骤窗体的步骤本任务共包含两个窗体:一个是主窗体,由项目默认创建;另一个是版权窗体,是项目的子窗体,由我们手动创建。版权窗体创建方法如下:(1)打开已有的项目,选择“项目添加Wi
22、ndows窗体”,或者单击按钮,弹出“添加新项”对话框,如图1.9所示。(2)选择“Windows窗体”,输入“名称”,点击“添加”按钮,创建一个空白窗体。通过拖拽改变窗体大小,形成版权窗体,并将其命名为copyRightFrm。图图1.9 3.添加控件的方法添加控件的方法在窗体中添加控件的方法有两种,第一种方法步骤如下:(1)点击工具箱中的工具。(2)在窗体中需要添加工具的地方点击,即添加标准大小的控件。若需要改变大小,则可以拖曳或在属性窗口中修改size属性。另外,也可以按以下方法操作:(1)点击工具箱中的工具。(2)在窗体中需要添加工具的地方拖动到适当的大小。添加好控件后,就该为控件设置
23、属性和事件了。在设计器中用鼠标选中控件,可以看到属性窗口变为当前选中的控件的属性,如图1.10所示。在图1.10中,下拉框用于在不同控件间切换。4个图标按钮分别是按分类排序、按字母排序、属性和事件。属性窗口中列出了所选控件的可用属性。最下面是对选中属性的文字说明。图1.10是按照字母排序的属性窗口;图1.11是按照分类排序的事件窗口。图图1.10 图图1.11 表 1.2 添加控件并修改属性 所属窗体 控 件 名称(Name)文本(Text)窗体(form2)copyRightFrm 版权所有 版权窗体 标签(label1)label1 空 窗体(form1)form1 空 标签(label1
24、)lblExp 在窗体上移动鼠标,看看窗体标题的变化 按钮1 btnFore 字体设为红色 按钮2 btnBack 背景设为蓝色 主窗体 按钮3 btnSize 改变标签大小 Name属性和Text属性有什么不同呢?Name是控件的名称,是控件在程序中的唯一标识,它的命名必须遵循C#标识符的命名规则(这将在下一个任务中详细讲解)。而且,在一个文件中,不能出现两个名称相同的控件。Text是控件相关的文本,通常是在控件上显示的字符串,如按钮上的文本、窗体的标题等。它可以是中文和特殊字符,可以重名。4.添加事件添加事件编写代码编写代码(1)选中控件,将属性窗口切换到事件窗口。(2)找到事件名,在事件
25、名右边的空白处双击,Visual Studio从设计器自动切换到代码编辑器,并自动生成事件处理函数的函数体。为方便查找,可以根据需要选择适当的排序方式。(3)每个控件都有一个默认事件,按钮和文本标签的默认事件都是单击事件,而窗体是载入事件。有兴趣的读者可以试一下。默认事件通过双击控件生成。例如,我们要为“字体设为红色”按钮添加单击事件,可以在事件窗体中找到“Click”,双击右边空白进入事件;也可以直接双击按钮进入。两种方法是一样的,都可自动生成如下函数体:private void btnFore_Click(object sender,EventArgs e)当用户点击该按钮时,执行这对花括
展开阅读全文