用do while语句实现输出所有水仙花数所谓水仙花数是一个三位数其各位数字的立方和等于该数

用do while语句实现输出所有水仙花数所谓水仙花数是一个三位数其各位数字的立方和等于该数

算法:可枚举所有三位数,再分解各位数进行判断。 C语言(三位数枚举法): #include<stdio.h> main() { int i,s1,s2,s3; for(i=100;i<=999;i++) //枚举所有的三位数 { s1=i/100; //把i的百位赋值给s1 s2=i/10%10; //把i的十位赋值给s2 s3=i%10; //把i的个位赋值给s3 if(s1*s1*s1+s2*s2*s2+s3*s3*s3==i) //如果各位数字之和等于该数 printf("%d\n",i); //则输出该数 } return 0; }
温馨提示:内容为网友见解,仅供参考
无其他回答

...水仙花数”指1个3位数,其各位数字的立方等于该数本身。例如153=1...
int n, a;double i,b, sum;scanf("%d", &n);i = pow(10, (n - 1));while(i >= pow(10, (n - 1))&& i<pow(10, n)){ sum = 0;b = i;while (b > 0){ a = (int)b % 10;sum = sum + pow(a, 3);b = (int)b \/ 10;} if (sum == i)printf("%.0lf...

...所谓“水仙花数”是指一个三位数其各位数字立方和等于该数本身_百度...
1. 题目理解:题目要求寻找所有的三位数,这些数的每个位上的数字的立方和等于该数本身。例如,153是一个水仙花数,因为1^3 + 5^3 + 3^3 = 153。2. 程序设计:我们需要一个循环来遍历100到999之间的所有三位数。对于每个数,我们需要计算其各位上的数字的立方和,并检查这个和是否等于原数。3....

c语言,求水仙花数(三位数)。用do while?
} while (i < 1000);return 0;} ```在上面的代码中,我们使用 do-while 循环来遍历三位数,然后对每个三位数进行水仙花数的判断。其中,使用了三个变量 `a`、`b`、`c` 分别表示当前数值的百位、十位、个位数字。然后判断该三位数是否等于各个数字的立方和,如果是,就打印该数值。需要注意的是...

...所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身。JAVA...
\/** * 打印 10000 以内的所有水仙花数 * * 所谓“水仙花数”即一个整数满足其值等于各个数位的立方和。 * 例如:153是一个水仙花数,因为153=1*1*1+5*5*5+3*3*3 * * 1) 检查一个数num是否为水仙花数 * 2) 检查一个范围内全部的num是否为水仙花数 * * num = 153; * n1 = ...

输出所有的水仙花数。所谓水仙花数是一个3位的正整数,其各位数字的立方...
参考代码如下:include<stdio.h> int main(){ int i,x,y,z;for(i=100;i<=999;++i){ x=i%10;y=(i%100)\/10;z=i\/100;if(x*x*x+y*y*y+z*z*z==i)printf("%d\\n",i);} return 0;}

...所谓“水仙花数”是指一个3位数,其各位数字立方和等于该数本身_百度...
水仙花数是指一个 n 位数 ( n≥3 ),它的每个位上的数字的 n 次幂之和等于它本身。三位的水仙花数共有4个:153,370,371,407;加一下就可以了,153+370+371+407=1301 你可以用程序来找到他们,比如用我会的pascal语言就是:program shuixianhuashu;var a,b,c:integer;begin for a:=1 ...

用C语言编写:输出所有水仙花数.所谓水仙花数是指一个3位数.其各位数字...
include<stdio.h> \/\/一个三位数,其各位数字的立方和等于该数本身。例如:153=1^3+5^3+3^3 void main(){ int n,a,b,c;for(n=100;n<1000;n++){ a=n\/100;b=(n%100)\/10;c=(n%100)%10;if(a*a*a+b*b*b+c*c*c==n)printf("\\t");} printf("\\n");} ...

输出所有的水仙花数.所谓的水仙花数是指一个3位数,其各位数字立方和等于...
include "conio.h"main(){ int i,j,k,n;printf("'water flower'number is:");for(n=100;n<1000;n++){ i=n\/100;\/*分解出百位*\/ j=n\/10%10;\/*分解出十位*\/ k=n%10;\/*分解出个位*\/ if(i*100+j*10+k==i*i*i+j*j*j+k*k*k)printf("%-5d",n);} getch();} ...

...水仙花数是指一个3位数,各位数字的立方和等于该数本身,例如153=1^3...
main(){ int s, b, sh, g;for(s=100;s<1000;s++){ g=s%10;sh=(s\/10) %10;b=s\/100;if(b*b*b+sh*sh*sh+g*g*g==s)printf("%5d",s) ;} } 有什么问题请留言。

...所谓“水仙花数”是指一个3位数,其各位数字的立...
b=(i-a*100)\/10; \/\/取十位数字 c=i%10; \/\/取个位数字 if(a*a*a+b*b*b+c*c*c==i)\/\/如果是水仙花数 { printf("%d\\t",i); count++;\/\/如果是水仙花数 计数器就加1 } } printf("\\n水仙花数的个数为\\t%d",count); printf("\\n"); } 运行结果如下 本回答由网友推荐 举报| 答案纠错...

相似回答