水仙花数c语言程序pta三位数
时间: 2023-10-28 21:34:11 浏览: 147
这是一个求解水仙花数的C语言程序:
#include <stdio.h>
#include <math.h>
int main()
{
int i, j, k, n;
for (n = 100; n <= 999; n++)
{
i = n / 100;
j = n / 10 % 10;
k = n % 10;
if (n == pow(i, 3) + pow(j, 3) + pow(k, 3))
{
printf("%d\n", n);
}
}
return 0;
}
相关问题
pta水仙花数c语言程序
可以这样写:
#include <stdio.h>
#include <math.h>
int main()
{
int num, hundreds, tens, units, sum;
for (num = 100; num <= 999; num++)
{
hundreds = num / 100;
tens = num % 100 / 10;
units = num % 10;
sum = pow(hundreds, 3) + pow(tens, 3) + pow(units, 3);
if (sum == num)
printf("%d ", num);
}
return 0;
}
这个程序实现了输出所有的“水仙花数”,即一个三位数各个位上的数字立方和等于该数本身。
使用函数输出水仙花数c语言pta
首先,我们需要明确水仙花数的定义:一个三位数,其各个位上的数字的立方之和等于它本身。
要使用函数输出水仙花数,我们可以按照以下步骤进行操作:
1. 首先,在程序开始的地方定义一个函数,例如名为"getNarcissisticNumber"的函数。函数的返回类型应该是void,因为我们只需要输出水仙花数而非返回具体数值。
2. 在函数内部,使用一个循环来遍历所有的三位数。
3. 在循环内部,将当前遍历到的三位数分解成个位、十位和百位的数字,分别记为a、b和c。
4. 判断如果a的三次方加上b的三次方再加上c的三次方等于当前遍历的三位数,那么就输出该水仙花数。
5. 在主程序中调用该函数进行运行。
以下是一个示例代码段:
```c
#include <stdio.h>
void getNarcissisticNumber() {
int a, b, c;
for (int i = 100; i <= 999; i++) {
a = i % 10; // 个位数字
b = (i / 10) % 10; // 十位数字
c = (i / 100) % 10; // 百位数字
if (a * a * a + b * b * b + c * c * c == i) {
printf("%d ", i);
}
}
}
int main() {
getNarcissisticNumber();
return 0;
}
```
执行以上代码,即可输出所有的水仙花数。
阅读全文