谁知道用C语言怎么编写一个能求出所有的水仙花数的程序?

如题所述

#include <stdio.h>
#include <conio.h>

void main()
{
int iPoh,iPos,iPog,iNum = 0; /*定义变量 ipoh为百位 ipos为十位 ipog为个位,iNum为最后的水仙花数字*/

for (iNum=100; iNum<=300; iNum++)
{
iPoh = iNum/100; /*分解出数字的百 十 个位上的数字*/
iPos = (iNum%100)/10;
iPog = iNum%10;

if (iPoh*iPoh*iPoh+iPos*iPos*iPos+iPog*iPog*iPog == iNum) /*判断是否为水仙花数字*/
{
printf("%-6d",iNum);
} /*输出结果*/
}

getch();

}
经测试,可以使用!!
温馨提示:内容为网友见解,仅供参考
第1个回答  2011-10-14
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);
    }
  }
printf("\n");
}
第2个回答  2011-10-14
int ge, shi,bai;
printf("100-1000的所有水仙花数为:");
for(int i = 100 ;i<1000;i++){
ge = i %10;
shi= i / 10 %10;
bai = i / 100;
if(i == (ge*ge*ge + shi *shi*shi + bai * bai *bai))
printf("%d",i)
}
差不多这样吧本回答被提问者采纳
第3个回答  2011-10-14
水仙花数是什么?

谁知道用C语言怎么编写一个能求出所有的水仙花数的程序?
int iPoh,iPos,iPog,iNum = 0; \/*定义变量 ipoh为百位 ipos为十位 ipog为个位,iNum为最后的水仙花数字*\/ for (iNum=100; iNum<=300; iNum++){ iPoh = iNum\/100; \/*分解出数字的百 十 个位上的数字*\/ iPos = (iNum%100)\/10;iPog = iNum%10;if (iPoh*iPoh*iPoh+iPos...

水仙花数用C语言怎么写?
C语言写水仙花数要将给出的三位数的个位、十位、百位分别拆分,并求其立方和(设为s),若s与给出的三位数相等, 三位数为“水仙花数”,反之,则不是水仙花数。include <stdio.h> int main(){ int hun, ten, ind, n;printf("result is:");for( n=100; n<1000; n++ ) \/*整数的取...

如何实现用C语言输出所有的“水仙花数”?
1. 问题定义:目标是寻找所有三位数,其每个位上数字的立方和等于该数本身。例如,153是一个“水仙花数”,因为153 = 1^3 + 5^3 + 3^3。2. 分析问题:要验证一个三位数是否为“水仙花数”,需要将该数拆分为百位、十位和个位上的数字,计算这三个数字的立方和,如果立方和等于原数,则该数...

如何实现用C语言输出所有的“水仙花数”?
C语言具体实现水仙花过程如下:一、问题描述:输出所有的“水仙花数”,所谓的“水仙花数”是指一个三位数其各位数字的立方和等于该数本身,例如153是“水仙花数”,因为:153 = 13 + 53 + 33。二、问题分析:根据“水仙花数”的定义,判断一个数是否为“水仙花数”,最重要的是要把给出的三位数的...

在C语言中输出所有水仙花,并统计水仙花个数,使用while语句?_百度知 ...
include <stdio.h> int main(){ int i,cnt;for(i=100,cnt=0;i<1000;++i){ if(i==(i%10)*(i%10)*(i%10)+(i\/10%10)*(i\/10%10)*(i\/10%10)+(i\/100)*(i\/100)*(i\/100)){ printf("%d\\n",i);cnt++;} } printf("%d\\n",cnt);return 0;} ...

c语言中,如何输出所有的水仙花数
在C语言中,输出所有的水仙花数的步骤如下:1. 确定水仙花数的定义:水仙花数,也就是三位自幂数,指的是一个三位数,它的每个位上的数字的立方和等于它本身。2. 编写判断水仙花数的函数:这个函数需要提取输入数值的个位、十位和百位数字,计算它们的立方和,并与原数值比较以确定是否为水仙花数。3....

C语言:输出100-999中所有水仙花数。
1. 输出100-999中所有水仙花数。```c void OutputNarcissusNumbers() { for (int i = 100; i < 1000; i++) { int sum = 0;int temp = i;int rem;for (int j = 0; j < 3; j++) { rem = temp % 10;temp \/= 10;sum += rem * rem * rem;} if (sum == i) { pr...

用c语言编写程序,打印一百到一千之间的所有水仙花数
1. 程序分析:我们需要使用for循环来遍历100到999之间的所有三位数。对于每个数,我们将计算其百位、十位和个位数字,并检查这些数字的立方和是否等于原数。2. 程序源代码:```c include int main() { int i, j, k, n;printf("水仙花数为:");for (n = 100; n < 1000; n++) { i =...

输出 所有的“水仙花数” 用c语言程序 怎么做 ?水仙花数 例;153=...
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);} } printf("\\n");} ...

大一c语言求水仙花数
大一c语言求水仙花数方法如下:1、首先打开编辑器,写上注释内容。2、新建4个变量,分别是num,b,s,g分别代表三位数,百位数,十位数,个位数。3、然后写for循环,从100开始,最后到1000,自增。4、然后分别求出这个三位数的百位,十位,个位。5、接着判断百位的3次方+十位的3次方+个位的3次方...

相似回答