C语言求解任意范围内的水仙花数

您所在的位置:网站首页 用函数求水仙花数的c语言代码 C语言求解任意范围内的水仙花数

C语言求解任意范围内的水仙花数

#C语言求解任意范围内的水仙花数| 来源: 网络整理| 查看: 265

C语言求解任意范围内的水仙花数

文章目录 C语言求解任意范围内的水仙花数1. 定义2. C语言求解3. 运行结果4. C语言中的pow函数

1. 定义

水仙花数也被称为超完全数字不变数、自恋数、自幂数、阿姆斯壮数或阿姆斯特朗数,水仙花数是指一个 n 位数(n≥3 ),它的每个位上的数字的 n 次幂之和等于它本身(例如:1^3 + 5^3+ 3^3 = 153)。

2. C语言求解 #include #include /** * @author: 张翊 * @TIME: 2021/5/15 15:10 * @Description: 求出0~100000之间的所有“水仙花数”并输出。 “水仙花数”是指一个n位数,其各位数字的n次方之和确好等于该数本身,如:153=1^3+5^3+3^3,则153是一个“水仙花数”。 */ int judge(int); int main() { int max, min; printf("请输入所求水仙花数的下界(最小值)以及上界(最大值)\n"); scanf("%d %d", &min, &max); //定义计数器,方便输出使用 int count = 0; for (int i = min; i temp = replace % 10; replace = replace / 10; //调用Math库中的pow方法求解 sum += pow(temp, n); } //如果它的每个位上的数字的 n 次幂之和等于它本身,则其为水仙花数,打印 if (sum == i) { printf("%5d\t", i); //每打印一个自增一 count++; //方便观察,每打印十个换一行 if (count % 9 == 0) { printf("\n"); } } } return 0; } /** * 判断一个数字是几位数 * @param i * @return 数字位数 */ int judge(int i) { int count = 0; while (i != 0) { count++; i = i / 10; } return count; } 3. 运行结果

在这里插入图片描述

4. C语言中的pow函数

头文件:#include

pow() 函数用来求 x 的 y 次幂(次方)

其原型为:double pow(double x, double y);

pow()用来计算以x 为底的 y 次方值,然后将结果返回。设返回值为 ret,则 ret = x^y。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3