42.编写程序打印所有的“水仙花数”。“水仙花数”指一个三位数,其各位数字立方和等于该数本身,例如153是一个“水仙花数”,因为 153=1×1×1+3×3×3+5×5×5。
//1、for循环+if判断 //2、可设计成函数 #include<iostream> using namespace std; int ShuiXian(int); int main() { for(int i=100;i<=999;i++) { if(ShuiXian(i)) { cout<<i<<endl; } } return 0; } int ShuiXian(int index) { int temp; int sum=0; int temp1; temp1=index;//注意,因为后面的index会改变,所以需要事先设置一个temp1来保护输入值 for(int p=1;p<=3;p++) { temp=index%10; sum+=(temp*temp*temp); index=index/10; } if(sum==temp1) { return 1; }else { return 0; } }