c#的輸入和輸出_第1頁(yè)
已閱讀1頁(yè),還剩18頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、控制臺(tái)輸入輸出,輸出:System.Console.WriteLine("Hello World!"); using System;Console.WriteLine("Hello World!"); 輸入:System.Console.ReadLine(); //讀取一行字符System.Console.Read(); //讀取一個(gè)字符,1. 控制臺(tái)輸入,System.Conso

2、le類的Read()和ReadLine()方法可用來(lái)實(shí)現(xiàn)控制臺(tái)輸入,本節(jié)我們將詳細(xì)介紹如何使用這兩種方法獲取輸入。,5.1.1 Console.Read()方法,Read()方法每次從輸入流(控制臺(tái))中讀取一個(gè)字符,直到收到Enter鍵才返回。將接收的字符以int型(32位整數(shù))值返回給變量;如果輸入流中沒有數(shù)據(jù),則返回-1。Read()方法是一個(gè)靜態(tài)方法,我們可以直接通過(guò)類名Console調(diào)用它,調(diào)用的格式為Console.Rea

3、d。Read()方法的原型為:public static int Read()。如果我們輸入了多個(gè)字符,然后按Enter鍵(此時(shí)輸入流中將包含用戶輸入的字符,加上Enter鍵和換行符‘\r\n’),則Read()方法只返回用戶輸入的第一個(gè)字符。但我們可通過(guò)對(duì)程序的循環(huán)控制,多次調(diào)用Read()方法來(lái)獲取所有輸入的字符。Read()方法返回給變量的數(shù)據(jù)的類型是32位整數(shù),如果需要得到輸入的字符,則必須通過(guò)數(shù)據(jù)類型顯式轉(zhuǎn)換才可以得到相應(yīng)

4、的字符。,輸入輸出示例-1,using System;class ConsoleIO{ static void Main(string[] args) { Console.Write(“請(qǐng)輸入:”); //Write()輸出結(jié)果無(wú)結(jié)束符 //也就是無(wú)換行 int a = Console.Read(); Console.WriteL

5、ine(“通過(guò)Read()方法得到a=” + a); //WriteLine()輸出//結(jié)果有結(jié)束符,有換行. Console.WriteLine("通過(guò)Read()方法得到a=" + (char)a); }},5.1.2 Console.ReadLine()方法,ReadLine()方法用于從控制臺(tái)中一次讀取一行字符串,直到遇到Enter鍵才返回讀取的字符串。但此字符串中不

6、包含Enter鍵和換行符(‘\r\n’)。如果沒有收到任何輸入,或接收了無(wú)效的輸入,那么ReadLine()方法將返回null。ReadLine()方法也是一個(gè)靜態(tài)方法,可以直接通過(guò)類名Console來(lái)調(diào)用它,調(diào)用的格式為Console.ReadLine。ReadLine()方法的原型為:public static string ReadLine(),輸入輸出示例-2,//控制臺(tái)輸入輸出函數(shù)的例子using System;

7、class ConsoleIO2{ static void Main(string[] args) { Console.Write("請(qǐng)輸入:"); string s = Console.ReadLine(); Console.WriteLine("你輸入的內(nèi)容為: " + s); }},5.2.2 格式化說(shuō)明符,.NE

8、T框架體系規(guī)定可以使用兩種格式進(jìn)行數(shù)據(jù)的格式化:一種是由系統(tǒng)定義的標(biāo)準(zhǔn)格式,另一種是用戶自定義格式。這兩種格式主要包含了各種用于格式化數(shù)據(jù)的格式控制字符,使用這些控制字符組成所需的數(shù)據(jù)格式,然后由5.2.1節(jié)中所述3種格式化方式即可實(shí)現(xiàn)數(shù)據(jù)的格式化了。1. 標(biāo)準(zhǔn)格式說(shuō)明符標(biāo)準(zhǔn)格式說(shuō)明符定義了人們常用的8種數(shù)據(jù)表示形式,如表5.1所示。,5.2.2 格式化說(shuō)明符,字符串格式輸出,// public static void Ma

9、in() { Console.WriteLine("在寬度為的空間里靠左對(duì)齊:{0,-10}", 99); Console.WriteLine("在寬度為的空間里靠右對(duì)齊:{0,10}", 99); Console.WriteLine("在寬度為的空間里靠左對(duì)齊:{0,-10}", "LLL");

10、 Console.WriteLine("在寬度為的空間里靠右對(duì)齊:{0,10}", "RRR"); Console.WriteLine("貨幣- {0:C} {1:C4}", 88.8, -888.8); Console.WriteLine("10進(jìn)制整數(shù)- {0:D5}", 88); Console

11、.WriteLine("科學(xué)計(jì)數(shù)- {0:E}", 888.8); Console.WriteLine("固定小數(shù)點(diǎn)- {0:F3}", 888.8888); Console.WriteLine("浮點(diǎn)數(shù)- {0:G}", 888.8888); Console.WriteLine("數(shù)字格式- {0:N}",

12、8888888.8); Console.WriteLine("16進(jìn)制格式- {0:X4}", 88); Console.ReadLine(); },字符串?dāng)?shù)值類型轉(zhuǎn)換,Parse(string),通過(guò)目標(biāo)類型的成員方法:Parse(string)進(jìn)行轉(zhuǎn)換。System.Convert,System.Convert類為類型的轉(zhuǎn)換提供了一整套完整的方案。,示例-1(Parse方

13、法),// 由控制臺(tái)獲得數(shù)值using System;class StringNumberParse{ static void Main(string[] args) { Console.Write("請(qǐng)輸入數(shù)值一:"); string x = Console.ReadLine(); int intValue1 = int.Parse(x);

14、 Console.Write("請(qǐng)輸入數(shù)值二:"); string y = Console.ReadLine(); short intValue2 = short.Parse(y); int minusValue = intValue1 - intValue2; Console.WriteLine("{0} - {1} = {2}"

15、;,intValue1,intValue2,minusValue); }},輸入兩個(gè)數(shù)值,輸出減法結(jié)果。,Convert類,在實(shí)際應(yīng)用中,使用Read()和ReadLine()方法讀取數(shù)據(jù)的關(guān)鍵,不僅僅是要取得信息,而是想將獲得的信息轉(zhuǎn)換為想要的格式。如對(duì)字符串中的文本進(jìn)行過(guò)濾,得到一個(gè)不同的字符串,或?qū)⑵滢D(zhuǎn)換為一種不同的數(shù)據(jù)類型。System命名空間中有一個(gè)用于將某個(gè)基本數(shù)據(jù)類型轉(zhuǎn)換為另一個(gè)基本數(shù)據(jù)類型的Convert類。

16、Convert類包含了大量的可將數(shù)據(jù)轉(zhuǎn)換為不同的數(shù)據(jù)類型的靜態(tài)方法,由于是靜態(tài)方法,所以可直接使用以下語(yǔ)句格式調(diào)用:Convert.方法名(原數(shù)據(jù)變量);其中:“方法”名是要使用的轉(zhuǎn)換方法。表5.7列出了Convert類轉(zhuǎn)換數(shù)據(jù)類型的一些方法?!霸瓟?shù)據(jù)變量”是想要轉(zhuǎn)換為新類型的數(shù)據(jù)變量。,Convert.方法名(原數(shù)據(jù)變量);,示例-2(Convert方法),// 由控制臺(tái)獲得數(shù)值using System;class Str

17、ingNumberParse2{ static void Main(string[] args) { Console.Write("請(qǐng)輸入數(shù)值一:"); string x = Console.ReadLine(); int intValue1 = Convert.ToInt32 (x); Console.Write("請(qǐng)輸入數(shù)

18、值二:"); string y = Console.ReadLine(); short intValue2 = Convert.ToInt16(y); int minusValue = intValue1 - intValue2; Console.WriteLine("{0} - {1} = {2}",intValue1,intValue2,minu

19、sValue); }},輸入兩個(gè)數(shù)值,輸出減法結(jié)果。,Format() 的語(yǔ)法小結(jié),string myString = string.Format("格式字符串", 參數(shù)列表);,string myString = string.Format ("{0} 乘以 {1} 等于 {2} ", 2, 3, 2*3);,,格式字符串,代表,,參數(shù)列表,2乘以3等于6,包括占位符{x},5.2.2

20、 格式化說(shuō)明符,整數(shù)數(shù)據(jù)格式字符“D或d”用來(lái)組成將數(shù)據(jù)表示為十進(jìn)制整數(shù)數(shù)據(jù)的格式化字符串。字符“D或d”后面的數(shù)字規(guī)定了要表示的數(shù)據(jù)位數(shù),如果這個(gè)數(shù)字小于整數(shù)數(shù)據(jù)的位數(shù),則顯示所有的整數(shù)位;如果這個(gè)數(shù)字大于整數(shù)數(shù)據(jù)的位數(shù),則在整數(shù)數(shù)據(jù)的前面用數(shù)字“0”補(bǔ)足所有的位數(shù)。例如:int a=123456;string str1=String.Format("{0:d}", a); //得到的字串是&quo

21、t;123456"string str2=String.Format("{0:d6 }", a); //得到的字串是"123456"string str3= String.Format("{0:d7}", a); //得到的字串是"0123456"string str4= a.ToString("d"); /

22、/得到的字串是"123456"string str5= a.ToString("d7"); //得到的字串是"0123456"浮點(diǎn)數(shù)據(jù)格式字符“F或f”用來(lái)描述帶有小數(shù)點(diǎn)的數(shù)據(jù)的顯示形式。字符“F或f”后面的數(shù)字規(guī)定了小數(shù)點(diǎn)后的數(shù)據(jù)位數(shù)。如果沒有指定數(shù)字,則數(shù)據(jù)默認(rèn)保留兩位小數(shù),如果指定的數(shù)字大于數(shù)據(jù)本身小數(shù)部分的位數(shù),則在小數(shù)部分?jǐn)?shù)字的最后補(bǔ)“0”。,科學(xué)計(jì)數(shù)法格

23、式字符“E或e”用來(lái)將數(shù)據(jù)轉(zhuǎn)換為科學(xué)計(jì)數(shù)法形式。在字符“E或e”后面的數(shù)字用來(lái)規(guī)定科學(xué)計(jì)數(shù)法表示數(shù)據(jù)的小數(shù)點(diǎn)后數(shù)字的個(gè)數(shù)。如字符“E或e”后面沒有數(shù)字,則顯示7位有效數(shù)字。例如:int a=123456;double d=1234.5678;string str1=String.Format("{0:e}", a); //得到的字串"1.234560e+005"string

24、str2=String.Format("{0:e}", d); //得到的字串"1.234568e+003"string str3=String.Format("{0:e4}",a); //得到的字串是"1.2346e+005"string str4=String.Format("{0e4}", d); //得到的字串是&q

25、uot;1.2346e+003"string str5=a.ToString("E"); //得到的字串是"1.234560E+005"string str6=d.ToString("E4"); //得到的字串是" 1.2346E+003",5.2.2 格式化說(shuō)明符,自然數(shù)據(jù)格式字符“N或n”用來(lái)表示自然數(shù)據(jù)格式。這種數(shù)據(jù)格式將

26、數(shù)據(jù)格式化成帶逗號(hào)和小數(shù)點(diǎn),即表示為“dd,ddd,ddd.dd”的形式。這種數(shù)字分組的表示形式多用于一些正規(guī)的場(chǎng)合,便于直觀了解數(shù)據(jù)的大小量級(jí)。字符“N或n”后面的數(shù)字規(guī)定了數(shù)據(jù)格式中小數(shù)點(diǎn)后面的數(shù)字個(gè)數(shù)。int a=123456;double d=1234.5678;string str1=String.Format("{0:n}",a); //得到的字串是"123,456.00"

27、;string str2=String.Format("{0:n}", d); //得到的字串是"1,234.57"string str3=a.ToString("n4"); //得到的字串是"123,456.0000"string str4=d.ToString("n4"); //得到的字串是"1,234

28、.5678",十六進(jìn)制數(shù)據(jù)格式字符“X或 x”用于將數(shù)據(jù)表示為十六進(jìn)制格式。字符“X或 x”后面的數(shù)字表示了格式化數(shù)據(jù)的數(shù)字個(gè)數(shù),其規(guī)定與整數(shù)數(shù)據(jù)格式類似。例如:int a=123456;string str1=String.Format("{0: x}",a); //得到的字串是"1e240"string str2=a.ToString ("x5"

29、); //得到的字串是"1e240"string str3=a.ToString ("x6 "); //得到的字串是"01e240"string str4=a.ToString ("x7"); //得到的字串是"001e240"保持精度(來(lái)回轉(zhuǎn)換)將數(shù)字從一種格式轉(zhuǎn)換為另一種格式時(shí),可能會(huì)降低精度。字符“R或r”用于將字

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫(kù)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論