[自然科学]dotNET程序设计_第02章.pptVIP

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
[自然科学]dotNET程序设计_第02章

* 2.3.5 特殊运算符 C#中只提供一种三元运算符?:,这个运算符根据?左边的表达式的值来确定返回结果.   bool b=ab?true:false;   int b=ab?10:20;   string b=ab?真:假; 1.C#的数据类型分成哪两大类? 2.C#中的值类型包括三种,它们是? 3.C#的引用类型包括有——,其中object是——的根类。 4.C#两种数据类型的区别是? 5.实数类型包括哪三种?其中decimal数据类型占多少为内存? 复习 复习 类 型 FCL类型 描 述 默 认 值 sbyte System.SByte 有符号8位整数 0 byte System.Byte 无符号8位整数 0 short System.Int16 有符号16位整数 0 ushort System.UInt16 无符号16位整数 0 int System.Int32 有符号32位整数 0 uint System.UInt32 无符号32位整数 0 long System.Int64 有符号64位整数 0L ulong System.UInt64 无符号64位整数 0 char System.Char 16位Unicode字符 ‘\0’ float System.Single 32位单精度浮点数 0.0F double System.Double 64位双精度浮点数 0.0D bool System.Boolean true或false布尔值 false decimal System.Decimal 128位高精度浮点数 0.0M 在编写代码的过程中,经常需要把数据从一种类型转换为另一种类型。C#有两种转换方式: 隐式转换方式 显示转换方式 2.5 类型转换 1.隐式转换方式 只要保证值不发生变化,转换就可以自动进行。例如, int i=3; float f=i; 由于float型变量包含的数据精度要高于int型,所以数据没有丢失的危险,编译器可以自动进行转换,不需要显示地提出要求。 2.5 类型转换-隐式转换 2.5 类型转换-隐式转换举例 算术运算中的隐含类型转换: 3+5/2 //即3+2,结果为5 3+5/2.0 //即3+2.5,结果为5.5 3.0+5/2 //即3.0+2,结果为5.0 ‘a’+2.0*3 //即97+6.0,结果为103.0 通过使用C#的类型提升规则来完成隐式转换 赋值运算中的隐含转换 float f,g; int i, j; f=5/2; //f的值为2.000000 i=3.5; //i的值为3 g=f+i; //g的值为5.000000 j=g/2; //j的值为2 2.5 类型转换-隐式转换举例 在某些情况下,编译器不能自动地进行类型转换,例如: float f=3; int i=f; 由于float类型的数据精度要高于int类型数据,第二行的赋值语句潜在地丢失了数据,因而导致代码无法通过编译,提示错误“无法将类型“float”隐式转换为“int”。存在一个显式转换(是否缺少强制转换?)” 2.5 类型转换 2.显式转换方式 1)采用显示转换的方式来进行。例如: float f=3; int i=(int)f; 通过把目标类型名称放在要转换的值之前,并用圆括号括起来。 存在问题: 由于存在潜在的丢失数据的可能,因此这种类型转换是一种危险操作。 2.5 类型转换-显式转换(1) 问题1: float f = 30000000000000f; int i = (int)f; Console.WriteLine(i); 这个例子不会报告错误,但是也得不到期望的结果,代码运行的结果为-2147483648 问题2: bool b=true; int i=(int)b; 上面的代码无法通过编译,提示错误为’无法将类型“bool”转换为“int”’。 2.5 类型转换-显式转换 2)对于上面的类型转换,.NET类库提供了一些方法。例如,上面的代码可以修改为: bool b=true; int i=Convert.ToInt32(b); 可以得到i的值为1 使用Convert.ToInt32()方法,可以把多种数据类型的值转显示地转换成整型值,如string、bool、char、object,以及一些数值类型 2.5 类型转换-显式转换(2) 课堂练习 求一元二次方程 3.2X2+2.1X-8.4=0的两

文档评论(0)

qiwqpu54 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档