在c#中不用$统计键盘输入字符中,大写小写数字其他字符数,保存在数组中分别输出。
时间: 2024-11-25 11:09:10 浏览: 5
在 C# 中,你可以通过以下步骤来实现这个功能:
1. 首先,创建一个字符串变量用于存储用户的输入,并初始化一个整数数组,用于存放四种类型的字符计数:大写字母、小写字母、数字和其它字符。
```csharp
string userInput;
int[] charCounts = new int[4] { 0, 0, 0, 0 }; // [0]: 大写,[1]: 小写,[2]: 数字,[3]: 其它
```
2. 接收用户输入:
```csharp
Console.Write("请输入一段文本:");
userInput = Console.ReadLine();
```
3. 使用 `char` 类型的特性遍历输入字符串,对每种类型的字符进行计数:
```csharp
foreach (char c in userInput)
{
if (char.IsUpper(c)) // 大写字母
charCounts[0]++;
else if (char.IsLower(c)) // 小写字母
charCounts[1]++;
else if (char.IsDigit(c)) // 数字
charCounts[2]++;
else // 其他字符(非字母和数字)
charCounts[3]++;
}
```
4. 输出结果:
```csharp
Console.WriteLine($"大写字母:{charCounts[0]}");
Console.WriteLine($"小写字母:{charCounts[1]}");
Console.WriteLine($"数字:{charCounts[2]}");
Console.WriteLine($"其他字符:{charCounts[3]}");
```
5. 为了将字符分类存入数组并一次性输出,你可以考虑创建一个新的方法来处理这个过程,如下所示:
```csharp
private static void CountChars(string input, ref int[] counts)
{
foreach (char c in input)
{
if (char.IsUpper(c))
counts[0]++;
else if (char.IsLower(c))
counts[1]++;
else if (char.IsDigit(c))
counts[2]++;
else
counts[3]++;
}
}
// 调用函数并输出结果
CountChars(userInput, ref charCounts);
```
阅读全文