判断是否为水仙花数并且打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数 本身。
//题目:打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数 本身。 //例如:153是一个"水仙花数",因为153=1的三次方+5的三次方+3的三次方。 #include <stdio.h> int main() { printf("\t水仙花数是指一个三位数,其各位数字立方和等于该数本身\n"); int a,b,c;//个,十,百 int n;//原来的数 printf("请输入你想要判断的数字是否为水仙花数:\n"); scanf("%d",&n);//输入n 假设:153 a=n%10;//个位 b=n%100/10 ;//十位 c=n/100;//百位 // printf("%d%d%d",a,b,c); if(n==(a*a*a+b*b*b+c*c*c)) { printf("%d是水仙花数\n",n); } else { // return NULL; printf("%d不是水仙花数\n",n); } printf("\n\n"); printf("如下是求所有水仙花数可提供参考答案:\n"); for(int i=100;i<1000;i++) { a=i%10;//个位 b=i%100/10 ;//十位 c=i/100;//百位 if(i==(a*a*a+b*b*b+c*c*c)) { printf("%d=%d^3+%d^3+%d^3是水仙花数\n",i,a,b,c); } } return 0; }
测试: