C# 编写控制台程序,定义一个字符串变量,从键盘往其中输入一行字符串使用foreach语句逐行输出其中的每一个字符
时间: 2024-09-22 13:07:48 浏览: 73
在C#中,如果你想编写一个控制台程序来接收用户输入的一行字符串并逐个输出其字符,可以使用`Console.ReadLine()`获取用户输入,然后配合`foreach`循环来遍历字符串。下面是一个简单的例子:
```csharp
using System;
class ConsoleStringInput
{
static void Main()
{
Console.Write("请输入一行字符串: ");
string input = Console.ReadLine(); // 获取用户输入
foreach(char c in input) // 使用foreach遍历字符串中的每个字符
{
Console.Write(c + " "); // 输出单个字符,并添加空格分隔
}
Console.WriteLine("\n所有字符已输出完毕.");
}
}
```
当程序运行时,它将提示用户输入一行字符串,然后逐个显示输入的字符。在每个字符之后,我们会添加一个空格以便于区分。最后,会在输出完所有字符后添加一条消息确认操作完成。
相关问题
用C#编写程序,接收用户输入的三个城市的名称,获取字符串长度,比较三字符串长度并对其用foreach语句进行排序,以字符串升序方式输出
在C#中,你可以按照以下步骤编写程序来实现这个功能:
首先,你需要创建一个控制台应用程序,并在主函数`Main`中接收用户的输入。这里假设我们使用`Console.ReadLine()`来读取每个城市的名称。
```csharp
using System;
using System.Linq; // 引入LINQ库以便使用OrderBy()
class Program
{
static void Main()
{
Console.WriteLine("请输入三个城市的名称:");
string city1 = Console.ReadLine();
string city2 = Console.ReadLine();
string city3 = Console.ReadLine();
int length1 = city1.Length;
int length2 = city2.Length;
int length3 = city3.Length;
// 使用 LINQ 对城市名长度进行排序
var sortedLengths = (from c in new[] { length1, length2, length3 }
orderby c ascending
select c).ToArray();
// 输出排序后的长度
foreach (int length in sortedLengths)
{
Console.WriteLine($"最长的城市名字长度是: {length}");
}
Console.ReadKey(); // 等待用户按下任意键关闭窗口
}
}
```
在这个程序中,我们首先获取了用户输入的三个城市名称的长度,然后用`LINQ`中的`OrderBy`方法对这三个长度进行升序排序。最后,通过`foreach`循环遍历排序后的数组,依次输出每个城市的最长名字长度。
用C#编写程序,接收用户输入的三个城市的名称,获取字符串长度,比较三字符串长度并对其用Array.Sort和foreach语句进行排序,以字符串升序方式输出城市名称
在C#中,你可以按照以下步骤编写程序来实现这个功能:
1. 首先,创建一个控制台应用程序,并在`Main`函数中初始化一个字符串数组来存储用户输入的城市名。
```csharp
using System;
using System.Linq;
class Program
{
static void Main(string[] args)
{
string[] cities = new string[3];
}
}
```
2. 接收用户输入:
```csharp
Console.WriteLine("请输入三个城市的名称:");
for (int i = 0; i < 3; i++)
{
Console.Write($"城市{i + 1}: ");
cities[i] = Console.ReadLine();
}
```
3. 计算每个城市名称的长度,并存储在一个新的数组中:
```csharp
int[] lengths = cities.Select(city => city.Length).ToArray();
```
4. 使用`Array.Sort`对长度数组进行排序:
```csharp
Array.Sort(lengths);
```
5. 使用`foreach`遍历排序后的长度数组,找出对应长度的城市名,并按长度顺序打印出来:
```csharp
string[] sortedCities = new string[lengths.Length];
// 将排序后的长度映射回原城市数组
for (int i = 0; i < lengths.Length; i++)
{
sortedCities[i] = cities[lengths.ToList().IndexOf(lengths[i])]; // 注意这里需要先将长度数组转换为List以便于查找索引
}
// 按照升序打印城市名
foreach (string city in sortedCities)
{
Console.WriteLine(city);
}
```
阅读全文