- #include <stdio.h>
- #include <string.h>
- //number为待转换的数值,digits为进制数
- void tenToHex(int number,int digits,char *str)
- {
- int j = 0;
- //对传入的进制数进行判断,如果不在2-15之间就直接返回。
- if (digits<2 || digits>16){
- printf("非法进制!!!\n");
- return ;
- }
- else
- {
- while (number)
- {
- if (number%digits >= 10)
- {
- str[j++] = 'A' + (number%digits - 10);
- }
- else
- {
- str[j++] = '0' + number%digits;
- }
- number = number/digits;
- }
- }
- }
- int main()
- {
- int m = 21,n = 2;
- char str[8];
- tenToHex(m,n,str);
- printf("%d,%d,%s\n",m,n,str);
- return 0;
- }
复制代码
|