当前位置: 代码迷 >> 综合 >> 递归函数实现十进制正整数转换为二进制,八进制,十六进制
  详细解决方案

递归函数实现十进制正整数转换为二进制,八进制,十六进制

热度:54   发布时间:2024-02-24 09:41:58.0

这个代码仅局限于正整数,新人初来,多多关照,谢谢谢谢

#include<stdio.h>
int main()
{
    int n;printf("输入要转化的十进制正整数:");scanf("%d",&n);printf("二进制为:");jinzhi_2(n);printf("\n");printf("八进制为:");jinzhi_8(n);printf("\n");printf("十六进制为:");jinzhi_16(n);printf("\n");
}
void jinzhi_2(int n)
{
    if(n>1){
    jinzhi_2(n/2);      //简单函数的递归,从递归的最里面开始输出,即可实现余数的逆序输出}printf("%d",n%2);
}
void jinzhi_8(int n)
{
    if(n>7){
    jinzhi_8(n/8);}printf("%d",n%8);
}
void jinzhi_16(int n)
{
    if(n>15){
    jinzhi_16(n/16);}printf("%d",n%16);
}
  相关解决方案