c语言代码设有一个三位数,将它的百、十、个位上的3个数,任意取2个,各自求立方,然后加起来,正好等于这个3位数
时间: 2024-05-07 22:17:39 浏览: 108
这个问题其实是一个数学难题,可以用程序解决,具体思路如下:
1. 用三个变量 a, b, c 分别表示百、十、个位数。
2. 从 100 到 999 之间,循环每一个数字作为 a * 100 + b * 10 + c,并检查是否满足条件。
3. 遍历 a、b、c 的所有组合情况,计算两个数的立方和是否等于当前数字。
4. 输出符合条件的数字即可。
下面是使用 C 语言编写的示例代码:
```c
#include <stdio.h>
int main()
{
int a, b, c;
int num, sum;
for(a = 1; a <= 9; a++)
{
for(b = 0; b <= 9; b++)
{
for(c = 0; c <= 9; c++)
{
num = a * 100 + b * 10 + c;
sum = a * a * a + b * b * b + c * c * c;
if(sum == num)
{
printf("%d\n", num);
}
}
}
}
return 0;
}
```
输出结果如下:
```
153
370
371
407
```
这就是满足条件的所有三位数,即 153、370、371 和 407。
阅读全文