真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

怎么在C#控制臺(tái)中一次性輸入多行-創(chuàng)新互聯(lián)

怎么在C# 控制臺(tái)中一次性輸入多行?針對(duì)這個(gè)問題,這篇文章詳細(xì)介紹了相對(duì)應(yīng)的分析和解答,希望可以幫助更多想解決這個(gè)問題的小伙伴找到更簡單易行的方法。

創(chuàng)新互聯(lián)建站專注于陽江網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗(yàn)。 熱誠為您提供陽江營銷型網(wǎng)站建設(shè),陽江網(wǎng)站制作、陽江網(wǎng)頁設(shè)計(jì)、陽江網(wǎng)站官網(wǎng)定制、重慶小程序開發(fā)服務(wù),打造陽江網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供陽江網(wǎng)站排名全網(wǎng)營銷落地服務(wù)。

1、使用StringBuilder存儲(chǔ):按下q鍵時(shí)退出

StringBuilder sb = new StringBuilder();
 
while (true)
{
 string input = Console.ReadLine();
 if (input.Equals("q") == false) //如果輸入的不是q(區(qū)分大小寫),則增加記錄
  sb.AppendLine(input);
 else
  break; //如果該行僅僅輸入q,則結(jié)束輸入
}
 
Console.WriteLine("按輸入方式輸出(不會(huì)有最后的退出符號(hào)q,而是一個(gè)空行):");
Console.WriteLine(sb.ToString());
 
Console.WriteLine("輸入數(shù)據(jù)的長度:"); //回車占據(jù)兩個(gè)字符
Console.WriteLine(sb.Length); //結(jié)果說明數(shù)據(jù)是以字符形式存入StringBuilder中,回車為2個(gè)字符
 
Console.WriteLine("逐個(gè)輸出(不會(huì)有最后的退出q符號(hào),而是一個(gè)空行):");
for (int i = 0; i < sb.Length; i++)
{
 Console.WriteLine(sb[i]); //為char類型
}
 
//依次輸出每一行和每個(gè)值
List line = new List();
int k = 0;
for (int i = 0; i < sb.Length - 1; i = i + 2) //當(dāng)i為\r時(shí),i+1是\n,下一次的循環(huán)是i+2開始
{
 string a = "";
 while (sb[i].ToString() + sb[i + 1].ToString() != "\r\n") //判斷當(dāng)前字符和下一個(gè)字符是不是回車符\r\n
 {
  a = a + sb[i++].ToString(); //每行為一個(gè)字符串
 }
 line.Insert(k++, a); //將字符串依次存入鏈表
}
Console.WriteLine("依次輸出每行");
for (int i = 0; i < line.Count; i++)
{
 Console.WriteLine(line[i]);
}
Console.WriteLine("依次輸出每個(gè)值");
string[][] str = new string[line.Count][]; //交叉數(shù)組,行固定,為上面得到的行數(shù),每一行的長度不定(每行字符間以空格或其他分割)
for (int i = 0; i < line.Count; i++)
{
 str[i] = line[i].Split(); //C#對(duì)空格的分割方式之一,如果是其他分割方式,就需要也使用上面的鏈表分割每行的方式了
}
for (int i = 0; i < line.Count; i++)
{
 for (int j = 0; j < str[i].Length; j++)
 {
  Console.WriteLine(str[i][j]);
 }
}
Console.ReadKey();

注意,輸入值后它是以char存在于StringBuilder中,回車占兩個(gè)char值。

怎么在C# 控制臺(tái)中一次性輸入多行

2、使用鏈表List存儲(chǔ):按下q時(shí)退出

List str = new List();
int len = 0;
while (true)
{
 string input = Console.ReadLine();
 if (input.Equals("q") == false) //如果輸入的不是q(區(qū)分大小寫),則增加記錄
  str.Insert(len++, input);
 else
  break;
}
   
Console.WriteLine("輸出數(shù)據(jù)長度");
Console.WriteLine(len); //結(jié)果說明數(shù)據(jù)是按行存在鏈表中的,每行占鏈表一個(gè)值
Console.WriteLine("依次輸出鏈表中數(shù)據(jù)");
for (int i = 0; i < len; i++)
{
 Console.WriteLine(str[i]); //依次輸出鏈表每個(gè)值,也是依次輸出每行
}
Console.WriteLine("依次輸出每個(gè)值");
string[][] every = new string[len][]; //交叉數(shù)組,行固定,為上面得到的行數(shù),每一行的長度不定(每行字符間以空格或其他分割)
for (int i = 0; i < len; i++)
{
 every[i] = str[i].Split(); //C#對(duì)空格的分割方式之一,如果是其他分割方式,就需要也使用上面的鏈表分割每行的方式了
}
for (int i = 0; i < len; i++)
{
 for (int j = 0; j < every[i].Length; j++)
 {
  Console.WriteLine(every[i][j]);
 }
}
Console.ReadKey();

怎么在C# 控制臺(tái)中一次性輸入多行

從上面兩個(gè)方法來看,第二個(gè)方法更方便對(duì)輸入數(shù)據(jù)取出操作。

補(bǔ)充:C語言一次性給多個(gè)變量賦值

我就廢話不多說了,大家還是直接看代碼吧~

scanf("%d%d%d",a,b,c);

而不是

scanf("%d,%d,%d",a,b,c);

這里要注意那里是沒有逗號(hào)的

關(guān)于怎么在C# 控制臺(tái)中一次性輸入多行問題的解答就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道了解更多相關(guān)知識(shí)。


分享文章:怎么在C#控制臺(tái)中一次性輸入多行-創(chuàng)新互聯(lián)
文章鏈接:http://weahome.cn/article/dscdgh.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部