C#程序设计教程(第2版) 第3章 数据类型、运算符与表达式ppt课件.ppt
《C#程序设计教程(第2版) 第3章 数据类型、运算符与表达式ppt课件.ppt》由会员分享,可在线阅读,更多相关《C#程序设计教程(第2版) 第3章 数据类型、运算符与表达式ppt课件.ppt(69页珍藏版)》请在三一办公上搜索。
1、第3章 数据类型、运算符与表达式,内容提要: C#的主要数据类型以及类型标识符 数据类型的转换 常量和变量、变量的赋值 C#常用的运算符目的要求: 掌握C#的主要数据类型、常量和变量、变量的赋值 掌握C#常用的各类运算符重点难点: 类型转换、常量和变量、算术运算符(+、-) 、复合赋值运算符、逻辑运算符、条件运算符,3.1 数据类型,C#中数据类型主要分为两大类:值类型和引用类型。这里我们先讲解这两种类型,然后再讨论数据类型之间的转换。3.1.1 值类型 C#中值类型包括三种:简单类型、结构类型和枚举类型。不同的类型是不同数据的集合,不同的类型在C#中用不同的类型标识符来表示。这里我们只介绍简
2、单类型,结构类型和枚举类型将在后面介绍。 简单类型包括整数类型、浮点类型、小数类型、字符类型和布尔类型等。,1整数类型 整数类型的数据值只能是整数,计算机语言所提供的数据类型有一定的范围。,2. 浮点类型 浮点类型的数据包含两种:单精度浮点型(float)和双精度浮点型(double),其区别在于取值范围和精度的不同。 float类型是32位宽,double类型是64位宽。 单精度:取值范围在+ 1.510-45 3.41038之间,精度为7 位数。双精度:取值范围为+5.0-324 1.710308之间,精度为 1516位数。,3 小数类型 小数类型(decimal)占用16个字节(128位
3、),主要为了满足需要高精度的财务和金融计算机领域。 小数类型数据的取值范围和精度如下: 取值范围在+ 1.010-28 7.91028之间,精度为29位数。 注意:小数类型数据的后面必须跟m或者M后缀来表示它是decimal类型的,如3.14m、0.28m等,否则就会被解释成标准的浮点类型数据,导致数据类型不匹配。,例: 138f 代表float类型的数值138.0 518u 代表uint类型的数值518 36897123ul 代表ulong类型的数值36897123 22.1m 代表decimal类型的数值22.1 12.68 代表double类型的数值12.68 36 代表int类型的数值
4、36,刚开始学习,不可能一下子掌握这么多数值类型,先牢记以下几种: int型 :凡是要表示带符号的整数时,先考虑使用int型; uint型 :凡是需要不带符号的整数时,先考虑使用uint型; double型:凡是需要做科学计算,并且精度要求不是很高 时,考虑使用double型。,4. 字符类型 字符类型的类型标识符是char,采用Unicode字符集。 凡是在单引号中的一个字符,就是一个字符常数, 如: 你、 A、 ?、 6、2 注意: 在表示一个字符常数时,单引号内的有效字符数量必须且只能是一个,并且不能是单引号或者反斜杠()。,为了表示单引号和反斜杠等特殊的字符常数,C#提供了转义符。,C
5、#常用的转义符,如 Console.WriteLine(“Hello,”+”+”打印出单引号“+”“);例: using System; class StrDemo static void Main( ) Console.WriteLine(“FirstLinenSecondLine”); Console.WriteLine(“AtBtC”); Console.WriteLine(“DtEtF”); ,5布尔类型 布尔类型的类型标识符是bool。 布尔类型常数只有两种值:true(代表“真”)和false(代表“假”)。 布尔类型数据主要应用在流程控制中。 例: bool b=53; /b的值
6、为true; b=false;,3.1.2 引用类型 1. object类 object类是系统提供的基类型,是所有类型的基类,C#中所有的类型都直接或间接派生于对象类型。 对于任一个object变量,均可以赋以任何类型的值。 double d=3.14; object obj1; obj1=d; obj1=k; 对于object类型的变量,声明必须使用object关键字。,2. string类 一个字符串是被双引号包含的一系列字符。 string类是专门用于对字符串进行操作的。 如: string str1=中国,; string str2=你好!; string str3=str1+str
7、2; /这相当于str3=中国,你好! char c=str30; /取出str3的第一个字符,即“中”字。,C#支持两种形式的字符串常数。(1)常规字符串常数 如: “this is a test” “C#程序设计教程” 例: using System; class StrDemo static void Main( ) Console.WriteLine(First0linenSecond0line); Console.WriteLine(你好a); Console.WriteLine(“1t2t3); Console.WriteLine(“*t*t*”); ,例:using System
8、;class StringDemo public static void Main( ) string str1=“A string”; string str2=Another string.; Console.WriteLine(“0n1”,str1,str2); ,运行结果如下:,(2)逐字字符串常数 逐字字符串常数以开头,后跟一对双引号,在双引号中放入字符。如: “电子高专” “This is a book.” 逐字字符串常数同常规字符串常数的区别: 在逐字字符串常数的双引号中,每个字符都代表其最原始的意义,在逐字字符串常数中没有转义字符。 注意:如果要包含双引号(),就必须在一行中使用
9、两个双引号()。,string str1; /定义字符串类型string str2=hello, world; /规则字符串常数:hello, worldstring str3=hello, world; /逐字字符串常数:hello, world string str4=hello t world; /hello worldstring str5= hello t world; /hello t worldstring str6=“He said Hello to you; /Tom said Hello to youstring str7=“He said Hello to you; /T
10、om said Hello to you,例: using System; class Test static void Main( ) Console.WriteLine(This is a verbatim string literal that spans several lines. ); Console.WriteLine(Here is some tabbed output: 1 2 3 4 5 6 7 8 ); Console.WriteLine(Programmers say, I like C#); ,运行结果如下:,3.1.3 类型转换 数据类型在一定条件下是可以相互转换的
11、。 C#允许使用两种转换的方式:隐式转换和显式转换。 1. 隐式转换 隐式转换是系统默认的、不需要加以声明就可以进行的转换。 隐式数据转换的使用方法如下: int i=518; /a为整型数据 long b=i; /b为长整型数据 float f=i; /f为单精度浮点型数据,2显式转换 显式转换又叫强制类型转换,显式转换要明确指定转换类型。 显式转换格式: (类型标识符)表达式意义为:将表达式的值的类型转换为类型标识符的类型。 比如: (char)65 /把int类型的65转换成char类型注意:(1)显式转换可能会导致错误。 (2)对于将float,double, decimal转换为整数
12、,将通过舍 入得到最接近的整型值,如果这个整型值超出目标 域,则出现转换异常。 比如: (int)6.28m / 转换的结果为6 (int) 3e25f /将产生溢出错误,3.1.4 装箱和拆箱 1装箱转换 装箱转换是指将一个值类型的数据隐式地转换成一个对象类型(object)的数据。 例如:下面的两条语句就执行了装箱转换: int i=518; object obj=i;,例:在程序中执行装箱转换。 using System; class BoxingDemo static void Main( ) Console.WriteLine(执行装箱转换:); int k=200; object
13、obj=k; k=300; Console.WriteLine(obj=0,obj); Console.WriteLine(k=0, k); ,2拆箱转换 和装箱相反,拆箱转换是指将一个对象类型的数据显式地转换成一个值类型数据。 例如: object obj=228; int k=(int)obj;,例:在程序中使用拆箱转换。 using System class UnboxingDemo static void Main( ) int k=228; object obj=k; /装箱转换 int j=(int ) obj; /拆箱转换 Console.WriteLine(k=0tobj=1t
14、j=2, k, obj, j); ,该程序执行后,输出结果如下: k=228 obj=228 j=228,练习:1( )是decimal类型数据 A123L B1234 C1234F D1234M2已知大写字母A的ASCII码是65,小写字母a的ASCII码 是97,则十六进制字符常量u0042表示( ) A字符a B字符A C字符b D字符B,3.2.1 常量 在C#中,常量在程序的运行过程中其值是不能改变的,例如,数字100就是一个常量,这样的常量一般被称作常数。 声明常量的格式: const 类型标识符 常量名 = 表达式; 例: const double PI=3.14159265;
15、double r=5.2; double s=PI*r*r; Console.Write(“面积=0”,s);,3.2 常量与变量,常量特点:l 在程序中,常量只能被赋予初始值。l 定义常量时,表达式中的运算符对象只允许出现常量和常数,不能有变量存在。 例如: int b=18; const int a=26; const int k=b+10; /错误,表达式中不允许出现变量 const int d=a+23; /正确,因为a是常量 a=56; /错误,不能修改常量的值,3.2.2 变量 变量是程序运行过程中用于存放数据的存储单元。 变量的值在程序的运行过程中可以改变。 1变量的定义 在定义
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C#程序设计教程第2版 第3章 数据类型、运算符与表达式ppt课件 C# 程序设计 教程 数据类型 运算 表达式 ppt 课件

链接地址:https://www.31ppt.com/p-1375487.html