![C# 从入门到项目实践(超值版)](https://wfqqreader-1252317822.image.myqcloud.com/cover/707/27111707/b_27111707.jpg)
1.5 控制台应用程序的输入与输出
![](https://epubservercos.yuewen.com/938BD7/15477656705638906/epubprivate/OEBPS/Images/Figure-P29_4500.jpg?sign=1738980714-GSKRArdR8FgQN03Mm3Ubh9Mq2YZiWfyp-0-7c8eb1ee938efa248305dc3e0da7d643)
因为C#的输入和输出函数都包含在System这个类里面,所以在使用输入和输出函数之前必须声明“using System;”。
1. 控制台输出
Console.Write()和Console.WriteLine()都是System.Console提供的方法,两者主要用来将输出流由指定的输出装置(默认为屏幕)显示出来。
两者间的差异在于Console.WriteLine()方法是将要输出的字符串与换行控制字符一起输出,当次语句执行完毕时,光标会移到目前输出字符串的下一行;至于Console.Write()方法,光标会停在输出字符串的最后一个字符后,不会移动到下一行。
(1)Console.WriteLine()的括号里有无参数均可,而Console.Write()的括号里必须至少有一个参数。
例如:
![](https://epubservercos.yuewen.com/938BD7/15477656705638906/epubprivate/OEBPS/Images/Figure-T29_66051.jpg?sign=1738980714-GpVvyUDBpl2SZeuMWyBxRaON0GLvCoaE-0-764357ff8047078dbf76336addb2bd69)
(2)使用索引输出,索引号必须从0开始不间断地顺延。
例如:
![](https://epubservercos.yuewen.com/938BD7/15477656705638906/epubprivate/OEBPS/Images/Figure-T29_66052.jpg?sign=1738980714-mobvbpCfYsFyDzb26EwSYwEc8kipCyiC-0-d1b1fb8dd9b5b04598af79c0d3b35f6a)
其中,索引号{0}表示第一项,{1}表示第二项,以此类推。
(3)只能输出object的数组,其他的数组不可以。
例如:
![](https://epubservercos.yuewen.com/938BD7/15477656705638906/epubprivate/OEBPS/Images/Figure-T30_66054.jpg?sign=1738980714-zs63iWRB6T1uBrocxtWpZJtcHpU4N8Ih-0-f761d6a49aa5430955884dad47d2a1b0)
(4)输出方法可以指定数组元素的位置。
例如:
![](https://epubservercos.yuewen.com/938BD7/15477656705638906/epubprivate/OEBPS/Images/Figure-T30_66055.jpg?sign=1738980714-wn2P7ucYR1dWmNCwTuYYTGkjshcCgWSa-0-91b1ec47cbca7ccd4d6e8ab319360ddb)
2. 控制台输入
在C#控制台程序中提供了两种方法让用户输入所需数据,它们是由Console类提供的方法。
![](https://epubservercos.yuewen.com/938BD7/15477656705638906/epubprivate/OEBPS/Images/Figure-T30_66056.jpg?sign=1738980714-ypoMEJuiXT3Zp8S5JNvAau5xtA10LCgd-0-b1d28562121589bdf5d7d49730ad47f7)
要读取单个字符,则使用ReadKey()方法。该方法在读取到一个字符后,则等待用户按下任意键,然后将它返回到string类型的对象中。
要读取单个字符,则使用Read()方法,它等待用户按一个键,然后返回结果。字符作为int类型的值返回,所以要显示字符就必须转换为char类型。
要读取一串字符,则使用ReadLine()方法。该方法一直读取字符,直到用户按下回车键,然后将它们返回到string类型的对象中。
【例1-1】编写程序,实现代码输入输出功能,先在控制台上输出提示信息,提示用户输入;并用两种不同方式显示输出的信息。按任意键结束程序。
(1)在Visual Studio 2017中,新建名称为“Project”的文件。
(2)在代码编辑区域输入以下代码。
![](https://epubservercos.yuewen.com/938BD7/15477656705638906/epubprivate/OEBPS/Images/Figure-T30_66057.jpg?sign=1738980714-pvLXhxHiyrrB2XWnw4nyEaR3zUAxPzBz-0-ee2f4a03190d28471d70971b35d94206)
【程序分析】本例演示了控制台应用程序的输入与输出操作。在代码中,首先用Console.ReadLine()获取到字符串“书山有路勤为径”,再用Console.Read()获取到字符串“学海无涯苦作舟”的是ASCII码。
在Visual Studio 2017中的运行结果如图1-30所示。
![](https://epubservercos.yuewen.com/938BD7/15477656705638906/epubprivate/OEBPS/Images/Figure-P30_4684.jpg?sign=1738980714-iAo9ssB0V3laQjL9sgUM9cos3RXCrhPQ-0-2f6ce59ac28adb9dba9d5dc981f4916d)
图1-30 控制台的输入与输出