进制转换(简单)

数据结构实验之栈一:进制转换

 

Time Limit: 1000MS Memory limit: 65536K

题目描述

输入一个十进制整数,将其转换成对应的R(2<=R<=9)进制数,并输出。

输入

第一行输入需要转换的十进制数;
第二行输入R。

输出

输出转换所得的R进制数。

示例输入

1279
8

示例输出

2377

提示

 

来源

 

示例程序

#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#include <string.h>
#define off 100000

long long int n,i,k;

int main()
{
    int m;
    int num[off];
    while(~scanf("%lld",&n))
    {
        scanf("%d",&m);
        if(n==0)
        {
            printf("0\n");
            continue;
        }

        memset(num,0,sizeof(num));
        k=abs(n);
        int t=0;
        while(k != 0)
        {
            num[t++]=k%m;
            k=k/m;
        }
        if(n < 0)
        printf("-");
        for(i=t-1;i>=0;i--)
        {
            printf("%d",num[i]);
        }
        printf("\n");
    }
    return 0;
}

 

posted @ 2014-11-20 08:55  夏迩  阅读(243)  评论(0)    收藏  举报