用C语言求进制转换

来源:百度知道 编辑:UC知道 时间:2024/06/19 03:22:36
编程将任意b1进制的正整数转换成b2进制表示形式。 其中(2≤b1≤16,2≤b2≤16) 当进制大于10时,在每一位上的A、B、C、D、E、F分别代表数值10、11、12、13、14、15。

输入:
共有两行,第一行为用空格分开的两个数,分别表示进制b1和进制b2;第二行有一个数,为数X的b1进制表示形式。
输出:
数X的b2进制表示形式。

输入示例:
2 16
101111
输出示例:
2F

#include <stdlib.h>
#include <stdio.h>

void main( void )
{
char buffer[20];
int i = 3445;
long l = -344115L;
unsigned long ul = 1234567890UL;

_itoa( i, buffer, 10 );
printf( "String of integer %d (radix 10): %s\n", i, buffer );
_itoa( i, buffer, 16 );
printf( "String of integer %d (radix 16): 0x%s\n", i, buffer );
_itoa( i, buffer, 2 );
printf( "String of integer %d (radix 2): %s\n", i, buffer );

_ltoa( l, buffer, 16 );
printf( "String of long int %ld (radix 16): 0x%s\n", l,