鱼C论坛

 找回密码
 立即注册
查看: 1202|回复: 6

[已解决]c语言水仙花数

[复制链接]
发表于 2020-12-22 10:50:56 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
#include <stdio.h>
int main()
{
        int n,x,y,z;//x是百位数,y是十位数,z是个位数
        printf("请输出100-999的水仙花数:\n");
        for(n=100;n<1000;n++)
        {
                x=n/100;
                y=(n-100)/10;
                z=n%10;
                if(n==x*x*x+y*y*y+z*z*z)
                {
                        printf("%d",n);
                
                }
        
        }        
        return 0;
} 


亲爱的广大网友们帮我看看哪里错了,100-999的水仙花数有4个数,可运行出来只有1个数,紧急帮我看看

谢谢你们啦^_^
最佳答案
2020-12-22 10:59:30
#include <stdio.h>
int main()
{
        int n, x, y, z;//x是百位数,y是十位数,z是个位数
        printf("请输出100-999的水仙花数:\n");
        for (n = 100; n < 1000; n++)
        {
                x = n / 100;  
                y = (n - x*100) / 10;  //这里错了,加个x*100就好了
                z = n % 10;
                if (n == x * x * x + y * y * y + z * z * z)
                {
                        printf("%d\n", n);

                }

        }
        return 0;
}
微信图片_20201222104711.png
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-12-22 10:59:30 | 显示全部楼层    本楼为最佳答案   
#include <stdio.h>
int main()
{
        int n, x, y, z;//x是百位数,y是十位数,z是个位数
        printf("请输出100-999的水仙花数:\n");
        for (n = 100; n < 1000; n++)
        {
                x = n / 100;  
                y = (n - x*100) / 10;  //这里错了,加个x*100就好了
                z = n % 10;
                if (n == x * x * x + y * y * y + z * z * z)
                {
                        printf("%d\n", n);

                }

        }
        return 0;
}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-12-22 11:01:11 | 显示全部楼层
n-x*100再除以十才能得到十位数

解决了记得给个最佳
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-12-22 11:03:51 | 显示全部楼层

对哄!我一直拿153做检验,谢谢啦
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-12-22 11:04:30 | 显示全部楼层
Cathy-Chen258 发表于 2020-12-22 11:03
对哄!我一直拿153做检验,谢谢啦

小问题
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-12-22 11:04:54 | 显示全部楼层
      这一句错了
                y=(n-100)/10;
      改为
                y = (n % 100) / 10 ;
     或者
                y = (n / 10) % 10 ;
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

发表于 2020-12-22 11:10:21 | 显示全部楼层
十位数求错了, y=n/10%10;
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-1-12 10:01

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表