C语言 求出所有各位数字的立方和等于是1099的三位整数

如题所述

#include<stdio.h>
#include<math.h>
void main()
{
int n1,n2,n3,n;
printf("所得的数为:\n");
for(n=100;n<1000;n++)
{
n1=n%10;
n2=(n/10)%10;
n3=n/100;
if(pow(n1,3)+pow(n2,3)+pow(n3,3)==1099)
printf("%d ",n);
}
}

参考资料:http://zhidao.baidu.com/question/155375340.html?an=0&si=1

温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-09-01
int n,m,i,t=0;
for(n=9;n>0;n--)
{
for(m=9;m>=0;m--)
{
t= 1099-pow(n,3)-pow(m,3);
if(t>=0&&t<=729/*pow(9,3)*/)
{
for(i=0;i<=9;i++)
{
if(pow(i,3)== t)
printf("%4d",n*100+m*10+i);
}
}
else if(t>729)
{
break ;
}
else
{ }
}
}
也可以计算出每一位的数字的可能组合,再判断其是否相等或者有两个相等的情况(有时还要考虑0的情况),以此输出这个三位数。自己可以试验一下。