代码如下,如有帮助,请采纳一下,谢谢。
#include <stdio.h>
//定义一个结构体
struct NodeData
{
int nmb;
int bsxh; //是否是水仙花数
};
//判断是否是水仙花
int isShuixianhua(int n)
{
int d,nmb=n;
int sum = 0;
while(n)
{
d = n%10;
sum += (d*d*d);
n /= 10;
}
if(nmb == sum)
return 1;
else
return 0;
}
int main()
{
struct NodeData a[1000];
struct NodeData* p;
int i;
FILE* fp;
for (i=100;i<=1000;i++)
{
a[i-100].nmb = i;
a[i-100].bsxh = isShuixianhua(i);
}
p = a;
i = 100;
fp = fopen("out.txt","w");
while(i<=1000)
{
if(p->bsxh)
fprintf(fp,"%d\n",p->nmb);
p++;
i++;
}
fclose(fp);
return 0;
}