十进制转换为十六进制

来源:互联网 发布:淘宝买到三无产品 编辑:程序博客网 时间:2024/05/29 17:42
#include <stdio.h>#define BASE 16void tran(int n){if (n == 0)return;tran(n/BASE);if (n%BASE > 9)//每一次循环后定义比9大的余数printf ("%c",n%BASE - 10 + 'A');else           //否则继续循环输出printf ("%d",n%BASE);return;}int main(){int n;scanf ("%d",&n);tran(n);printf ("\n");return 0;}
//可以实现同样功能的源程序。
#include <stdio.h>#define BASE 16char num2char(int num){switch(num){case 0:return '0';case 1:return '1';case 2:return '2';case 3:return '3';case 4:return '4';case 5:return '5';case 6:return '6';case 7:return '7';case 8:return '8';case 9:return '9';case 10:return 'A';case 11:return 'B';case 12:return 'C';case 13:return 'D';case 14:return 'E';case 15:return 'F';}}void tran1(int n){if (n == 0)return;tran1(n/BASE);printf ("%c",num2char(n%BASE));return;}int main(){int a;scanf ("%d",&a);tran1(a);printf("\n");return 0;}

 
原创粉丝点击