栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

C语言每日一练(5月2号)——水仙花数

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

C语言每日一练(5月2号)——水仙花数

1、水仙花数是什么?

水仙花数是一个“自幂数”

自幂数:自幂数是指一个n位数,它的每位上的数字的n次幂之和等于它本身。(例如:当n为3时,有1^3+5^3+3^3=153,153即是n为3时的一个自幂数)

自幂数包括:独身数、水仙花数、四叶玫瑰数、五角星数、六合数、北斗七星数、八仙数、九九重阳数、十全十美数。

三位的水仙花数共有4个:153,370,371,407; 

四位的四叶玫瑰数共有3个:1634,8208,9474;

五位的五角星数共有3个:54748,92727,93084

······

2、水仙花数该怎么算?

首先是要将个位、十位、百位上的数字单个表示:个位上的数字可以用取余获得:a=n%10;百位上的数字用取商获得:c=n/100;十位上的数字可综合得出:b=n/10-c*10;或者b=(n%100-a)/10;

3、水仙花的代码实现:

#include
int main()
{
	int n=100,j=0;//j用来记录有几个水仙花数
	int a,b,c;//a代表个位数字,b代表十位数字,c代表百位数字
	for(n=100;n<1000;n++)//遍历整个水仙花数的范围(水仙花数是三位数)
	{
		a=n%10;
		c=n/100;
		b=n/10-c*10;//或者:b=(n%100-a)/10;
		if(n==a*a*a+b*b*b+c*c*c)
		{
			printf("%dt",n);
			j++;
		}
	}
	printf("n一共%d位水仙花数n",j);
	return 0;
}

 显示结果: 

 

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/853312.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号