Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2538998
  • 博文数量: 308
  • 博客积分: 5547
  • 博客等级: 大校
  • 技术积分: 3782
  • 用 户 组: 普通用户
  • 注册时间: 2009-11-24 09:47
个人简介

hello world.

文章分类

全部博文(308)

分类: C/C++

2010-07-21 09:30:44

    有一道题目:打印出所有的“水仙花数”,所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个“水仙花数”,因为153=1的三次方+5的三次方+3的三次方。
    看到这个题目后,我们想到的就是,如何将一个三位数的百位,十位,各位分解开来,然后,按照水仙数的定义去用程序进行测试。其中用到了除法和求余运算。代码如下:

#include <stdio.h>

int main(int argc,char *argv[])
{
    int i,count = 0;
    int i2,i1,i0;
    for (i=100;i<1000;i++)
    {
        i2 = i / 100;
        i1 = i / 10 % 10;
        i0 = i % 10 ;
        
        if (i2 * i2 * i2 + i1 * i1 * i1 + i0 * i0 * i0 == i)
        {
           printf("%d ",i);
           count ++;
        }
    
    }
    printf("\nthe count is:%d\n",count);
    
    system("pause");
    return 0;
}


阅读(4261) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~