您现在的位置: 中国男护士网 >> 考试频道 >> 计算机等级 >> 二级辅导 >> C语言 >> 辅导 >> 正文    
  C趣味程序(二)(09)三位水仙花数 【注册男护士专用博客】          

C趣味程序(二)(09)三位水仙花数

www.nanhushi.com     佚名   不详 

2.3 自方幂数
    一个n位正整数如果等于它的n个数字的n次方和,该数称为n位自方幂数。
    三位自方幂数又称水仙花数。
    四位自方幂数又称玫瑰花数。
    五位自方幂数又称五角星数。
    六位自方幂数又称六合数。
    试求出所有3~6位自方幂数。

2.3.1 三位水仙花数
1、算法分析
    求自方幂数采用穷举判定法。求n位自方幂数,对所有n位整数一 一判定,如果其数字的n次方和等于它自身,则打印输出。
    求n个数字的n次方和,常见有以下两种方法:
1)设置n重循环,每位数设置循环;最高位从1~9,其余各位数从0~9。n个数字的n次方的和即n个循环变量的n次方和。
2)从最小的n位数至最大的n位数循环,对每一个n位数分离其各个数字,然后求数字的n次方和。
    两种方法从循环次数来说是一样的,前者实施起来较为简便。

程序代码如下:
#include<stdio.h>
void main()
{
    int i,j,k,m1,m2;
    for(i=1;i<=9;i++)
        for(j=0;j<=9;j++)
            for(k=0;k<=9;k++)
            {
                m1=i*100+j*10+k;        /*m1为三个数字分别为i,j,k的三位数*/
                m2=i*i*i+j*j*j+k*k*k;   /*m2为三个数字的立方和*/
                if(m1==m2)  printf("%3d  ",m1);    /*输出满足水仙花条件的数*/
            }
    printf("\n");
}
程序运行结果:
水仙花数有:
153  370  371  407

 

文章录入:杜斌    责任编辑:杜斌 
  • 上一篇文章:

  • 下一篇文章:
  • 【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
     

    联 系 信 息
    QQ:88236621
    电话:15853773350
    E-Mail:malenurse@163.com
    免费发布招聘信息
    做中国最专业男护士门户网站
    最 新 热 门
    最 新 推 荐
    相 关 文 章
    没有相关文章
    专 题 栏 目