首页 > 分享 > C语言计算任意位数水仙花数

C语言计算任意位数水仙花数

C语言计算任意位数N(N>2)的水仙花数

#include<stdio.h> #include<math.h> int main() {int i, N,j = 1;//N为计算多少位数的水仙花数,j为最小的N位数scanf("%d",&N);//假设N为3,则j为100,最小的3位数for (i = 1; i < N; i++)//计算j,即计算最小的N位数j *= 10;for (i = j; i < j*10; i++) {//使用i循环遍历所有的N位数,假设N为3,则遍历100-999//t用来临时储存i的值,k用来接收i每一次分离出来的数字,temp是每一个数字的N次方之和int t = i, k, temp = 0;//循环计算出每一次i的tempdo{k=t%10;//分离t的最低位的一个数字,假设i=t=153,则分离出3t/=10;// 去除最低位数,此时t=15temp+=pow((double)k,N);//计算k的N次方,并加到temp中}while(t>0);//当t不大于0时,循环结束,此时temp为每一位数字的N次方之和if(i==temp) {//比较当前的i和temp值,如果相等,则为水仙花数,并输出printf("%dn",i);}}return 0; }

1234567891011121314151617181920212223

新手代码,不喜勿喷,望对您有所帮助!!!

相关知识

C语言:输出所有的水仙花数
【C语言】求水仙花数(完整代码)
vs水仙花数c语言代码,求水仙花数c语言代码怎么写
水仙花数C语言代码优化
C语言判断水仙花数
C语言编写水仙花数
C语言:PAT练习:水仙花数( T & F)
C语言重来29:例题赏析——水仙花数
要求返回三位数中的水仙花数 ,数字范围在100
Java 语言实现水仙花数

网址: C语言计算任意位数水仙花数 https://m.huajiangbk.com/newsview467268.html

所属分类:花卉
上一篇: 使用python计算水仙花数
下一篇: JS实现千以内的水仙花数