(C语言)10进制转16进制

#include<stdio.h>
#include<stdlib.h>
void func(char *s,int n,int i)          //n表示输入的数 i表示转化的进制
{
	char bit[]={"0123456789ABCDEF"};
	int len;
	if(n==0)
	{
		strcpy(s,"");
		return 0;
	}
	func(s,n/i,i);
	len=strlen(s);
	s[len]=bit[n%i];
	s[len+1]='\0';
}
void main(void)
{
	char s[80];
	int i,old,base;
	printf("请输入一个十进制数:");
	scanf("%d",&old);
	printf("请输入需转化的进制:");
	scanf("%d",&base);
	func(s,old,base);
	printf("%s\n",s);
	return 0; 
}

猜你喜欢

转载自blog.csdn.net/meridian002/article/details/87528942