用c#找出水仙花数
时间: 2025-06-20 19:56:44 浏览: 17
以下代码是使用C#找出所有的水仙花数的实现:
```csharp
using System;
class Program
{
static void Main()
{
Console.WriteLine("三位数的水仙花数有:");
for (int i = 100; i < 1000; i++)
{
if (IsNarcissisticNumber(i))
{
Console.WriteLine(i);
}
}
}
static bool IsNarcissisticNumber(int number)
{
int hundreds = number / 100; // 百位
int tens = (number / 10) % 10; // 十位
int units = number % 10; // 个位
// 判断是否满足水仙花数条件
if (hundreds * hundreds * hundreds +
tens * tens * tens +
units * units * units == number)
{
return true;
}
return false;
}
}
```
### 上述代码解释:
1. **主函数 `Main`**:
- 遍历所有三位数(从100到999)。
- 对每个数字调用 `IsNarcissisticNumber` 函数,判断其是否为水仙花数。
- 如果是水仙花数,则打印出来。
2. **辅助函数 `IsNarcissisticNumber`**:
- 将输入的三位数分解为百位、十位和个位。
- 计算每个位上的数字的立方和。
- 如果立方和等于原数字,则返回 `true`,否则返回 `false`。
运行上述代码后,会输出所有三位数中的水仙花数,即:153, 370, 371 和 407。
---
###
阅读全文
相关推荐



















