c语言的进制转换~~~~急急急!!!

来源:百度知道 编辑:UC知道 时间:2024/06/20 05:10:10
1.以字符串的形式输出两个2进制数,求和
2.以字符串的形式输出两个8进制数,求和
3.以字符串的形式输出两个16进制数,求和

很急啊,各位高手教教老弟啊.是用C语言来编程的.

#include <stdio.h>
void numshow(int x,int y)
{
int i,j,a[1000];
for(i=1;x>0;i++)
{
a[i]=x%y;
x=x/y;
}
i--;
for(j=i;j>0;j--)
{
if (a[j]<10)
printf("%d",a[j]);
else
printf("%c",a[j]+55); }
}

void main()
{
int a,b,j,n[3]={2,8,16};
printf("请输入两个数字a,b。以逗号分隔\n");
scanf("%d,%d",&a,&b);
for(j=0;j<3;j++)
{
printf("%d进制显示:a=",n[j]);
numshow(a,n[j]);
printf(",b=");
numshow(b,n[j]);
printf(",a+b=");
numshow((a+b),n[j]);
printf("\n");
}
}