首页天道酬勤计算水仙花数

计算水仙花数

admin 03-14 11:18 42次浏览

首先,我们需要弄清楚什么是水仙花。水仙花的数量也被称为超完整数字不变数、自恋数、自幂数、阿姆斯壮数或阿姆斯特朗数。水仙花的数量是指一个数字,每个位置的N次幂之和等于它本身(例如,153是一个三位数,n==3,13+53+33=153)。

第一个文件需要的是:

#pragma warning(disable:4996)

#include<stdio.h>

#include<math.h>//po的头文件

首先要算出这是几位数,,我们用自定义函数jisuan来写,下面是代码实现:

返回值是w。


然后下面就是main函数了:


登录后复制 

int main()

{

  int w = 0;//计算几位数

  int i = 0;

  int q = 0;

  int z = 0;

  int c = 0;

  int f = 0;

  for (i = 0; i <= 100000; i++)

  {

    w = jisuan(i);//自定义函数求i是几位数

    f = i;//f顶替i进行计算,因为i要++

    c = 0;//因为每次计算c都要从0开始算

    for (q = 0; q < w; q++)//计算每一位的w次方之和 

    {

      z = f % 10;//提取出每一位数字

      f = f / 10;

      c = c + pow(z, w);//pow是计算次方的,这里是计算z的w次方

    }

    if (i == c)

    {

      printf("%d ", i);

    }

  }

  return 0;

}


https://blog.51cto.com/u_15880518/6103049

int jisuan(int n)

{

  int w = 0;

  if (n == 0)

  {

    w++;

  }

  while (n >= 1)

  {

    n = n / 10;

    w++;

  }

  return w;

}


一分快3高手判断技巧_一分快三app推荐软件 绝对保姆级别,别怕不会!!在字符串str中找到ASCII码值最大的字符,放在第一个位置上,顺序后移