初学者,请问这道题要怎么解,求思路!

  • img

#include <stdio.h>
int main()
{
    int i,a,b;
    for (i=0;i<10;i++)
    {
        if(i==0)
            printf("5 ");
        else if(i == 5)
            printf("0 ");
        else
            printf("%d ",10-i);
    }
    //两位数
    for (i=10;i<=99;i++)
    {
        a = i%10;
        b = i/10;
        if(b==0)
            printf("5");
        else if(b == 5)
            printf("0");
        else
            printf("%d",10-b);

        if(a==0)
            printf("5 ");
        else if(a == 5)
            printf("0 ");
        else
            printf("%d ",10-a);
    }
    printf("955");
    return 0;
}

应该不是一个一个列出来吧 都没啥思路