#include<stdio.h>
int kk₋pow(int n,int k);
int isShui( int num );
int main()
{
int x=0,i,a[100];
for(i=100; i<1000; i++)
{
if ( isShui(i) ) { //为水仙花时返回1时将此时i的值存入数组
a[x++]=i;
}
}
for(i=0; i<x; i++)
{
printf("%d ",a[i]);
}
return 0;
}
/* 求水仙花数 */
int isShui( int num )
{
int i,n,sum=0,m=0,a=1,b;
n=num;
while(n)
{
n/=10;//算出几位数,虽然在这有点多余,但这样函数更加多用
m++;
}
n=num;
while(n)
{
sum+=kk₋pow(n%10,m);
n/=10;
}
if(sum==num)
return 1;
else
return 0;
}
int kk₋pow(int n,int k)//自己写个pow函数٩(๑•̀ω•́๑)۶
{
if(k==0)
return 1;
else
return n*kk₋pow(n,k-1);
}
c语言函数判断水仙花
最新推荐文章于 2023-08-26 18:34:33 发布