| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 44947 人关注过本帖
标题:关于用C语言实现输出所有水仙花数问题
只看楼主 加入收藏
陌染
Rank: 2
来 自:辽宁
等 级:论坛游民
帖 子:56
专家分:39
注 册:2013-3-28
结帖率:100%
收藏
已结贴  问题点数:10 回复次数:19 
关于用C语言实现输出所有水仙花数问题
楼主上节C语言课留了用循环语句输出所有水仙花数的作业。
在完成了之后继续用了不同的语句达到了同样的效果。
现发出来共同继续开发更多的方法。
其实语句主体都是一样的,只是有一点点的区别而已。
搜索更多相关主题的帖子: 水仙花 C语言 
2013-04-21 19:14
陌染
Rank: 2
来 自:辽宁
等 级:论坛游民
帖 子:56
专家分:39
注 册:2013-3-28
收藏
得分:0 
/*输出所有水仙花数*/


#include "stdio.h"
void main()
{
    int a,b,c;
    for(a=0;a<10;a++)
    for(b=0;b<10;b++)
    for(c=1;c<10;c++)
    if(a+b*10+c*100==a*a*a+b*b*b+c*c*c)
    printf("%d,%d,%d\n",c,b,a);
}
2013-04-21 19:14
陌染
Rank: 2
来 自:辽宁
等 级:论坛游民
帖 子:56
专家分:39
注 册:2013-3-28
收藏
得分:0 
/*用while语句输出所有水仙花数*/


#include "stdio.h"
void main()
{
    int n,a,b,c;
    n=100;
    while(n<1000)
    {
        a=n/100;
        b=n%100/10;
        c=n%10;
        if(n==a*a*a+b*b*b+c*c*c)
        printf("%d\n",n);
        n++;
    }
    printf("\n");
}
2013-04-21 19:15
陌染
Rank: 2
来 自:辽宁
等 级:论坛游民
帖 子:56
专家分:39
注 册:2013-3-28
收藏
得分:0 
/*使用for语句  输出所有水仙花数*/

#include "stdio.h"
void main()
{
    int a,b,c;
    for(a=1;a<=9;a++)
    {
        for(b=0;b<=9;b++)
        {
            for(c=0;c<=9;c++)
            {
                if(a*100+b*10+c==a*a*a+b*b*b+c*c*c)
                {
                    printf("%d,%d,%d\n",a,b,c);
                }
            }
        }
    }
}
2013-04-21 19:15
陌染
Rank: 2
来 自:辽宁
等 级:论坛游民
帖 子:56
专家分:39
注 册:2013-3-28
收藏
得分:0 
各位有什么其他的想法也可以贴出来
共同思考,共同进步嘛
2013-04-21 19:16
邓士林
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:淮河河畔
等 级:贵宾
威 望:61
帖 子:2392
专家分:13384
注 册:2013-3-3
收藏
得分:5 
以前我也做过这个作业,但是原程序删除了,其实可以思考水仙花的特点,而不是用他的定义条件

Maybe
2013-04-21 21:40
陌染
Rank: 2
来 自:辽宁
等 级:论坛游民
帖 子:56
专家分:39
注 册:2013-3-28
收藏
得分:0 
回复 6楼 邓士林
可是水仙花数的特点不就是abc=a×a×a+b×b×b+c×c×c么。。。
2013-04-22 09:23
韶志
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:斗气大陆
等 级:贵宾
威 望:44
帖 子:2223
专家分:13592
注 册:2013-3-22
收藏
得分:5 
#include<stdio.h>
void fun(int m);
main()
{
    int m;
    printf("请输入一个三位数:"); //"水仙花数"是针对三位数的;
    scanf("%d",&m);
    fun(m);
    return 0;
}

void fun(int num)
{
    int a,b,c,n;
    a=num/100;
    b=num/10-a*10;
    c=num-a*100-b*10;
    n=a*a*a+b*b*b+c*c*c;
    if(num==n)
        printf("%d是水仙花数!\n",num);
    else
        printf("%d不是水仙花数!\n",num);
}
   

三十年河东,三十年河西,莫欺少年穷!
2013-04-22 11:49
韶志
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:斗气大陆
等 级:贵宾
威 望:44
帖 子:2223
专家分:13592
注 册:2013-3-22
收藏
得分:0 
   看错了   不好意思

三十年河东,三十年河西,莫欺少年穷!
2013-04-22 11:53
陌染
Rank: 2
来 自:辽宁
等 级:论坛游民
帖 子:56
专家分:39
注 册:2013-3-28
收藏
得分:0 
回复 9楼 韶志
呃。。。。。你这只是判断输入的是否为水仙花数,嘿嘿。可以改改嘛
2013-04-23 17:13
快速回复:关于用C语言实现输出所有水仙花数问题
数据加载中...
 
   



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

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