设计一个程序,输入一个十进制整数,输出相应的十六进制数。设计一个函数实现数制转换。

来源:百度知道 编辑:UC知道 时间:2024/05/24 04:09:44
用数组算,菜鸟球叫你

//C语言实现:

#include<stdio.h>
void main()
{char b[]="0123456789ABCDEF";
long int n,x;
int i,a[40];
printf("\n Please input n=");
scanf("%ld",&n);
x=n;i=0;
while(x>0)
{a[i]=x%16;
x=x/16;
i++;
}
while(i>0)
{printf("%c",b[a[i-1]]);
i--;
}
printf("\n");
}

对于大数转换可以用如下程序:

#include "Stdio.h"
#include "Conio.h"
char result[100];
int pos;
void change(int *num);
int main(void)
{
char str[100];
int num[100];
int bin[300]={0};
int quot[100],residue=0;
int i,j,k=0,suffix=0,index=0;
puts("Input a decimal number:");
gets(str);
for(i=0;i<strlen(str);num[i]=str[i]-48,i++);
j=i-1;
while(j>=0)
{
num[j]%2?(bin[k++]=1):(bin[k++]=0);
while(index<