c语言实现进制转换函数

本文介绍如何使用C语言编写两个函数,分别用于将整型数字按8/10/16进制输出字符串,以及将二进制字符串转换为十进制数。函数采用递归方式实现。
摘要由CSDN通过智能技术生成

1。编写一个函数,输入一个的整型数字,可以选择按照8/10/16进制输出字符串。采用递归形式实现 

#include<stdio.h>


void number_print(int i_num, int type) // type为8、10、16
{
    int divisor; // 除数
    int remainder; // 余数
    divisor = i_num / type;

    if (divisor > 0) {
        number_print(divisor, type); // 采用递归,从最大的数开始打印
    }

     remainder = i_num % type;
    if (remainder >= 10 ) {
        switch (remainder) {
        case 10:
            printf("a");
            break;
        case 11:
            printf("b");
            break;
        case 12:
            printf("c");
            break;
        case 13:
            printf("d");
            break;
        case 14:
            printf("e");
            break;
        case 15:
            printf("f");
            break;
        default:
            printf("Type error!\n");
        break;
    } 
	}
	else 
	{
        printf("%d", remainder);
    }
	
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值