c语言 用for循环完成计算水仙花数
时间: 2023-05-23 20:02:23 浏览: 98
以下是用 C 语言 for 循环计算水仙花数的代码:
#include <stdio.h>
int main()
{
int n, digit, sum;
for (n=100; n<=999; n++)
{
sum = 0;
int tmp = n;
while (tmp > 0)
{
digit = tmp % 10;
sum += digit * digit * digit;
tmp /= 10;
}
if (sum == n)
{
printf("%d\n", n);
}
}
return 0;
}
这个程序输出所有的三位数水仙花数(即各个位的数字的立方和等于该数本身)。
相关问题
c语言 用for循环完成计算水仙花数
当然可以!以下是 C 语言代码:
#include <stdio.h>
int main() {
int number, originalNumber, remainder, result = 0;
printf("请输入一个三位数: ");
scanf("%d", &number);
originalNumber = number;
// 用 for 循环计算水仙花数并打印结果
for (;originalNumber != 0; originalNumber /= 10) {
remainder = originalNumber % 10;
result += remainder * remainder * remainder;
}
if (result == number)
printf("%d 是一个水仙花数", number);
else
printf("%d 不是一个水仙花数", number);
return 0;
}
C语言水仙花数 用for循环
在C语言中,"水仙花数"是指那些每一位数字的立方和等于其本身的三位数。例如,153就是一个水仙花数,因为 1^3 + 5^3 + 3^3 = 1 + 125 + 27 = 153。
以下是使用for循环计算水仙花数的C语言示例:
```c
#include <stdio.h>
int main() {
int num, hundreds, tens, ones;
// 循环遍历100到999之间的所有三位数
for (num = 100; num <= 999; num++) {
// 分离出百位、十位和个位数字
hundreds = num / 100;
tens = (num % 100) / 10;
ones = num % 10;
// 计算每个位置的立方和
int sum = hundreds * hundreds * hundreds + tens * tens * tens + ones * ones * ones;
// 检查是否为水仙花数
if (sum == num) {
printf("%d 是一个水仙花数.\n", num);
}
}
return 0;
}
```
这个程序通过for循环逐个检查三位数,如果它们满足水仙花数的条件,就打印出来。
阅读全文