啊哈磊_编程从这里起步

标题: 死在挑战第一题 [打印本页]

作者: tom075395    时间: 2013-11-23 15:33
标题: 死在挑战第一题
今日的成果
#include <stdio.h>
#include <stdlib.h>
int main()
{
        int a,b,c,f;
    a=0,b=0,c=0,f=0;
                while(f<1000)
        {
                        c=c+1;
            if(c&10==0)        b=b+1;
            if(b&10==0)        a=a+1;
            f=a*a*a+b*b*b+c*c*c;
                        if(f=a*100+b*10+c)        printf("%d\n",f);
        }


        system("pause");
        return 0;
}



作者: Dsp    时间: 2013-11-23 16:26
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. int main()
  4. {
  5.     int a,b,c,i;
  6.     for(i=100;i<=999;i++){        
  7.         a=i/100;            
  8.         b=i/10%10;     
  9.         c=i%10;           
  10.         if(a*a*a+b*b*b+c*c*c==i)
  11.            printf("%d\n",i);
  12.     }
  13.         system("pause");
  14.         return 0;
  15. }
复制代码

作者: 4399APPLE    时间: 2013-11-23 17:13
Dsp 发表于 2013-11-23 16:26

赞            
作者: 超神级    时间: 2013-11-23 20:52
http://www.ahalei.com/home.php?m ... w=me&from=space
作者: tom075395    时间: 2013-11-24 11:38
Dsp 发表于 2013-11-23 16:26

b=i/10%10
是什么意思?

作者: rosynirvana    时间: 2013-11-24 11:52
本帖最后由 rosynirvana 于 2013-11-24 11:53 编辑
tom075395 发表于 2013-11-24 11:38
b=i/10%10
是什么意思?

首先i/10,是去掉个位数字
123 / 10 = 12
1234 / 10 = 123
......

a % 10是求个位数字
123 % 10 = 3
1234 % 10 = 4

所以i/10%10就是先去掉个位数字,然后求新数字的个位数字,也就是求最初数字的十位上的数字

这些教程里面都有讲过的
作者: tom075395    时间: 2013-11-26 10:09
rosynirvana 发表于 2013-11-24 11:52
首先i/10,是去掉个位数字
123 / 10 = 12
1234 / 10 = 123

#include <stdio.h>
#include <stdlib.h>
int main()
{
        int a,b,c,f;
    a=0,b=0,c=0,f=0;
                while(f<1000)
        {
                        c=c+1;
            if(c==10)        b=b+1,c=0;
            if(b==10)        a=a+1,b=0;
            f=a*100+b*10+c;
                        if(f=a*a*a+b*b*b+c*c*c)        printf("%d\n",f);
        }
   
        
        system("pause");
        return 0;
}
为什么这个计算不出呢?
作者: rosynirvana    时间: 2013-11-26 10:36
tom075395 发表于 2013-11-26 10:09
#include
#include
int main()
  1. if(f==a*a*a+b*b*b+c*c*c)
复制代码
另外,只要三位数,还需要加两个条件把1和1000去掉……




欢迎光临 啊哈磊_编程从这里起步 (https://bbs.codeaha.com/) Powered by Discuz! X3.2