大佬帮忙看看这个基础的币值转换,C语言,测试通过没问题就是过不了pta平台

#include <stdio.h>

#include <stdlib.h>


int f(int i,int a[8])

{

    int j;

    for(j=0;j<i+1;j++)

    {

        if(a[j]==1)   return 1;

    }

    return 2;

}

int main()

{

    int a,b[8],i;

    for(i=0; i<8; i++)b[i]=0;

    scanf("%d",&a);

    if(a/100000000!=0)

    {

        b[0]=1;

        printf("%cY",'a'+a/100000000);

        a=a-a/100000000*100000000;

    };

    if(a/10000000!=0)

    {

        b[1]=1;

        printf("%cQ",'a'+a/10000000);

        a=a-a/10000000*10000000;

    };

    if(a/1000000!=0)

    {

        b[2]=1;

        if(b[1]==0&&(f(1,b)==1))printf("a");

        printf("%cB",'a'+a/1000000);

        a=a-a/1000000*1000000;

    };

    if(a/100000!=0)

    {

        b[3]=1;

        if(b[2]==0&&(f(2,b)==1))printf("a");

        printf("%cS",'a'+a/100000);

        a=a-a/100000*100000;

    };

    if(a/10000!=0)

    {

        b[4]=1;

        if(b[3]==0&&(f(3,b)==1))printf("a");

        printf("%cW",'a'+a/10000);

        a=a-a/10000*10000;

    };

    if(a/1000!=0)

    {

        b[5]=1;

        if(b[4]==0&&(f(4,b)==1))printf("a");

        printf("%cQ",'a'+a/1000);

        a=a-a/1000*1000;

    };

    if(a/100!=0)

    {

        b[6]=1;

        if(b[5]==0&&(f(5,b)==1))printf("a");

        printf("%cB",'a'+a/100);

        a=a-a/100*100;

    };

    if(a/10!=0)

    {

        b[7]=1;

        if(b[6]==0&&(f(6,b)==1))printf("a");

        printf("%cS",'a'+a/10);

        a=a-a/10*10;

    };

    if(a!=0)

    {

        if(b[7]==0&&(f(7,b)==1))printf("a");

        printf("%c",'a'+a);

    };


    return 0;

}


慕勒8437521
浏览 1445回答 1
1回答
打开App,查看更多内容
随时随地看视频慕课网APP