C语言进阶之旅 (每日一题)水仙花数
Posted 一个正直的男孩
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C语言进阶之旅 (每日一题)水仙花数相关的知识,希望对你有一定的参考价值。
思维导图
大致思路
代码
- 注意事项,博主自己犯的
- 统计个数写出%10(粗心)
- 一定要把值符给变量,不然改变的就是循环
- 判断我写成place。。。(梅开二度)
int main()
{
int i = 0;
for ( i = 0; i < 100000; i++)
{
int count = i;//求的是i位的指数幂,但是直接改i会导致循环出问题
int index = 1;//1位数的幂为1
while (count/10) //求是幂个数
{
index++;
count /= 10;//消除一位,注意写法
}
int place = i;//和上面count同理
int tmp = 0;
while (place)
{
tmp += pow(place % 10, index);
place /= 10;
}
if (tmp == i)
{
printf("%4d", tmp);
}
}
return 0;
}
2021-5-28
以上是关于C语言进阶之旅 (每日一题)水仙花数的主要内容,如果未能解决你的问题,请参考以下文章