輸入10進位數,把它轉換成3進位輸出

[心得]

1.注意n=0的情況,直接輸出0

2.i 在轉換過程結束之後,會比需要的值多1,要在倒著印答案之前先減回來

 

#include <stdio.h>

int main()
{
    int n,i,t[20];
   
    while(scanf("%d",&n))
    {
        if(n<0) break;
       
        if(!n)
            printf("0\n");
        else
        {
            for(i=0;i<20;i++)
                t[i]=0;
            for(i=0;n>0;i++)
            {
                t[i]=n%3;
                n/=3;
            }
            for(i--;i>=0;i--)
                printf("%d",t[i]);
            printf("\n");
        }
    }
   
    return 0;
}

arrow
arrow
    全站熱搜

    RingsACM 發表在 痞客邦 留言(0) 人氣()