写一个c语言程序水仙花是指一个三位数并且满足各位数字的立方和等于该数本身的三位数。例如153是水仙花数,因为153=1*1*1+5*5*5+3*3*3.请编程计算并输出所有的水仙花数。 **输入格式要求:无 **输出格式要求:"%6d",且所有的水仙花数字在同一行。
时间: 2023-07-23 07:42:51 浏览: 79
好的,下面是C语言程序代码:
```
#include <stdio.h>
int main() {
int a, b, c, sum;
printf("所有的水仙花数为:");
for (int i = 100; i <= 999; i++) {
a = i / 100; // 分解百位数
b = i / 10 % 10; // 分解十位数
c = i % 10; // 分解个位数
sum = a*a*a + b*b*b + c*c*c; // 计算各位数字的立方和
if (sum == i) {
printf("%6d", i); // 输出水仙花数
}
}
printf("\n");
return 0;
}
```
程序的思路是利用for循环遍历所有三位数,分解每个三位数的百位数、十位数和个位数,然后计算该数的各位数字的立方和,判断是否与该数本身相等,如果满足条件则输出该数。最后所有的水仙花数在同一行输出。
相关问题
使用c语言,编写一个能输出水仙花数的小程序,水仙花是指一个三位数,其各位数字立方和等于该数本身
。以下是使用C语言编写水仙花数小程序的代码:
```c
#include <stdio.h>
int main()
{
int num, original_num, remainder, result = 0;
printf("请输入一个三位数:");
scanf("%d", &num);
original_num = num;
while (original_num != 0) {
remainder = original_num % 10;
result += remainder * remainder * remainder;
original_num /= 10;
}
if (result == num) {
printf("%d 是一个水仙花数\n", num);
} else {
printf("%d 不是一个水仙花数\n", num);
}
return 0;
}
```
希望这个程序能够满足您的需求!
使用c语言,编写一个能输出水仙花数的小程序,打印出所有的水仙花数水仙花是指一个三位数,其各位数字立方和等于该数本身
好的,以下是可以输出水仙花数的C语言程序:
```c
#include<stdio.h>
int main()
{
int n, num, sum = 0;
printf("水仙花数有:\n");
for(n = 100; n <= 999; n++)
{
num = n;
while(num != 0)
{
int digit = num % 10;
sum += digit * digit * digit;
num /= 10;
}
if(sum == n)
{
printf("%d\n", n);
}
sum = 0;
}
return 0;
}
```
请直接将上述代码复制到你的C语言编辑环境中,并进行编译和运行,即可输出所有的水仙花数。
阅读全文