| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 591 人关注过本帖
标题:我自己做了一个习题,求三位数的水仙花数,想用调用的方式把他输出,可是 b ...
只看楼主 加入收藏
t120653918
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2014-7-18
结帖率:100%
收藏
 问题点数:0 回复次数:6 
我自己做了一个习题,求三位数的水仙花数,想用调用的方式把他输出,可是 bulid 的时候是没有错误,但是却没有结果
#include<stdio.h>
#include<math.h>
int shuixian(int n)
{
    int a,b,c;
    for(n=100;n<=100;n++)
        a=n%100;
    b=n/10%10;
    c=n%10;
    if(n==(pow(a,3))+(pow(b,3))+(pow(c,3)))
    {return 1;}
    else {return 0;}
}
void main()
{
    int k;
    if(shuixian(k))
        printf("水仙花数有:",k);
}
搜索更多相关主题的帖子: include 水仙花 
2014-07-20 16:22
wp231957
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:神界
等 级:贵宾
威 望:423
帖 子:13688
专家分:53332
注 册:2012-10-18
收藏
得分:0 
感觉不像C代码  更不是c++

DO IT YOURSELF !
2014-07-21 07:11
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:528
帖 子:9025
专家分:54030
注 册:2011-1-18
收藏
得分:0 
程序代码:
#include <cstdio>

bool shuixian( unsigned n )
{
    unsigned a = n/100;
    unsigned b = n/10%10;
    unsigned c = n%10;
    return n == a*a*a + b*b*b + c*c*c;
}

int main()
{
    for( unsigned n=100; n<=999; ++n )
    {
        if( shuixian(n) )
            printf( "%u\n", n );
    }

    return 0;
}
2014-07-21 08:13
t120653918
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2014-7-18
收藏
得分:0 
回复 3 楼 rjsp
谢谢,求次幂的时候不觉得用POW比较好么
2014-07-21 09:05
t120653918
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2014-7-18
收藏
得分:0 
回复 3 楼 rjsp
不过运行出来还是没有结果哦
2014-07-21 09:17
ydh_wu
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2014-7-21
收藏
得分:0 
#include<stdio.h>
int shuixianhua(int n){
    int a,s,i;
    s=0;
    i=n;
    for(a=n%10;n!=0;)
    {
        s+=a*a*a;
        n/=10;
        a=n%10;
    }
    if(s==i)
        return i;
    return 0;
}
void main(){
    for(int i=100;i<1000;i++)
        if(shuixianhua(i))
            printf("%d ",i);
}


   
2014-07-21 13:38
lightyagami
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2014-7-23
收藏
得分:0 
自己做的,学的是c++,将就看

way1
#include <iostream>
using namespace std;

int main ()
{
   int a,b,c,y,x;
   
   for (x=100;x>99 && x<1000; x++)
       {a=x/100;
        y=x/10;
        b=y%10;
        c=x%10;
        if (x==a*a*a+b*b*b+c*c*c)
         cout<<x<<endl;}
   //system ("pause");
   return 0;
}   

way2
#include <iostream>
using namespace std;
int main ()
{
    int a,b,c,x=0;
    for(a=1;a<=9;a++)
        for(b=0;b<=9;b++)
            for(c=0;c<=9;c++){
               int x=a*100+b*10+c;
               if (x==a*a*a+b*b*b+c*c*c)                  
    cout<<x<<endl;}
    //system ("pause");
    return 0;
}   


2014-07-23 17:34
快速回复:我自己做了一个习题,求三位数的水仙花数,想用调用的方式把他输出,可 ...
数据加载中...
 
   



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

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