求1至10000之间满足个位数字的立方和等于本身的数

来源:百度知道 编辑:UC知道 时间:2024/06/18 12:26:07
我写的哪错了

#include<stdio.h>
#include<math.h>
void main(void)
{
int i,gw,sw,bw;
for(i=1;i<10000;i++)
{
bw=i/100;
sw=(i%100)/10;
gw=i%10;
if(pow(bw,3)+pow(sw,3)+pow(gw,3)==i)
printf("%d\n",i);
}
}

程序的确是错了!
错在这一句:bw=i/100;
当i>999时,bw>=10,bw就不是百位数字上的数字了,要改动很简单:
for(i=1;i<10000;i++) 改为
for(i=1;i<1000;i++)
至于求1000及以上满足要求的数,就多设一个整数qw,同理求出。

楼主说的应该就是求传说中的水仙花数.这种数只存于三位数中.只要把for语句10000改成1000就可以了.

这个错误看似是楼主笔误,多打了一个0,其实不然.楼主是改的别人的程序的吧?

#include<stdio.h>
#include<math.h>
void main(void)
{
int i,gw,sw,bw;
for(i=100;i<1000;i++)
{
bw=i/100;
sw=(i%100)/10;
gw=i%10;
if(pow(bw,3)+pow(sw,3)+pow(gw,3)==i)
printf("%d\n",i);
}
}

你你所说的是个位数字还是各位数字?

编写程序,求1~1000之间所有满足各位数字的立方和等于它本身的数。 一个三位数,个位数为a,十位数字比个位数字少2,百位数字比个位数多1,求这个三位数. 程序功能:求[10,1000]之间满足除以7余5、除以5余3、除以3余1的所有整数的个数。程序中有两行有错误 3^64+1的个位数是? 试求(2+1)(2*2+1)(2*4+1)......(2*32+1)+1的个位数 c语言编程:计算1至100中是3的倍数且个位数是6的数值之和 已知数列{an}的前n项和Sn和第n项之间满足关系: 2lg ( Sn-an+1) /2=lgSn+lg(1-an) 求an,Sn (1+2)(1+2^2)(1+2^4)(1+2^8)(1+2^16)(1+2^32)=A, 求A的个位数 求(2-1)(2+1)(2的平方+1)(2的4次方+1)+.......+(2的32次方+1)+1的个位数是多少!~ 三位数数字之和为18,将十位上数减2,百位数加2,再将十位数减1,个位数加1,此时三个数相等,求三位数