首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

10进制转换为16进制算法解决办法

2012-03-04 
10进制转换为16进制算法请有能力的给个算法,谢谢![解决办法]#includestdio.hchar * itohs(unsigned int,

10进制转换为16进制算法
请有能力的给个算法,谢谢!

[解决办法]

#include <stdio.h>
char * itohs(unsigned int,char *);

int main(void)
{
char bin_str[2*sizeof(unsigned int)+1],*result;
unsigned int number;

while(scanf( "%u ",&number)==1)
{
result=itohs(number,bin_str);
printf( "%u is %s\n ",number,result);
}
return 0;
}

char * itohs(unsigned int n,char * ps)
{
int i,k;
int size=2*sizeof(unsigned int);

ps[size]= '\0 ';

for (i=size-1;i> =0;i--)
{
k=n%16;
n/=16;

if (k <10)
ps[i]= '0 '+k;
else
ps[i]= 'A '+(k-10);
}
return ps;
}

热点排行