您的位置:首页 > 其它

求出1~999之间的所有“水仙花数”并输出

2017-11-02 23:13 615 查看
一、求出1~999之间的所有“水仙花数”并输出。

二、解题思路:先拿出每个位上的数,再判断是几位数,然后把各个位上的数的N次方和与该数相比,为真则打印。

三、代码如下:

#include<stdio.h>
int main()

{
int i=0;
int bit_1=0;
int bit_2=0;
int bit_3=0;
printf("水仙花数:");
for(i=1;i<1000;i++)
{
bit_1=i/100;
bit_2=i/10%10;
bit_3=i%10;
if(bit_1 != 0)
{
if(i==bit_1*bit_1*bit_1+bit_2*bit_2*bit_2+bit_3*bit_3*bit_3)
{
printf("%d ",i);
}

}
else if((bit_1==0)&&(bit_2!=0))
{
if(i==bit_1*bit_1+bit_2*bit_2+bit_3*bit_3)
{
printf("%d ",i);
}
}
else if((bit_1==0)&&(bit_2==0))
{
if(i==bit_1+bit_2+bit_3)
{
printf("%d ",i);
}
}
else
printf("不是水仙花数");
}
printf("\n");
return 0;
}


四、结果如下



五、叨叨叨,学了C语言感觉生活变得有趣了,真是学习始于热爱,每天会更新一个小题目,大家喜欢接的赞我,赞我,赞我!!!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  printf
相关文章推荐