输出100至n之间的所有3位数的水仙花数C语言代码
时间: 2024-02-22 17:57:41 浏览: 94
以下是输出100至n之间的所有3位数的水仙花数的C语言代码:
```c
#include <stdio.h>
#include <math.h>
int main() {
int n;
printf("请输入n的值:");
scanf("%d", &n);
printf("100至%d之间的所有3位数的水仙花数为:\n", n);
for (int i = 100; i <= n; i++) {
int sum = 0;
int temp = i;
while (temp != 0) {
int digit = temp % 10;
sum += pow(digit, 3);
temp /= 10;
}
if (sum == i) {
printf("%d\n", i);
}
}
return 0;
}
```
输入n的值后,程序会遍历100至n之间的所有3位数,对每个数进行水仙花数的验证。如果该数是水仙花数,则输出它。
相关问题
c语言编程输出 100至 999之间的所有水仙花数。
以下是C语言编程输出100至999之间的所有水仙花数的代码:
#include <stdio.h>
#include <math.h>
int main()
{
int i, j, k, n, sum;
printf("100至999之间的所有水仙花数为:\n");
for (n = 100; n <= 999; n++)
{
i = n / 100; //百位数
j = n / 10 % 10; //十位数
k = n % 10; //个位数
sum = pow(i, 3) + pow(j, 3) + pow(k, 3); //计算立方和
if (sum == n) //判断是否为水仙花数
{
printf("%d ", n);
}
}
return 0;
}
输出所有的水仙花数C语言代码
以下是输出所有的水仙花数的C语言代码:
```c
#include <stdio.h>
#include <math.h>
int main() {
int num, digit, sum;
printf("水仙花数有:\n");
for (num = 100; num <= 999; num++) {
digit = num / 100; // 获取百位数
sum = pow(digit, 3);
digit = (num / 10) % 10; // 获取十位数
sum += pow(digit, 3);
digit = num % 10; // 获取个位数
sum += pow(digit, 3);
if (num == sum) {
printf("%d\n", num);
}
}
return 0;
}
```
希望可以帮到你。
阅读全文