欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > PPT文档下载  

    第3章C#程序设计ppt课件.ppt

    • 资源ID:1400910       资源大小:1.76MB        全文页数:263页
    • 资源格式: PPT        下载积分:16金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要16金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    第3章C#程序设计ppt课件.ppt

    ,软件技术专业剖析报告,软件教研室 李 萍2006年5月,第3章 C#程序设计语言,讲课教师:周志德,1、了解C#程序组成中解决方案、项目、类、窗体、函数等基本概念和对应文件;2、了解C#的数据类型,变量和常量定义,公用函数、语句表达式与程序书写规则;3、掌握赋值、分支、循环等语句的格式与使用方法;4、掌握数组、数组列表、类、接口、委托、命名空间等概念与使用方法。5、学会用类与对象设计学生成绩管理程序(解决方案)。,教学要求,1、采用类比教学法,即以C+中的程序组成、语法、语义与算法为例,引出C#中有关:(1)程序结构;(2)数据类型、表达式;(3)流程控制语句;(4)数组类型;(5)类、对象、接口与委托;(6)命名空间;的概念与使用方法。2、采用理实一体化的教学方法。,教学方法,1、类与对象(1)类(Class):数据成员(属性)+成员函数(方法)Class ; ;(2)对象(Object): ;(3)对象成员调用:.;.();,相关术语,2、命名空间命名空间由若干个类的定义组成,如命名空间System由Math、String、DateTine、Double等类的定义组成。定义格式:namespace 定义; 定义; ,相关术语,C+程序组成,问题:C#程序如何组成?答:解决方案(.sln),3.1 C#程序组成,3.1 C#程序组成,图3.2 C#程序(解决方案)的组成,3.1 C#程序组成,3.1.1 C#程序组成1、解决方案(.sln)Visual Studio 2005将C#应用程序称为解决方案。如:学生档案查询解决方案ex2_5.sln;由图3.2可知C#解决方案由一个或多个C#项目组成。在解决方案中添加新项目的方法:菜单 | 文件 | 添加 | 新建项目 | 在对话框中选择:Visual C#、Windows应用程序、位置,输入项目名称。,3.1 C#程序组成,【例3-1(1)】创建解决方案ex3_1.sln, 在ex3_1.sln中添加项目ex3_1_2。(1)创建解决方案ex3_1.sln菜单 |文件 |新建|项目|新建项目对话框,设置如下:项目类型:Visual C#,模板:Windows应用程序位置:c:C#,名称:ex3_1 |确定。(2)在窗体Form1中添加一个label与一个Butoon,双击按钮,编写事件驱动程序: private void button1_Click(object sender, EventArgs e) label1.Text = 学习C#程序组成!; ,3.1 C#程序组成,(3)在ex3_1.sln中添加项目ex3_1_2菜单 | 文件 | 添加 | 新建项目 | 添加新项目对话框,设置如下:项目类型:Visual C#,模板:Windows应用程序,位置:c:C#名称:ex3_2 |确定。此时,解决方案ex3_1.sln中出现项目ex3_1与ex3_1_2,如图3.4所示,即解决方案ex3_1.sln由两个项目ex3_1与ex3_1_2组成。,图3.4 解决方案ex3_1.sln由项目ex3_1与ex3_1_2组成,3.1 C#程序组成,2、项目(.csproj)(1)项目组成由图3.2可知C#项目由若干普通类(class)与窗体类(Form)组成。C#的项目是以命名空间的形式定义的。在项目中可以添加新窗体与新类。添加新窗体的方法菜单| 项目|添加Windows窗体 | 输入窗体名|添加添加新类的方法菜单|项目|添加类| 输入类名|添加。,3.1 C#程序组成,【例3-1(2)】在项目ex3_1 添加一个新窗体Form2与一个类class1。(1)添加新窗体Form2:菜单| 项目|添加Windows窗体 | 输入窗体名 Form2|添加。(2)添加新类class1菜单|项目|添加类| 输入类名class1|添加。添加后项目ex3_1由属性、引用、类class1.cs、窗体Form1.cs与Form2.cs、程序Program.cs组成。,图3.5 项目ex3_1添加窗体Form2与类class1,3.1 C#程序组成,(2)资源管理器中项目内容 项目文件(. csproj),如:ex3_1.csproj属性:Properties引用: ,如: System窗体(.cs),如:Form1.cs窗体设计类( .Designer.cs);如:Form1.Designer.cs窗体资源类(.resx);如 :Form1.resx类(.cs),如Program.cs其它( *.config, *.xml, *.ico, ),(3)项目命名空间的定义C#项目中所有类与窗体都被定义在项目命名空间内。如:打开项目ex3_1中类class1的代码编辑器可看ex3_1命名空间的定义代码如下:sing System; /引用系统类组成的命名空间Systemusing System.Collections.Generic;using System.Text;namespace ex3_1 /定义项目命名空间ex3_1 class Class1 /定义类Class1 ,3.1 C#程序组成,3.1 C#程序组成,打开项目ex3_1中窗体Form1的代码编辑器可看ex3_1命名空间的定义代码如下: using System;/引用系统类组成的命名空间Systemusing System.Windows.Forms; /引用窗体类组成的命名空间Formsnamespace ex3_1 /定义项目命名空间ex3_1 /由Form公有派生出窗体类Form1 public partial class Form1 : Form public Form1() /定义窗体类Form1的构造函数 InitializeComponent(); /调用函数初始化窗体与控件 /该函数在Designer.cs文件中执行,3、命名空间(1)命名空间是类的定义集合如:系统命名空间System由Math、String、DateTine、Double等公共类的定义组成。在代码编辑器中输入System后用成员运算“.”可显示其所有公共类Math等,如图3.6所示。再如,项目命名空间ex3_1由Class1、Form1、Form2、Program类的定义组成。,3.1 C#程序组成,图3.6 System中的类,(2)命名空间的定义格式namespace 定义; 定义; 如:项目ex3_1的命名空间定义如下:namespace ex3_1 class Class1 public class Form1:Form public class Form2:Form static class Program 说明:实际类、窗体、程序的ex3_1命名空间的定义是分开。,3.1 C#程序组成,3.1 C#程序组成,4引用定义在C+中,当要使用输入输出对象cin、cout时,必须先用#include将头文件iostream.h包含到程序中来。#include void main(void) int a; cina; cout“a=”aendl;,3.1 C#程序组成,同样当使用命名空间中的类时,必须先引用命名空间后使用类。命名空间引用定义格式:using 如在项目ex3_1的命名空间定义前,定义引用:using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Text;using System.Windows.Forms;,定义System等命名空间引用后,在后续代码中,可以使用 System、System.Windows.Forms这些命名空间中的类。实验:在代码编辑器中,对下列引用定义语句作注解处理 /using System.Windows.Forms; 则生成解决方案时:因为找不到基类Form,定义窗体类的语句:public partial class Form1 : Form 出错!且Form1窗体设计器不能使用!,3.1 C#程序组成,3.1 C#程序组成,5、窗体(1)窗体组成窗体由下列三个文件组成1)程序代码文件(*.cs)如: Form1.cs程序代码文件由引用定义、命名空间定义、窗体类定义、函数定义(控件事件驱动程序)、变量定义等组成。用户在此界面内的主要工作是编写事件驱动程序。,3.1 C#程序组成,2)窗体设计类(*.Designer.cs) 如:Form1 .Designer.cs 该程序主要用于窗体与控件的初始化工作,初始化工作主要由Form1.cs调用InitializeComponent()函数实现。在InitializeComponent()函数内有窗体与控件属性、方法初值的设置代码。一般不要用户管理。3)窗体资源(*.resx)如: Form1 .resx该程序主要用于设置窗体与控件所需资料,如图像资源等。,(2)添加新窗体C#项目中允许有多个窗体,添加新窗体的方法如下:方法一:菜单 | 项目| 添加Windows窗体 | Windows窗体 | Form1 | 添加方法二:资源管理器| 右击项目ex3_1 | 添加 | Windows窗体 | Form1 | 添加,3.1 C#程序组成,3.1 C#程序组成,6、类文件类文件由引用定义、命名空间定义、类(或结构等)定义以及类函数组成。(1)主程序类Program.csC#项目中首先运行的是主程序类文件Program.cs该文件由引用定义、命名空间定义、主函数main()定义组成,用于对应用项目程序的初始化,及决定调用的启动窗体。,3.1 C#程序组成,如:Program.cs:主程序类文件代码如下using System;using System.Collections.Generic;using System.Windows.Forms;namespace WindowsApplication1 static class Program /应用程序的主入口点。 static void Main() /主函数 Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); Application.Run(new Form1(); /运行Form1窗体程序 /当项目中有多个窗体时, /该程序将决定先启动运行哪一个窗体,3.1 C#程序组成,(2)添加类方法一:菜单 | 项目| 添加类 | 类 | class1 | 添加方法二:资源管理器| 右击项目ex3_1 | 添加 | 类 | class1 | 添加,7函数定义一个函数,包括函数的名称、参数、返回值等等,如下代码:private void btn_Find_Click(object sender, EventArgs e)函数体函数体是在函数定义后的之间包含的所有代码行,用于改变程序、窗体或类的对象的状态和行为、完成对相关信息进行处理等的代码。,3.1 C#程序组成,3.1.2 C#代码行书写规则1.语句语句定义符 ;2. 注释格式1:/注释内容; 格式2:/* 注释内容*/3. 换行书写 当语句较长时,C#允许语句换行书写,语句用“;”结束。,3.1 C#程序组成,/若中桥校区复选框被选中,则在文本框中赋“中桥校区”; if (rbtn_Zhongqiao.Checked ) txt_Xiaoqu2.Text = “中桥校区”; ,3.1 C#程序组成,4.命名规范在C#程序中给常量、变量、类、函数等命名时应遵守命名规范,体现专业素养。(1)常量:用大写字母。例如:PI。当含有多个单词,用下划线“_”隔开。例如CIRCLE_RADIUS等。(2)变量:用首字母小写,之后每个单词首字母大写其余小写的方式。例如frm_StuFind、filename、errorHandler、peopleNumber。,3.1 C#程序组成,(3)类成员变量:加前缀“m”。例如:mFilename、mErrorHandler、mPeopleNumber。类名:一般使用每个单词首字母大写其余字母小写的方式。例如:FileAppender、StreamWriter等。(4)函数名:根据函数功能用动词名词的单词组合进行命名,做到“见名知意”。如:btn_Find_Click,再如,打开文件的函数可以命名为OpenFile。(5)C#中的命名是区分大小写如,Name和name代表的是不同的变量。,3.1 C#程序组成,5.使用缩进private void btn_Delete_Click(object sender, EventArgs e) int index = lst_User.SelectedIndex; if (index = 0)/宝山认为c,c+,java都是以0为开始 lst_User.Items.RemoveAt(index); else MessageBox.Show (请选择用户后再删除!); ,3.1 C#程序组成,1、C#程序组成,C#程序称为解决方案;解决方案由若干个项目组成,以命名空间形式定义项目;项目由若干个普通类、窗体类与主程序类组成;普通类由定义类的数据成员(属性)与成员函数(方法)组成;窗体类由窗体定义类(定义控件事件驱动程序等)、窗体设计类(定义窗体内的控件)、窗体资源类(定义窗体内的资源)等组成。主程序类由项目主函数等构成,用于创建启动窗体。2、代码行书写规则,第1次课小结,作业:新建一个解决方案ex3_1.sln,在解决方案的Form1窗体内添加一按钮与图片框控件(装入黄金虎教师照片),单击按钮将金鱼图片装入图片框。(1)在代码编辑器中,阅读Form1.cs文件,写出引用、命名空间、窗体类、构造函数、事件驱动程序的定义代码;阅读Form1.Designer.cs文件,写出窗体、按钮控件变量的定义初始化设置代码。阅读Form1.resx文件,写出文件中的资源。阅读Program.cs文件,写出调用窗体Form1的代码。,第1次课小结,(2)在资源管理器中,写出项目、引用、窗体、类的名称。(3)在解决方案的目录中,写出解决方案文件、项目文件、窗体文件(程序代码文件、窗体设计类文件、窗体资源文件)、类文件的名称。(4)写出解决方案执行过程。,第1次课小结,3.2 数据类型与表达式,3.2数据类型与表达式,图3.5 C#的基本数据类型,3.2.1 数据类型 C#除保留C+的数据类型外,还新增了C#内置数据类型 。 1内置数据类型(如表3-1所示)Byte b = 1; /定义 C#新增的 字节变量b Int32 i=2; /定义C#新增的32位整型变量i int j=3; /定义C+整型变量j Single x1=4; /定义 C#新增的 单精度变量x1, float x2=5; /定义 C+ 单精度变量x2 Double y=1.234567; /定义 C#新增的双精度变量y Char c=a; /定义 C#新增的 字符变量c Boolean a = true; /定义 C#新增的 布尔变量a在VS2005中蓝色多为C+数据类型,浅蓝色为C#新增数据类型,3.2 数据类型与表达式,表3-1 C#内置数据类型,【例3-2(1)】新建解决方案ex3_2.sln,在窗体中添加5个按钮与5个文本框控件,如图3-1所示,双击按钮1编写事件驱动程序如下: private void button1_Click(object sender, EventArgs e) Byte b = 1; Int32 i = 2; int j = 3; Single x1 = 4; float x2 = 5; Double y = 1.234; Char c=a; Boolean a = true; textBox1.Text = b.ToString(); ,3.2 数据类型与表达式,图3.6 数据类型示例,2. 字符串类型:String(C#新增) String属于值类型:System.String作用:定义字符串变量(对象)【例3-2(2)】在窗体中双击按钮2,编写事件驱动程序。 private void button2_Click(object sender, EventArgs e) String s1 = “abcd”;/定义字符串变量s1 string s2 = “xyz”; /定义字符串变量s2 System.String s3=“”; /定义字符串变量s3 s3 = s1 + s2;/字符串连接运算 textBox2.Text = s3; /在文本框中显示s3值 ,3.2 数据类型与表达式,说明:在C#中同一种数据类型有时允许用首字母大写或小写两种表达方式。如:字符串类型有:String 与string两种表达方式。双精度类型有:Double与double两种表达方式。在VS2005中小写为蓝色,大写为浅蓝色。3. 日期时间类型:DateTime (C#新增)作用:用于定义日期与时间变量。日期格式:2012-09-18 10:45:50。,3.2 数据类型与表达式,DateTime值类型:System.DateTime取值范围:0001-1-1 24:00:00 到 9999-12-31 23:59:59 。例3-2(3)在窗体中双击按钮3,编写事件驱动程序。 private void button3_Click(object sender, EventArgs e) DateTime d1 = Convert.ToDateTime(2012-09-18 10:20:00); System.DateTime d2 = Convert.ToDateTime(“2012-09-03 10:20:00”); /定义日期时间变量d1、d2,并赋初值 textBox3.Text = Convert.ToString(d1 - d2); /计算日期相差天数,3.2 数据类型与表达式,3.2 数据类型与表达式,4.结构体类型(自定义数据类型)(1)定义结构体类型 struct 数据成员; 函数体; (2)定义结构体变量: ;(3)引用结构体变量:.,3.2 数据类型与表达式,【例3-2(4)】在窗体类Form1中定义学生成绩结构类型Score。 public struct Score/在窗体类Form1中定义成绩结构体类型 public int no;/定义公有数据成员学号 public string name; /定义公有数据成员姓名 public float math; /定义公有数据成员数学 public float phy; /定义公有数据成员物理 public float eng; /定义公有数据成员英语 public float ave; /定义公有数据成员均分 ;,3.2 数据类型与表达式,在窗体内双击按钮4,编写按钮4事件驱动程序 :用Score定义变量s,成绩赋给s,计算均分,输出姓名:均分。 private void button4_Click(object sender, EventArgs e) Score s; /定义学生成绩结构变量s s.no = 1001;/通过引用给数据成员赋值 s.name = zhou; s.math = 90; s.phy = 85; s.eng = 80; s.ave = (s.math + s.phy + s.eng) / 3; /计算均分 textBox4.Text = s.name+:+s.ave.ToString(); ,3.2 数据类型与表达式,5、 类类型(自定义类型)(1)定义类类型 class 数据成员; (形参) 函数体; (2)定义对象: ;(3)引用对象数据成员:.,【例3-2(5)】在C#解决方案ex3_1.sln中定义矩形类Rectangle(1)在解决方案中添加矩形类Rectangle菜单| 项目|添加类| 选择:类| 名称:Rectangle|添加|资源管理器中出现Rectangle.cs,如图3.7所示。,3.2 数据类型与表达式,图3.7 定义矩形类Rectangle,(2)在代码编辑器中编写定义类的代码 class Rectangle private int Left,Top,Height,Width;/定义矩形数据成员 public Rectangle(int L,int T,int H,int W)/定义构造函数 Left=L;Top=T;Height=H;Width=W; public int Area() /定义计算矩形面积成员函数 return Height*Width; ,3.2 数据类型与表达式,(3)在Form1窗体中添加文本框5与按钮5(4)双击按钮5,在代码编辑器中输入事件驱动程序private void button5_Click(object sender, EventArgs e) Rectangle r;/定义矩形对象r r=new Rectangle(10,10,10,10);/为r分配内存并初始化 textBox5.Text=r.Area().ToString();/调用r的面积函数 /计算矩形面积,并在文本框中显示实验:完成解决方案ex3_1.sln的编程,体验C#数据类型使用方法。,3.2 数据类型与表达式,3.2.2 常量1直接常量(常数)逻辑常量:true, false2符号常量访问权限 const 数据类型 = ;例如:public const int DAY_OF_WEEK = 7; public const string SHOW_TITLE = Hello world!;,3.2 数据类型与表达式,3.C#内部定义符号常量如:System.Math.PI(圆周率)System.Math.E(自然对数的底e)等等,这些常量在程序代码中可以直接使用。,3.2 数据类型与表达式,【例3-2(6)】 在Form1窗体中添加文本框6与按钮6,事件驱动程序:private void button6_Click(object sender, EventArgs e) double r = 10.0;/定义半径r=10 Double s = r * r * System.Math.PI;/计算圆面积s textBox6.Text = s.ToString();/显示圆面积s ,3.2 数据类型与表达式,3.2.3 变量 变量必须按照C#命名规则进行命名。对于变量,编译程序时,系统要为其分配与其类型相对应的若干个字节的存储单元,以存储变量的值。为变量赋值就是将值存放到为其分配的存储单元中;引用变量就是从变量的存储单元中取出数据。,3.2 数据类型与表达式,1变量定义语句(1)定义函数内局部变量: , ;例如:private void btn_Delete_Click(object sender, EventArgs e) int index = lst_User.SelectedIndex; if (index = 0) lst_User.Items.RemoveAt(index); else MessageBox.Show (请选择用户后再删除!); ,3.2 数据类型与表达式,(2)定义类的成员变量作用域修饰符 , ;namespace WindowsApplication1 public partial class Form1 : Form /定义Form1类 public Form1() /定义构造函数 InitializeComponent(); int count=0; /定义类的成员变量 private void timer1_Tick(object sender, EventArgs e) count+; textBox1.Text = Convert.ToString(count); ,3.2 数据类型与表达式,(3)定义控件变量(从工具箱将控件拖入窗体后自动定义)private , ;例如:从工具箱将文本框、按钮控件拖入窗体后,在Fowm1.Designer.cs文件中出现控件定义语句:private System.Windows.Forms.TextBox textBox1;private System.Windows.Forms.Button button1;,3.2 数据类型与表达式,(4)定义静态变量作用域修饰符 static , ;例如:static int count; 说明:静态变量只能定义函数外部,不能定义在函数内。,3.2 数据类型与表达式,(5)说明与C+变量初值为随机数所不同的是,C#值类型变量定义后,系统自动为该变量赋一个初值:整型:初值为0,逻辑型:初值为false;引用类型:初值为null。string类型:初值为null,而不是空字符串”。,3.2 数据类型与表达式,3.2.4 运算符与表达式1、C#运算符C#运算符与C+类似,分为:算术运算符:+、-、*、/、%、+、-逻辑运算符:!、&、|、&(位与)、|(位或)关系运算符:、=、=、=、!=条件运算符:? :赋值运算符:=、+=、-=、*=、/=字符串连接运算符:+等,运算符及优先级如表所示。,3.2 数据类型与表达式,表3.2 C#运算符一览表,表3.3 C#运算符一览表,2、 C#表达式 与C+类似,C#表达式也由常量、变量、函数用运算符连接而成。例如:Double x=2.0,y;y=1+x+sin(x);,3.2 数据类型与表达式,(1)数据类型内置基本数据类型:Boolean、Byte等字符串类型:String日期时间型:DateTime 结构体类型(struct)与类类型(class)(首字母大写)(2)常量:大写字母,如PI 直接常量(常数): true, false 符号常量:public const int DAY_OF_WEEK = 7; C#内部定义符号常量: System.Math.PI,第2次课小结,(3)变量:首字母小写,单词首字母大写,如btn_Add函数内局部变量类的成员变量控件变量静态变量(static)(5)运算符与表达式作业:补充题:完成例3-1(1)(6) 的解决方案界面与事件驱动程序设计。习题三 3.1 ,3.2,第2次课小结,3.2 数据类型与表达式,3.2.5 C#中公共类及其函数 C#提供许多公用类函数供用户使用, 使用前必须先引用公共类所在命名空间,后调用类的公用函数。 现介绍算术、字符串、转换、日期类中公有函数的使用方法。1.算术类:System.Math(见表3-4)算术类公用函数主要有:(1)三角函数:sin(x),cos(x),Tan(x),Asin(x),Acos(x)等(2)指数对数函数:Exp(x),pow(x,n),log(x),log10(x)等(3)最大小值函数:Max(x,y),Min(x,y), Ceiling(x),Floot(x)等(4)其它函数:Abs(x),Round(x,n),Sing(x)等,3.2 数据类型与表达式,表3-4 算术类函数表,表3-4 算术类函数表,3.2 数据类型与表达式,【例3-3(1)】算术类公用函数示例。新建解决方案ex3_3.sln,在窗体Form1中添加2个按钮与2个文本框,如图3.8所示。,3.2 数据类型与表达式,图3.8算术类公用函数示例,双击按钮1,编写按钮1事件驱动程序:private void button1_Click(object sender, EventArgs e) double x1 = -4.5,x2=4,x3=5.5,y1,y2,y3,y4,y5,y6; y1= System.Math.Abs(x1);/y1=|x1|=4.5 y2 = Math.Sin(Math.PI/2);/y2=sin(/2)=sin(90)=1 y3 = Math.Asin(y2);/y3=arcsin(1)=/2=1.5707 y4 = Math.Round(y3,2);/y4=round(1.5707,2)=1.57 y5 = Math.Sqrt(x2);/y5=sqrt(4)=2 y6 = Math.Sign(x1);/y6=sing(-4.5)=-1 textBox1.Text = y1=+y1.ToString() + ,y2= + y2.ToString() + ,y3= + y3.ToString()+ ,y4= + y4.ToString() + ,y5= + y5.ToString() + ,y6= + y6.ToString();,3.2 数据类型与表达式,【例3-3(2)】在窗体Form1中双击按钮2,编写按钮2事件驱动程序: private void button2_Click(object sender, EventArgs e) double x1 = 4.5, x2 = 5.5, y1, y2, y3, y4, y5, y6,y7; y1 = Math.Max(x1, x2);/y1=max(4.5,5.5)=5.5 y2 = Math.Min(x1, x2);/y2=min(4.5,5.5)=4.5 y3 = Math.Ceiling(x2);/y3=(6=5.5)=6 y4 = Math.Floor(x2);/y4=(5=5.5)=5 y5 = Math.Round( Math.Exp(1),3);/y5=ex=2.718 y6 = Math.Round( Math.Log(2.718);/y6=ln(2.718)=1 y7 = Math.Pow(2, 3);/y7=23=8 textBox2.Text = y1= + y1.ToString() + ,y2= + y2.ToString() + ,y3= + y3.ToString() + ,y4= + y4.ToString() + ,y5= + y5.ToString() + ,y6= + y6.ToString() + ,y7= + y7.ToString(); ,3.2 数据类型与表达式,2.字符串类公用函数(方法):System.String(表3-5)(1)串连接、比较、串长等函数串连接运算符 +:s3=s1+s2 s2 ;返回1串比较函数String.Compare(s1,s2) s1 =s2 ;返回0 s2 ;返回-1测串s长度属性s.Length:返回串s长度,即字符个数。转大写方法s.ToUpper():将串s中字符转大写转小写方法s.ToLower():将串s中字符转小写,3.2 数据类型与表达式,表3-5 字符串类公用函数(表中s为字符串对象),【例3-4(1)】串连接、比较、串长函数应用示例。(1)新建解决方案ex3_4.sln,在窗体内添加7个文本框与3个按钮,如图3.9所示。,3.2 数据类型与表达式,图3.9串连接、比较、串长函数应用示例,(2)在Form1.cs文件中,定义全局字符串对象s1、s2、s3、s4、s5、s6。 String s1 = ABCF, s2 = ABCD, s3, s4 = ZhangYP , s5 = LiuSW, s6 = 张飞飞;(3)双击按钮1,编写事件驱动程序如下:,3.2 数据类型与表达式,rivate void button1_Click(object sender, EventArgs e) s3=s1+s2 ;/串s1与s2连接到s3 textBox1.Text = s1= + s1 + ,s2= + s2 + ,s3= + s3 + ,s4= + s4 + ,s5= + s5 + ,s6= + s6; int n = String.Compare(s1, s2);/串s1与s2比较:n=1 if (n = 1) textBox2.Text = s1s2; else if (n = 0) textBox2.Text = s1=s2; else textBox2.Text = s1s2; textBox3.Text = s3.Length= + s3.Length.ToString();/测串s3长8 textBox4.Text = s3= + s3.ToLower(); /s3转小写abcf textBox5.Text=s4= + s4.ToUpper();/s4转大写ZHANGYP 单击按钮1,程序运行结果如图3.9所示。,3.2 数据类型与表达式,(2)删除串中前后导字符与取子串方法s.Trim(c1,c2):删除串s中前导字符c1、后导字符c2方法s.TrimEnd(c2):删除串s后导字符c2方法s.TrimStart(c1):删除串s前导字符c1说明:若无c1、c2则删除串s中前、后导空格。s.Substring(n,l):从串s的第n个位置起获取长度为l的子串。,3.2 数据类型与表达式,【例3-4(2)】删前后导字符、取子串方法的应用示例。双击按钮2,编写事件驱动程序如下:String s1 = ABCF, s2 = ABCD, s3, s4 = ZhangYP , s5 = LiuSW, s6 = 张飞飞; private void button2_Click(object sender, EventArgs e) textBox2.Text = s4= + s4.Trim(); /删除s4前后导空格:”ZhangYP” textBox3.Text =s5= + s5.Trim(L, W); /删除s5前后导字符L、W textBox4.Text = s4= + s4.TrimStart() + ,s4= + s4.TrimEnd() + !; textBox5.Text =s5= + s5.TrimStart(L); /删除s5前导字符L: iuSW textBox4.Text = s6= + s6.Substring(0, 1); /取s6第个汉字: 张; textBox5.Text = s5= + s5.Substring(1, 3); /取s5的第3个字符: iuS ,3.2 数据类型与表达式,图3.10删前后导字符、取子串方法的应用示例,图3.11串比较、定位、插入、删除、替换方法的应用示例,单击按钮2,程序运行结果如图3.10所示。单击按钮3,程序运行结果如图3.11所示。,(3)串比较、定位、插入、删除、替换方法串比较方法s.StartsWith(s1):当s=s1返回true, 当ss1返回false串定位方法s.IndexOf(c):若s中有c则返回c的序号Index 否则则返回-1插入子串方法s.Insert(n,s1):在s中第n个位置处插入子串s1删子串方法:s.Remove(n,l):删除s中第n个起长度为l的子串串替换方法:s.Replace(c1,c2):在s中用字符c2替换字符c1,3.2 数据类型与表达式,【例3-4(3)】串比较、定位、删除、替换方法的应用示例。双击按钮3,编写事件驱动程序如下:String s1 = ABCF, s2 = ABCD, s3, s4 = ZhangYP , s5 = LiuSW, s6 = 张飞飞; private void button3_Click(object sender, EventArgs e) textBox2.Text = s4.StartsWith(s3).ToString();/s4与s3比较:false textBox3.Text = s5.IndexOf(L).ToString();/返回s5中L的序号:0 textBox4.Text = Add:s2= + s2.Insert(2, FG) + ,s2= +

    注意事项

    本文(第3章C#程序设计ppt课件.ppt)为本站会员(小飞机)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开