输入2个正整数m和n,输出m到n中所有水仙花数?用C语言怎么编

如题所述

第1个回答  2008-11-04
#include <stdio.h>

int main()
{
int m, n, i, k;
int a, b, c, p[100];

while (scanf("%d%d", &m, &n) != EOF)
{
if (m >= 100 && n <= 999 && m <= n)
{
k = 0;
for (i = m; i <= n; i++)
{
c = i % 10;
b = i / 10 % 10;
a = i / 100;
if (i == a*a*a + b*b*b + c*c*c)
{
p[k] = i;
k++;
}
}
}
if (k == 0)
printf("%s", "no");
else
for (i = 0; i < k; i++)
{
printf("%d ", p[i]);
}
printf("\n");
}

return 0;
}
第2个回答  2019-04-03
/*
for循环

水仙花数没
于1000
用数
证明
*/
#include<stdio.h>
void
main()
{
int
m,n,i;
int
a,b,c;
do{printf("input
one
integer\n");
scanf("%d",&m);
printf("input
another
integer\n");
scanf("%d",&n);
}while(m<100&&n<1000);
if(m<n)
{
i=m;
m=n;
n=i;
}
for(i=n;i<m;i++)
{
a=i/100;
/*

百位*/
b=(i-a*100)/10;
/*

十位*/
c=i%10;
/*

位*/
if(i==a*a*a+b*b*b+c*c*c)printf("%d\n",i);
}
}
相似回答