C语言 十进制数转化成十六进制代码:

代码: 

#include
#include
int main()
{
	int i,s,n;
	char shul[10]=" ";
	scanf("%d",&n);
	{
		for(i=0;i<10;i++)
		{
			if(n==0) 
			{shul[0]=48;break;}
			if(n/(int)pow(16,(double)i)==0) break;
			s=n/(int)pow(16,(double)i)%16;//(int)pow(16,(double)i+1);
			if(s<10) shul[i]=s+48;
			else shul[i]=s+55;
		}				
	}
	for(i=9;i>-1;i--)
	{
		if(shul[i]!='\0')
		printf("%c",shul[i]);
	}
	return 0;
}

方法思路

与分离十进制数每一位上的数使用的方法相似   分离位数 是用该数对10 的n次

方取余或求商来计算的:

         例: 分离 1234

                     个位:   1234%10

                     十位:   1234%100/10

                     百位:   1234%1000/100

                     千位:   1234/1000

 

同理: 将1234转化成十六进制 也就是分离出各位上的数

C语言 十进制数转化成十六进制代码:_第1张图片









你可能感兴趣的:(C语言基础)