水仙花数C语言程序
更新日期:2026-11-11 20:55:32
| 标题 | 水仙花数C语言程序 |
| 内容 | 在编程学习的过程中,我们常常会遇到一些有趣的数学问题,其中“水仙花数”就是一个典型的例子。所谓水仙花数(Narcissistic number),是指一个三位数,其各位数字的立方和等于该数本身。例如,153是一个水仙花数,因为 \( 1^3 + 5^3 + 3^3 = 153 \)。 今天,我们将通过C语言来实现一个简单的程序,用于找出所有三位数中的水仙花数。以下是完整的代码示例: ```c include int main() { int num, temp, digit1, digit2, digit3; printf("水仙花数如下:\n"); for (num = 100; num <= 999; num++) { digit1 = num / 100; // 获取百位数字 digit2 = (num / 10) % 10; // 获取十位数字 digit3 = num % 10;// 获取个位数字 if (digit1 digit1 digit1 + digit2 digit2 digit2 + digit3 digit3 digit3 == num) { printf("%d\n", num); } } return 0; } ``` 程序解析: 1. 变量定义:我们定义了几个变量用于存储输入的数字以及分解后的各个位数。 2. 循环遍历:通过 `for` 循环从100到999逐一遍历所有三位数。 3. 数字分离:使用整除和取模运算将数字分解为百位、十位和个位。 4. 条件判断:通过计算每位数字的立方和是否等于原数,判断是否为水仙花数。 5. 输出结果:如果满足条件,则打印出该数字。 示例运行结果: 运行上述程序后,输出如下: ``` 水仙花数如下: 153 370 371 407 ``` 这些数字就是三位数范围内的所有水仙花数。 通过这个简单的程序,我们可以看到C语言的强大之处——它能够轻松处理复杂的逻辑运算并输出结果。同时,这也是一次很好的实践机会,帮助初学者掌握基本的循环、条件判断以及数学运算技巧。 希望这篇关于水仙花数的C语言程序对你有所帮助!如果你有任何疑问或需要进一步的帮助,请随时留言交流。 |
| 随便看 |