首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

求某数各位的数立方和等于自身解决方案

2012-02-20 
求某数各位的数立方和等于自身#includestdio.hint is(int number)int main(void){int m,n,i,tprintf(

求某数各位的数立方和等于自身
#include<stdio.h>
int is(int number);
int main(void)
{
int m,n,i,t;
printf("Enter m,n:\n");
scanf("%d%d",&m,&n);
for(i=m;i<=n;i++)
t=is(i);
printf("%d",t);
return 0;
}

int is(int number)
{
int a,b,c,y;
a=number/100;
b=number/10-a*10;
c=number%10;
y=a*a*a+b*b*b+c*c*c;
if(y==number)
return number;
  }
有个警告:
warning C4715: “is”: 不是所有的控件路径都返回值,应该如何改,
即使我加了个else也达不到预想的结果

[解决办法]
if(y==number)
return number;
rerurn 0; //后面加上这条就没warning 了



[解决办法]

C/C++ code
#include<stdio.h>int is(int number);int main(void){int m,n,i,t;printf("Enter m,n:\n");scanf("%d%d",&m,&n);for(i=m;i<=n;i++){    t=is(i);   if (t)       printf("%d\n",t); }      return 0;}int is(int number){int a,b,c,y;a=number/100;b=number/10-a*10;c=number%10;y=a*a*a+b*b*b+c*c*c;if(y==number)   return number; return 0;  }
[解决办法]
C/C++ code
main(){int i,j,k,n;printf("'water flower'number is:");for(n=100;n<1000;n++)  {  i=n/100;  j=(n-i*100)/10;  k=n%10;  if(i*i*i+j*j*j+k*k*k==n)    printf("%d\n",n);  }}
[解决办法]
程序没有判3位数,所以1与1000都出来了,改进一下
C/C++ code
#include<stdio.h>int is(int number);int main(void){int m,n,i,t;printf("Enter m,n:\n");scanf("%d%d",&m,&n);if (m<100)     m=100;if (n>999)     n=999;     for(i=m;i<=n;i++){    t=is(i);   if (t)       printf("%d\n",t); }      return 0;}int is(int number){int a,b,c,y;a=number/100;b=number/10-a*10;c=number%10;y=a*a*a+b*b*b+c*c*c;if(y==number)   return number; return 0;  } 

热点排行