水仙花数n位c语言程序,水仙花数C语言的

满意答案

02ae427d08e371d7e90d5b995e828d6d.png

fluzipvcjq

2014.05.23

02ae427d08e371d7e90d5b995e828d6d.png

采纳率:56%    等级:8

已帮助:164人

既然是输入三位数N,就不要数组了,用数组,你的意图是让其代替输入数据的吧

1、手工输入数据情况

void f(int x)

{

int d1,d2,d3;

d1=x/100;

d2=(x%100)/10;

d3=x%10;

if(x==d1*d1*d1+d2*d2*d2+d3*d3*d3)

printf("YES

");

else

printf("NO

");

}

int main(){

int x;

scanf("%d",&x);

while(x!=0)

{

f(x);

scanf("%d",&x);

}

return 0;

}

2、测试数据不是手工输入,而是由数组提供

void f(int x)

{

int d1,d2,d3;

d1=x/100;

d2=(x%100)/10;

d3=x%10;

if(x==d1*d1*d1+d2*d2*d2+d3*d3*d3)

printf("YES

");

else

printf("NO

");

}

//打印所有的水仙花数

int main()

{

int i;

int j=0;

int a[900];

for(i=100;i<1000;i++)

a[j++]=i; //把所有的三位数都存储到数组a里,以备他用

for(j=0;j<900;j++)

f(a[j]);

return 0;

}

其实,就是为了让你练习使用数组,否则可以不用数组,如下

int main()

{

int i;

for(i=100;i<1000;i++)

f(i);

return 0;

}

呵呵,这么麻烦的问题,才10分啊!

00分享举报

  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值