首页 > 要闻 > > 正文
2024-06-15 23:24:43  来源:  编辑:

c语言水仙花数代码(用c语言编写水仙花数)

大家好,我是小夏,我来为大家解答以上问题。c语言水仙花数代码,用c语言编写水仙花数很多人还不知道,现在让我们一起来看看吧!

1、方法:先弄懂什么是水仙花数:: 水仙花数是指一个n(>=3)位数字的数,它等于每个数字的n次幂之和。

2、 3位水仙花数————先定义3个数其中一个为1--9;2个为0--9;(用for循环) 再用如果a定义为1--9那么用100*a来表示百位;如果b或者c定义是0--9那么用10*b或者10*c来表示十位;那么下面用c或者b来表示个位; if(100*a+10*b+c==a*a*a+b*b+c) 如果满足这个条件那么:输出的printf("%d%d%d",a,b,c)就是3位数的水仙花数: 4位水仙花数方法同上: 刚写的:调试过了 #include <stdio.h> int main(void) { int a,b,c,d; system("cls"); for(a=1;a<=9;a++) for(b=0;b<=9;b++) for(c=0;c<=9;c++) if(100*a+10*b+c==a*a*a+b*b*b+c*c*c) printf("%d%d%d ",a,b,c); for(a=1;a<=9;a++) for(b=0;b<=9;b++) for(c=0;c<=9;c++) for(d=0;d<=9;d++) if(1000*a+100*b+10*c+d==a*a*a*a+b*b*b*b+c*c*c*c+d*d*d*d) printf("%d%d%d%d ",a,b,c,d); getch(); } 或者这样: #include <stdio.h> int main(void) { int a,b,c,d; system("cls"); for(a=1;a<=9;a++) for(b=0;b<=9;b++) for(c=0;c<=9;c++) { if(100*a+10*b+c==a*a*a+b*b*b+c*c*c) printf("%d%d%d ",a,b,c); for(d=0;d<=9;d++) if(1000*a+100*b+10*c+d==a*a*a*a+b*b*b*b+c*c*c*c+d*d*d*d) printf("%d%d%d%d ",a,b,c,d); } getch(); }。

本文到此讲解完毕了,希望对大家有帮助。