Exercise 5-6 Use a function to output the number of daffodils (20 points)

Insert picture description here
Insert picture description here
22 lines of code bloom a daffodil

int narcissistic( int number )
{
    
    
    int n=0,a[7]={
    
    0},i=0,sum=0,k;//k保留number原值
    k=number;
    while(number)
    {
    
    
        a[i]=number%10;
        number/=10;
        n++;//表示位数
        i++;
    }
    for(i=0;i<n;i++)
        sum+=pow(a[i],n);
    if(k==sum) return 1;
    else return 0;
}
void PrintN( int m,int n )
{
    
    
    int i;
    for(i=m+1;i<n;i++)
        if(narcissistic(i)) printf("%d\n",i);
}

Guess you like

Origin blog.csdn.net/qq_52765554/article/details/115106271