C语言 ——— 打印水仙花数

目录

何为水仙花数

题目要求 

代码实现


何为水仙花数

“水仙花数”是指一个n位数,其各位数字的n次方之和等于该数本身

如:153 = 1^3 + 5^3 + 3^3,则153就是一个“水仙花数”


题目要求 

求出0~100000的所有“水仙花数”并输出


代码实现

#include<stdio.h>
#include<math.h>
int main()
{
	// 遍历0~100000的整数

	for (int i = 0; i <= 100000; i++)
	{
		// 计算i的位数
		int n = 1;
		int tmpi = i;
		while (tmpi = tmpi / 10)
			n++;

		// 计算i的每一位次方n后的和
		int sum = 0;
		tmpi = i;
		while (tmpi != 0)
		{
			sum = sum + pow(tmpi % 10, n);
			tmpi = tmpi / 10;
		}

		// 判断并输出打印
		if (sum == i)
			printf("%d\n", sum);
	}
	return 0;
}

代码解析:

1.先计算出当前数的位数有几位

2.再计算出当前数的每一位次方位数后的和

3.最后判断和是否等同于当前数

代码验证:

相关推荐

  1. C语言-水仙花

    2024-07-19 03:46:04       57 阅读
  2. c语言编程题目:水仙花

    2024-07-19 03:46:04       40 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-19 03:46:04       67 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-19 03:46:04       72 阅读
  3. 在Django里面运行非项目文件

    2024-07-19 03:46:04       58 阅读
  4. Python语言-面向对象

    2024-07-19 03:46:04       69 阅读

热门阅读

  1. mstar 开发环境搭建

    2024-07-19 03:46:04       23 阅读
  2. Jupyter Notebook: 是一个强大的交互式计算

    2024-07-19 03:46:04       26 阅读
  3. String、StringBuilder 和 StringBuffer 有什么区别?

    2024-07-19 03:46:04       25 阅读
  4. Windows图形界面(GUI)-DLG-C/C++ - 树形视图(TreeView)

    2024-07-19 03:46:04       25 阅读
  5. 正则表达式

    2024-07-19 03:46:04       23 阅读
  6. 网络同步学习(状态同步,帧同步)

    2024-07-19 03:46:04       24 阅读
  7. RNN模型

    2024-07-19 03:46:04       22 阅读
  8. 如何解决 CentOS 7 官方 yum 仓库无法使用

    2024-07-19 03:46:04       25 阅读
  9. 嵌入式linux相机 转换模块

    2024-07-19 03:46:04       23 阅读