递归实现十进制数转十六进制数

xiaoxiao2021-02-28  70

典型的递归:

// 阶乘函数,n的阶乘

int func(int n)

{

if (n == 1)

return 1;

int res = n * func(n-1);

return res;

}

 

// 求斐波那契数列中第n个数的值

int feibo(int n)

{

if (n == 0 || n == 1)

return n;

int res = feibo(n-1) + feibo(n-2);

return res;

}

 

 

//递归实现输入十进制数,打印十六进制数

#include <stdio.h>

 

#define BASE 16

 

char 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;

// printf ("%d", n%2);

tran1(n/BASE);

printf ("%c", num2char(n

转载请注明原文地址: https://www.6miu.com/read-40448.html

最新回复(0)