C#编程及应用程序开发(第2版)电子课件第五章.ppt
《C#编程及应用程序开发(第2版)电子课件第五章.ppt》由会员分享,可在线阅读,更多相关《C#编程及应用程序开发(第2版)电子课件第五章.ppt(52页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、http:/ 述输出样式输出范例C或c货币金额格式xx,xxx.xx(如果在中文操作系统中使用,货币符号为¥)12,345.67D或d整数数据格式-xxxxxxx-1234567E或e科学计数法格式-x.xxxxE+xxx-x.xxxxE-xxx-1.234567E+123-1.234567E-123F或f浮点数据格式-xxxxxx.xx-1234567.89G或g通用数据格式随具体情况而定,将使用最紧凑的格式N或n自然数据格式-xx,xxx.xx-12,345.67X或x十六进制数据格式返回数据的十六进制数据表示方式12d654R或r来回转换(roundtrip)将数字转换为字符串后,再转换
2、为数字时,精度不变表5.1 标准格式说明符5.2.2格式化说明符格式化说明符n标准格式的一般形式是:标准格式的一般形式是:N,M:Ynl其中:其中:uN表示输出变量的序号。表示输出变量的序号。N为为0对应输出的第对应输出的第1个变量,个变量,N为为1则对应输出的第则对应输出的第2个变量,依次类推。个变量,依次类推。u,M是可选项。是可选项。M表示输出的变量在控制台中所占据的字符个数,如果该数字为负数,则输出按照左对齐方式;如果该表示输出的变量在控制台中所占据的字符个数,如果该数字为负数,则输出按照左对齐方式;如果该数字为正数,则输出按照右对齐的方式。数字为正数,则输出按照右对齐的方式。u:Yn
3、是可选项。是可选项。Y是格式化说明符,它指的是数据的输出格式说明符是格式化说明符,它指的是数据的输出格式说明符(如表如表5.1所示所示),这些字符是由系统定义的,它们,这些字符是由系统定义的,它们基本涵盖了基本涵盖了.NET框架定义的所有数值类型数据的表现形式。框架定义的所有数值类型数据的表现形式。un为一个正整数,表示了数据的精度范围为一个正整数,表示了数据的精度范围(有效数字范围有效数字范围),它用于控制当前数据在格式化后表现出来的有效数字个数。,它用于控制当前数据在格式化后表现出来的有效数字个数。l货币金额格式货币金额格式字符字符“C或或c”用来组成将数据转换为货币金额格式的字串,在字符
4、用来组成将数据转换为货币金额格式的字串,在字符“C或或c”后面的数字定义了货币金额数据小数点后保留后面的数字定义了货币金额数据小数点后保留的数字个数,如果没有定义任何数字,则默认小数点后保留的数字个数,如果没有定义任何数字,则默认小数点后保留2位数字。位数字。n例如:例如:ninta=123456;ndoubled=1234.5678;nstringstr1=String.Format(0:c,a);/得到的字串是得到的字串是¥123,456.00nstringstr2=String.Format(0:c,d);/得到的字串是得到的字串是¥1,234.57nstringstr3=String.
5、Format(0:c4,a);/得到的字串是得到的字串是n¥123,456.0000nstringstr4=String.Format(0:c4,d);/得到的字串是得到的字串是¥1,234.5678nstringstr5=d.ToString(c);/得到的字串是得到的字串是¥1,234.57nstringstr6=d.ToString(c4);/得到的字串是得到的字串是¥1,234.56785.2.2格式化说明符格式化说明符n提示:提示:所显示的货币金额符号同用户使用的操作系统有关,如果本例在所显示的货币金额符号同用户使用的操作系统有关,如果本例在Windows2000Profession
6、al英文版中运行,则结果中显示的英文版中运行,则结果中显示的货币符号是;如果我们使用的是中文版操作系统,则将会显货币符号是;如果我们使用的是中文版操作系统,则将会显示的货币符号可能就是¥。示的货币符号可能就是¥。5.2.2格式化说明符格式化说明符l整数数据格式整数数据格式字符字符“D或或d”用来组成将数据表示为十进制整数数据的格式化字符串。字符用来组成将数据表示为十进制整数数据的格式化字符串。字符“D或或d”后面的数字规定了要表示的数据位数,如果这个数字小于整后面的数字规定了要表示的数据位数,如果这个数字小于整数数据的位数,则显示所有的整数位;如果这个数字大于整数数据的位数,则在整数数据的前面
7、用数字数数据的位数,则显示所有的整数位;如果这个数字大于整数数据的位数,则在整数数据的前面用数字“0”补足所有的位数。补足所有的位数。n例如:例如:ninta=123456;nstringstr1=String.Format(0:d,a);/得到的字串是得到的字串是123456nstringstr2=String.Format(0:d6,a);/得到的字串是得到的字串是123456nstringstr3=String.Format(0:d7,a);/得到的字串是得到的字串是0123456nstringstr4=a.ToString(d);/得到的字串是得到的字串是123456nstringst
8、r5=a.ToString(d7);/得到的字串是得到的字串是0123456l科学计数法格式科学计数法格式字符字符“E或或e”用来将数据转换为科学计数法形式。在字符用来将数据转换为科学计数法形式。在字符“E或或e”后面的数字用来规定科学计数法表示数据的小数点后数字的个数。如字符后面的数字用来规定科学计数法表示数据的小数点后数字的个数。如字符“E或或e”后面没有数字,则显示后面没有数字,则显示7位有效数字。位有效数字。n例如:例如:ninta=123456;ndoubled=1234.5678;nstringstr1=String.Format(0:e,a);/得到的字串是得到的字串是1.234
9、560e+005nstringstr2=String.Format(0:e,d);/得到的字串是得到的字串是1.234568e+003nstringstr3=String.Format(0:e4,a);/得到的字串是得到的字串是1.2346e+005nstringstr4=String.Format(0e4,d);/得到的字串是得到的字串是1.2346e+003nstringstr5=a.ToString(E);/得到的字串是得到的字串是1.234560E+005nstringstr6=d.ToString(E4);/得到的字串是得到的字串是1.2346E+003l浮点数据格式浮点数据格式字符
10、字符“F或或f”用来描述带有小数点的数据的显示形式。字符用来描述带有小数点的数据的显示形式。字符“F或或f”后面的数字规定了小数点后的数据位数。如果没有指定数字,则数据默认保留后面的数字规定了小数点后的数据位数。如果没有指定数字,则数据默认保留两位小数,如果指定的数字大于数据本身小数部分的位数,则在小数部分数字的最后补两位小数,如果指定的数字大于数据本身小数部分的位数,则在小数部分数字的最后补“0”。5.2.2格式化说明符格式化说明符l自然数据格式自然数据格式字符字符“N或或n”用来表示自然数据格式。这种数据格式将数据格式化成带逗号和小数点,即表示为用来表示自然数据格式。这种数据格式将数据格式
11、化成带逗号和小数点,即表示为“dd,ddd,ddd.dd”的形的形式。这种数字分组的表示形式多用于一些正规的场合,便于直观了解数据的大小量级。字符式。这种数字分组的表示形式多用于一些正规的场合,便于直观了解数据的大小量级。字符“N或或n”后面的数字规定了后面的数字规定了数据格式中小数点后面的数字个数。数据格式中小数点后面的数字个数。ninta=123456;ndoubled=1234.5678;nstringstr1=String.Format(0:n,a);/得到的字串是得到的字串是123,456.00nstringstr2=String.Format(0:n,d);/得到的字串是得到的字串
12、是1,234.57nstringstr3=a.ToString(n4);/得到的字串是得到的字串是123,456.0000nstringstr4=d.ToString(n4);/得到的字串是得到的字串是1,234.5678l十六进制数据格式十六进制数据格式字符字符“X或或x”用于将数据表示为十六进制格式。字符用于将数据表示为十六进制格式。字符“X或或x”后面的数字表示了格式化数据的数字个数,其规定与整数后面的数字表示了格式化数据的数字个数,其规定与整数数据格式类似。数据格式类似。n例如:例如:ninta=123456;nstringstr1=String.Format(0:x,a);/得到的字
13、串是得到的字串是1e240nstringstr2=a.ToString(x5);/得到的字串是得到的字串是1e240nstringstr3=a.ToString(x6);/得到的字串是得到的字串是01e240nstringstr4=a.ToString(x7);/得到的字串是得到的字串是001e240l保持精度保持精度(来回转换来回转换)将数字从一种格式转换为另一种格式时,可能会降低精度。字符将数字从一种格式转换为另一种格式时,可能会降低精度。字符“R或或r”用于将字符串转换为数字是保持其精度。使用该用于将字符串转换为数字是保持其精度。使用该格式说明符后,运行时环境将尽可能保持原有数字的精度。
14、格式说明符后,运行时环境将尽可能保持原有数字的精度。5.2.2格式化说明符格式化说明符n2.自定义数字格式说明符n有时候,需要更精确地按某种意图控制数字的格式,比如格有时候,需要更精确地按某种意图控制数字的格式,比如格式化驾驶证号或社会保险号时,可能想加入短划线;而对于式化驾驶证号或社会保险号时,可能想加入短划线;而对于电话号码,则想加入括号和短划线等,这时就需要使用一些电话号码,则想加入括号和短划线等,这时就需要使用一些自定义的格式说明符来实现所需的数据格式。表自定义的格式说明符来实现所需的数据格式。表5.2所示为所示为自定义数据格式说明符。自定义数据格式说明符。5.2.2格式化说明符格式化
15、说明符格式说明符描 述0零占位符,如果可能,则填充位#数字占位符,如果可能,则填充位.在数字中显示小数点,在数字中用作千位分隔符。也可用作数字比例换算,例如,格式字符串“0,”将 100,000,000 简单表示为100。使用“,”字符指示比例换算在格式化数字中不包括千位分隔符。因此,若要将数字缩小 1,000,000 倍并插入千位分隔符,应使用格式字符串“#,#0,”%将数字显示为百分比值(如:1.00被显示为100%)E+0,E-0,e+0,e-0科学计数法形式,数字0的个数表示10的指数用几位数字表示显示特殊字符。如可以是转义字符之一xyz显示单引号内的文本“xyz”显示双引号内的文本;
16、“;”用来分隔格式字符串中的正数、负数和零各部分表5.2 自定义数据格式说明符 5.2.2格式化说明符格式化说明符n【例【例5.5】使用自定义说明符显示特殊数据格式】使用自定义说明符显示特殊数据格式(用用WriteLine()方法实现输出方法实现输出)。nusingSystem;nusingSystem.Globalization;nclassCustomFormat1nnpublicstaticvoidMain()nninta=1234;nfloatb=12.34f;n/0格式化说明符格式化说明符nConsole.WriteLine(n0格式化说明符格式化说明符:);nConsole.Wri
17、teLine(00:0000000,a);nConsole.WriteLine(00:0000000,b);n/#格式化说明符格式化说明符nConsole.WriteLine(n#格式化说明符格式化说明符:);nConsole.WriteLine(00:0#,a);nConsole.WriteLine(00:0#,b);n/,格式化说明符格式化说明符nConsole.WriteLine(n,格式化说明符格式化说明符:);nConsole.WriteLine(00:0,1000000);/,用作倍增器用作倍增器nConsole.WriteLine(00:#,#,#0,2000000);/,用作分
18、隔符用作分隔符nConsole.WriteLine(00:#,#,#0,3);n/%格式化说明符格式化说明符nConsole.WriteLine(n%格式化说明符格式化说明符:);nConsole.WriteLine(00:0%,a);/将原数乘将原数乘100%nConsole.WriteLine(00:0%,b);n/单引号单引号格式化说明符格式化说明符nConsole.WriteLine(n单引号格式化说明符单引号格式化说明符:);nConsole.WriteLine(00:mynumberis:0,a);nConsole.WriteLine(00:mynumberis:0,b);nCon
19、sole.WriteLine(00:mine:0,a);nConsole.WriteLine(00:mine:0,b);nn5.2.2格式化说明符格式化说明符n程序的执行结果:程序的执行结果:n0格式化说明符格式化说明符:n12340001234n12.340000012n#格式化说明符格式化说明符:n123401234n12.3400012n,格式化说明符格式化说明符:n10000001n20000002,000,000n33n%格式化说明符格式化说明符:n1234123400%n12.341234%n单引号格式化说明符单引号格式化说明符:n1234mynumberis:1234n12.34
20、mynumberis:12n1234mine:1234n12.34mine:125.2.2格式化说明符格式化说明符n【例【例5.6】使用】使用for循环创建一个负数,然后将其递增为循环创建一个负数,然后将其递增为0和正数。并且可以使用同一个和正数。并且可以使用同一个WriteLine来显示它们。本例将给出来显示它们。本例将给出3种不同的情况。种不同的情况。nusingSystem;nclassCustomFormat2nnpublicstaticvoidMain()nnConsole.WriteLine(n第一种情况第一种情况);nfor(intx=-100;x=100;x+=100)nnCo
21、nsole.WriteLine(0:000;-00000;0,x);nnConsole.WriteLine(n第二种情况第二种情况);nfor(intx=-100;x=100;x+=100)nnConsole.WriteLine(0:正数:正数:0;负数:负数:-0;零:零:0,x);nnConsole.WriteLine(n第三种情况第三种情况);nfor(intx=-100;x=100;x+=100)nnConsole.WriteLine(0:father:-0;mother:0;brother:0,x);nnn5.2.2格式化说明符格式化说明符n程序运行结果:程序运行结果:n第一种情况第
22、一种情况n-00100n0n100n第二种情况第二种情况n负数:负数:-100n零:零:0n正数:正数:100n第三种情况第三种情况nmother:100nbrother:0nfather:-1005.2.2格式化说明符格式化说明符n3.格式化日期和时间n获取日期和时间获取日期和时间C#和和.NET框架提供了一个用于存储日期和时间的类框架提供了一个用于存储日期和时间的类System.DateTime,我们可通过,我们可通过DateTime类获取完整的日期和时间。类获取完整的日期和时间。nDateTime类常用的类常用的3种使用格式:种使用格式:nDateTime(intyear,intmont
23、h,intday);nDateTime(intyear,intmonth,intday,inthour,intminute,intsecond);nDateTime(intyear,intmonth,intday,inthour,intminute,intsecond,intmillisecond);n我们只要按要求给出所要表示的日期和时间的整数数值就可以构造出我们只要按要求给出所要表示的日期和时间的整数数值就可以构造出DateTime类的对象。类的对象。n例如,建立一个对象表示例如,建立一个对象表示2002年年10月月1日上午日上午8点点30分分15秒,可以用以下语句实现:秒,可以用以下语句
24、实现:nDateTimemydate=newDateTime(2002,10,1,8,30,15);/生成一个生成一个DateTime类的类的n对象对象nDateTime类包含许多很有用的属性和方法,用于表示当前日期和时间等信息,类包含许多很有用的属性和方法,用于表示当前日期和时间等信息,DateTime类的属性如表类的属性如表5.3所示。所示。5.2.2格式化说明符格式化说明符属 性 名描 述New静态(static)属性,返回当前的时间Today静态(static)属性,返回当前的日期Date返回DateTime对象的日期部分DayOfYear返回DateTime对象中日期属于该年份的多少
25、天,1365(闰年为366)之间Year返回DateTime对象的年份部分Month返回DateTime对象的月份部分Day返回DateTime对象的日期值,131之间DayOfWeek返回DateTime对象的星期部分(即星期几),17之间TimeOfDay返回DateTime对象的时间部分Hour返回DateTime对象的小时部分Minute返回DateTime对象的分钟部分Second返回DateTime对象的秒部分表5.3 DateTime类的属性 5.2.2格式化说明符格式化说明符属性名描 述Millisecond返回DateTime对象的毫秒部分Ticks返回DateTime对象对
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C# 编程 应用程序 开发 电子 课件 第五
限制150内