//有一种三位数“这个数的个位数的立方”,加上十位数的立方,加上百位数的立方,恰好等于这个数
//这种三位数称为“水仙花数”、
//例如:153=1*1*1+5*5*5+3*3*3
//三重嵌套循环产生100~999-----水仙花数的第一步代码
#include <stdio.h>
#include <stdlib.h>
int main()
{
int i,j,k;
for(i=1;i<=9;i++)
{
for(j=0;j<=9;j++)
{
for(k=0;k<=9;k++)
{
printf("%d ",i*100+j*10+k);
}
}
}
system("pause");
return 0;
}
----
//有一种三位数“这个数的个位数的立方”,加上十位数的立方,加上百位数的立方,恰好等于这个数
//这种三位数称为“水仙花数”、
//例如:153=1*1*1+5*5*5+3*3*3
//打印出所有的水仙花数--for循环嵌套的方法-去掉花括号
#include <stdio.h>
#include <stdlib.h>
int main()
{
int i,j,k;
for(i=1;i<=9;i++)
for(j=0;j<=9;j++)
for(k=0;k<=9;k++)
if(i*100+j*10+k==i*i*i+j*j*j+k*k*k)
printf("%d ",i*100+j*10+k);
system("pause");
return 0;
}
------
//有一种三位数“这个数的个位数的立方”,加上十位数的立方,加上百位数的立方,恰好等于这个数
//这种三位数称为“水仙花数”、
//例如:153=1*1*1+5*5*5+3*3*3
//打印出所有的水仙花数--for循环嵌套的方法
#include <stdio.h>
#include <stdlib.h>
int main()
{
int i,j,k;
for(i=1;i<=9;i++)
{
for(j=0;j<=9;j++)
{
for(k=0;k<=9;k++)
{
if(i*100+j*10+k==i*i*i+j*j*j+k*k*k)
{
printf("%d ",i*100+j*10+k);
}
}
}
}
system("pause");
return 0;
}
---拼接法
-------------------
间隔法
#include <stdio.h>
#include <stdlib.h>
int main()
{
int a,b,c,x;
x=123;
a=x/100;
b=x/10%10;
c=x%10;
printf("%d %d %d",a,b,c);
system("pause");
return 0;
}
-----
#include <stdio.h>
#include <stdlib.h>
int main()
{
int a,b,c,x;
for(x=100;x<=999;x++)
{
a=x/100;
b=x/10%10;
c=x%10;
if(x==a*a*a+b*b*b+c*c*c)
printf("%d ",x);
}
system("pause");
return 0;
}
-----
#include <stdio.h>
#include <stdlib.h>
int main()
{
int a,b,c,x;
for(x=100;x<=999;x++)
{
a=x/100%10;
b=x/10%10;
c=x/1%10;
if(x==a*a*a+b*b*b+c*c*c)
printf("%d ",x);
}
system("pause");
return 0;
}
// 练习
//输入一个三位数,求这个数个位,十位,百位的数的和例如输入782,输出17
//2.输入一个n位数,范围在1~99999999,求这个n位数每一位上的数的和例如,输入12,输出3
11.18-水仙花数 -1000以内
最新推荐文章于 2022-11-30 19:13:11 发布
这段代码展示了如何使用C语言通过嵌套循环找到并打印三位数中的水仙花数,即各位数字立方和等于该数字本身。第一段代码遍历所有三位数,第二段优化了循环结构,第三段同样实现此功能但增加了代码可读性,最后一段通过输入一个三位数判断是否为水仙花数并打印结果。
摘要由CSDN通过智能技术生成