这是十进制转化为十六进制
#include
char char_mod(int c) {
char number=0;
switch (c) {
case 0: number='0';break;
case 1: number='1';break;
case 2: number='2';break;
case 3: number='3';break;
case 4: number='4';break;
case 5: number='5';break;
case 6: number='6';break;
case 7: number='7';break;
case 8: number='8';break;
case 9: number='9';break;
case 10: number='A';break;
case 11: number='B';break;
case 12: number='C';break;
case 13: number='D';break;
case 14: number='E';break;
case 15: number='F';break;
}
return number;
}
main() {
long num=0,a=0;
int count=0,i=0;
char *p;
printf("please input a number: num=");
scanf("%ld", &num);
a=num;
do{
count++;
a/=16;
}while(a!=0);
p=(char *)calloc(count,sizeof(char));
a=num;
for(i=count;i>0;i--){
p[i-1]=char_mod(a%16);
a/=16;
}
printf("The number %ld transform into ",num);
for(i=0;i加上这个头文件就好了~~...