话不多说,直接贴代码:
#include<stdio.h>
void fun(int m,int k)
{
int aa[100],i;char he[16]={'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'};
if (k==2)
{
for ( i = 0; m; i++){aa[i]=m%k;m=m/k;}
for ( i = i-1; i >= 0; i--)printf("%d",aa[i]);//上一个循环最后自加多了一次
printf("\n");
}
else if(k==16)
{
for ( i = 0; m; i++){aa[i]=m%k;m=m/k;}
for ( i = i-1; i >= 0; i--)printf("%c",he[aa[i]]);
printf("\n");
}
else
printf("输入所需转换进制数该程序无法实现\n");
}
void main()
{
int n,j;
printf("\n请输入一个十进制整数:\n");
scanf("%d",&n);
scanf("%d",&j);
if (j==2)
printf("该整数转换为二进制为:\n");
if (j==16)
printf("该整数转换为十六进制为:\n");
fun(n,j);
}