标题:大家帮忙看看这道水仙花数题啊
取消只看楼主
RWBY
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2015-11-15
结帖率:100%
已结贴  问题点数:20 回复次数:4 
大家帮忙看看这道水仙花数题啊
这是一道水仙花数的题
但是这个水仙花数不止,不一定是三位的。
我本人苦思冥想仍无能为力。
请先生教我!!
水仙花数(daffodils number)是指一个 n 位数 ( n ≥ 3 ),它的每个位上的数字的 n 次幂之和等于它本身。
例如:1^3 + 5^3 + 3^3 = 153
有多个测试用例,每个测试用例占一行,是一个正整数n ( 3 ≤ n ≤ 6 )
对每个测试用例,从小到大输出所有n位的水仙花数,一个一行。



搜索更多相关主题的帖子: number 水仙花 正整数 
2015-11-15 22:52
RWBY
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2015-11-15
得分:0 
用for循环仅能解决三位数的水仙花。
2015-11-15 22:58
RWBY
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2015-11-15
得分:0 
回复 4楼 勿忘我心
你这样也只能解决4位的水仙花数啊
至少得六位。
2015-11-16 13:24
RWBY
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2015-11-15
得分:0 
回复 5楼 rjsp
哪个 map什么的看不懂啊
我能直接用switch语句水过去吗?
2015-11-16 13:26
RWBY
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2015-11-15
得分:0 
#include<stdio.h>
int main()
{
    int sum,a,b,c,n;
    while(scanf("%d",&n)==1){
    switch(n){
        case'3':
        for(a=1;a<=9;a++)
        for(b=0;b<=9;b++)
        for(c=0;c<=9;c++)
             if(100*a+10*b+c==a*a*a+b*b*b+c*c*c)
             {sum=a*a*a+b*b*b+c*c*c;
                printf("%d",sum);
            break;}
                }}
}
为什么这样也不行,
求教。
2015-11-16 14:14



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-459244-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.019815 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved