您好,欢迎访问三七文档
控制台输入输出输出:①System.Console.WriteLine(HelloWorld!);②usingSystem;Console.WriteLine(HelloWorld!);输入:①System.Console.ReadLine();//读取一行字符②System.Console.Read();//读取一个字符1.控制台输入System.Console类的Read()和ReadLine()方法可用来实现控制台输入,本节我们将详细介绍如何使用这两种方法获取输入。5.1.1Console.Read()方法Read()方法每次从输入流(控制台)中读取一个字符,直到收到Enter键才返回。将接收的字符以int型(32位整数)值返回给变量;如果输入流中没有数据,则返回-1。Read()方法是一个静态方法,我们可以直接通过类名Console调用它,调用的格式为Console.Read。Read()方法的原型为:publicstaticintRead()。如果我们输入了多个字符,然后按Enter键(此时输入流中将包含用户输入的字符,加上Enter键和换行符‘\r\n’),则Read()方法只返回用户输入的第一个字符。但我们可通过对程序的循环控制,多次调用Read()方法来获取所有输入的字符。Read()方法返回给变量的数据的类型是32位整数,如果需要得到输入的字符,则必须通过数据类型显式转换才可以得到相应的字符。输入输出示例-1usingSystem;classConsoleIO{staticvoidMain(string[]args){Console.Write(“请输入:”);//Write()输出结果无结束符//也就是无换行inta=Console.Read();Console.WriteLine(“通过Read()方法得到a=”+a);//WriteLine()输出//结果有结束符,有换行.Console.WriteLine(通过Read()方法得到a=+(char)a);}}5.1.2Console.ReadLine()方法ReadLine()方法用于从控制台中一次读取一行字符串,直到遇到Enter键才返回读取的字符串。但此字符串中不包含Enter键和换行符(‘\r\n’)。如果没有收到任何输入,或接收了无效的输入,那么ReadLine()方法将返回null。ReadLine()方法也是一个静态方法,可以直接通过类名Console来调用它,调用的格式为Console.ReadLine。ReadLine()方法的原型为:publicstaticstringReadLine()输入输出示例-2//控制台输入输出函数的例子usingSystem;classConsoleIO2{staticvoidMain(string[]args){Console.Write(请输入:);strings=Console.ReadLine();Console.WriteLine(你输入的内容为:+s);}}5.2.2格式化说明符.NET框架体系规定可以使用两种格式进行数据的格式化:一种是由系统定义的标准格式,另一种是用户自定义格式。这两种格式主要包含了各种用于格式化数据的格式控制字符,使用这些控制字符组成所需的数据格式,然后由5.2.1节中所述3种格式化方式即可实现数据的格式化了。1.标准格式说明符标准格式说明符定义了人们常用的8种数据表示形式,如表5.1所示。5.2.2格式化说明符格式说明符描述输出样式输出范例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)将数字转换为字符串后,再转换为数字时,精度不变字符串格式输出//publicstaticvoidMain(){Console.WriteLine(在宽度为的空间里靠左对齐:{0,-10},99);Console.WriteLine(在宽度为的空间里靠右对齐:{0,10},99);Console.WriteLine(在宽度为的空间里靠左对齐:{0,-10},LLL);Console.WriteLine(在宽度为的空间里靠右对齐:{0,10},RRR);Console.WriteLine(货币-{0:C}{1:C4},88.8,-888.8);Console.WriteLine(10进制整数-{0:D5},88);Console.WriteLine(科学计数-{0:E},888.8);Console.WriteLine(固定小数点-{0:F3},888.8888);Console.WriteLine(浮点数-{0:G},888.8888);Console.WriteLine(数字格式-{0:N},8888888.8);Console.WriteLine(16进制格式-{0:X4},88);Console.ReadLine();}字符串数值类型转换①Parse(string),通过目标类型的成员方法:Parse(string)进行转换。②System.Convert,System.Convert类为类型的转换提供了一整套完整的方案。示例-1(Parse方法)//由控制台获得数值usingSystem;classStringNumberParse{staticvoidMain(string[]args){Console.Write(请输入数值一:);stringx=Console.ReadLine();intintValue1=int.Parse(x);Console.Write(请输入数值二:);stringy=Console.ReadLine();shortintValue2=short.Parse(y);intminusValue=intValue1-intValue2;Console.WriteLine({0}-{1}={2},intValue1,intValue2,minusValue);}}输入两个数值,输出减法结果。Convert类在实际应用中,使用Read()和ReadLine()方法读取数据的关键,不仅仅是要取得信息,而是想将获得的信息转换为想要的格式。如对字符串中的文本进行过滤,得到一个不同的字符串,或将其转换为一种不同的数据类型。System命名空间中有一个用于将某个基本数据类型转换为另一个基本数据类型的Convert类。Convert类包含了大量的可将数据转换为不同的数据类型的静态方法,由于是静态方法,所以可直接使用以下语句格式调用:Convert.方法名(原数据变量);其中:“方法”名是要使用的转换方法。表5.7列出了Convert类转换数据类型的一些方法。“原数据变量”是想要转换为新类型的数据变量。Convert.方法名(原数据变量);方法名描述ToBoolean将指定的值转换为等效的布尔值ToByte将指定的值转换为8位无符号整数ToChar将指定的值转换为Unicode字符ToDateTime将指定的值转换为DateTimeToDecimal将指定的值转换为DecimalToDouble将指定的值转换为双精度数ToInt16将指定的值转换为16位符号整数ToInt32将指定的值转换为32位符号整数ToInt64将指定的值转换为64位符号整数ToSbyte将指定的值转换为8位符号整数ToSingle将指定的值转换为单精度浮点数ToString将指定的值转换为字符串示例-2(Convert方法)//由控制台获得数值usingSystem;classStringNumberParse2{staticvoidMain(string[]args){Console.Write(请输入数值一:);stringx=Console.ReadLine();intintValue1=Convert.ToInt32(x);Console.Write(请输入数值二:);stringy=Console.ReadLine();shortintValue2=Convert.ToInt16(y);intminusValue=intValue1-intValue2;Console.WriteLine({0}-{1}={2},intValue1,intValue2,minusValue);}}输入两个数值,输出减法结果。Format()的语法小结stringmyString=string.Format(格式字符串,参数列表);stringmyString=string.Format({0}乘以{1}等于{2},2,3,2*3);格式字符串代表参数列表2乘以3等于6包括占位符{x}5.2.2格式化说明符整数数据格式字符“D或d”用来组成将数据表示为十进制整数数据的格式化字符串。字符“D或d”后面的数字规定了要表示的数据位数,如果这个数字小于整数数据的位数,则显示所有的整数位;如果这个数字大于整数数据的位数,则在整数数据的前面用数字“0”补足所有的位数。例如:inta=123456;stringstr1=String.Format({0:d},a);//得到的字串是123456stringstr2=String.Format({0:d6},a);//得到的字串是123456stringstr3=String.Format({0:d7},a);//得到的字串是0123456stringstr4=a.ToString(d);//得到的字串是123456stringstr5=a.ToString(d7);//得到的字串是0123456浮点数据格式字符“F或f”用来描述带有小数点的数据的显示形式。字符“F或f”后面的数字规定了小数点后的数据位数。如果没有指定数字,则数据默认保留两位小数,如果指定的数字大于数据本身小数部分的位数,则在小数部分数字的最后补“0”。科学计数法格式字符“E或e”用来将数据转换为科学计数法形式。在字符“E或e”后面的数字用来规定科学计数法表示数据的小数点后数字的个数。如字符“E或e”后面没有数字,则显示7位有效数字。例如:inta=123456;doubled=1234.5678;stringstr1=String.Format({0:e},a);//得到的字串1.234560e+005stringstr2=String.Format({0:e},d);//得到的字串1.234568e+003stringstr3=String.Format({0:e4},a);//得到的字串是1.2346e+005stringstr4=String.Format({0e4},d);//得到的字串是1.2346e+003stringstr5=a.ToString(E);//得到的字串是1.234560E+005stringstr6=d.ToString(E4);//得到的字串是1.2346E+0035.2.2格式化说明符自然数据格式字符“N或n”用来表示自然数据格式。这种数据格式将数据格式化成带逗号和小数点,即表示为“dd,ddd,ddd.dd”的形式。这种数字分组的表示形式多用于一些正规的场合,便于直观了解数据的大小量级。字符“N或n”后面的数字规定了数据格式中小数点后面的数字个数。inta=123456;doubled=1234.5678;stringstr1=String.For
本文标题:c#的输入和输出
链接地址:https://www.777doc.com/doc-4694456 .html