| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 701 人关注过本帖
标题:水仙花数 判定与求和 只输出一个水仙花数
只看楼主 加入收藏
cheungavacat
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2015-1-3
结帖率:0
收藏
已结贴  问题点数:10 回复次数:9 
水仙花数 判定与求和 只输出一个水仙花数
程序代码:
#include <stdio.h>
int sxh(int n);
int main()
{
    int i,n,sum;
    for(i=100;i<1000;i++)
    {
        if(i==sxh(n))
        printf("%d +",i);
    }
    
}
int sxh(int n)
{
    int a,b,c;
    for(n = 100;n < 1000;n++)
    {
        a=n/100;
        b=(n-a*100)/10;
        c=(n-a*100-b*10);        
        if(a*a*a+b*b*b+c*c*c==n)
        return n; 
        }
}

    
    
    



最后运行结果只显示 153 +
搜索更多相关主题的帖子: color 水仙花 
2015-01-03 16:24
qwerdfb2418
Rank: 1
等 级:新手上路
帖 子:7
专家分:3
注 册:2015-1-3
收藏
得分:3 
没看懂“%d+”是什么意思,加号写在引号里是什么意思
其余的好像没有错误
2015-01-03 16:30
cheungavacat
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2015-1-3
收藏
得分:0 
回复 2楼 qwerdfb2418
占位符啊..输出带符号的十进制整数
2015-01-03 16:35
qwerdfb2418
Rank: 1
等 级:新手上路
帖 子:7
专家分:3
注 册:2015-1-3
收藏
得分:0 
回复 3楼 cheungavacat
返回值...没有括号
2015-01-03 16:43
cheungavacat
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2015-1-3
收藏
得分:0 
回复 4楼 qwerdfb2418
哪儿
2015-01-03 16:50
qwerdfb2418
Rank: 1
等 级:新手上路
帖 子:7
专家分:3
注 册:2015-1-3
收藏
得分:0 
回复 5楼 cheungavacat
return (n)
你写成 return n
帮我一下https://bbs.bccn.net/thread-440649-1-1.html

[ 本帖最后由 qwerdfb2418 于 2015-1-3 16:55 编辑 ]
2015-01-03 16:51
cheungavacat
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2015-1-3
收藏
得分:0 
回复 6楼 qwerdfb2418
没有问题的- -
我觉得问题是在循环体
2015-01-03 16:58
wmf2014
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:216
帖 子:2039
专家分:11273
注 册:2014-12-6
收藏
得分:3 
两处错误
1:if(i==sxh(n))应为if(i==sxh(i))
2:函数sxh内不需要再循环
另定义了不用的变量,会警告。代码如下:
#include <stdio.h>

int sxh(int n);
int main()
{
    int i;
    for(i=100;i<1000;i++)
    {
        if(i==sxh(i))
        printf("%d +",i);
    }
   
}
int sxh(int n)
{
    int a,b,c;
        a=n/100;
        b=(n-a*100)/10;
        c=(n-a*100-b*10);        
        if(a*a*a+b*b*b+c*c*c==n)
        {
            return n;
        }
}

运行结果为:153 +370 +371 +407 +

能编个毛线衣吗?
2015-01-03 17:41
wqwqyt123
Rank: 2
等 级:论坛游民
帖 子:30
专家分:52
注 册:2015-1-2
收藏
得分:3 
楼主为什么定义函数时还弄个循环???

#include <stdio.h>
int sxh(int n)
{
    int a,b,c;
        a=n/100;
        b=n/10%10;
        c=n%10;        
        if(n==a*a*a+b*b*b+c*c*c)
            return n;
   
   
}
int main()
{
    int n;
    for(n=100;n<1000;n++)
    {
        if(n==sxh(n))
        printf("%d\t",n);
    }
   
}
2015-01-03 17:42
momo99
Rank: 1
等 级:新手上路
帖 子:2
专家分:3
注 册:2015-1-3
收藏
得分:3 
回复 楼主 cheungavacat
#include <stdio.h>  
#include <stdlib.h>
int sxh(int n);
int main()
{
    int i,sum;
     sxh(i);
    system("pause");
    return 0;
  
}
int sxh(int n)
{
    int a,b,c;
    for(n = 100;n < 1000;n++)
    {
        a=n/100;
        b=(n-a*100)/10;
        c=(n-a*100-b*10);        
        if(a*a*a+b*b*b+c*c*c==n)
        printf("%5d\n",n);
        }
}


看我这么改也可以的。楼主应分析sxh函数的返回值。
2015-01-03 20:17
快速回复:水仙花数 判定与求和 只输出一个水仙花数
数据加载中...
 
   



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

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