数据结构—递归实现十进制装换为任意进制

代码:

#include <stdio.h>
#include <stdlib.h>
#include"stack.h"
stack Stack;
void toAnyDigit(int n, int d) {//十进制转化为d进制if (n == 0) {//递归结束的条件return;}int temp = n % d;push(Stack, temp);n = n / d;toAnyDigit(n, d);//递归实现
}
int main() {init(Stack);int n, d;printf("输入数字和要计算为的进制:");scanf_s("%d%d", &n, &d);toAnyDigit(n, d);//计算d进制printStack(Stack);//遍历system("pause");return 0;
}

测试截图:

时间复杂度O(n),空间复杂度O(n)

彩蛋:可推广到任意进制转化为任意进制!

如果存在什么问题,欢迎批评指正!谢谢!

数据结构---递归实现十进制装换为任意进制相关推荐

  1. 十进制的转换与任意进制的互转

    一.十进制转任意进制: 十进制转任意进制时,将这个十进制数除以进制数,比如2(也就是十进制转二进制),得到商和一个从0~1的余数,然后再以这个商为被除数,除了进制数2,继续得到商和一个从0~1的余数. ...

  2. 十进制数转化为任意进制数n,采用变量N、数组A[]进行存储两种算法实例

    进制转化的核心代码为:(a 为输入的十进制数,n为需要转换的进制数,temp为变量进行存值) //先假设将a全部囤在个位数上,依次将a处理进行升位处理 temp = a %n; //利用求余公式,求出 ...

  3. 进制转换【最全进制转换汇总】(整数_小数_正数_负数)正负数整数小数十进制转任意进制-正负数整数小数任意进制转十进制-正负数低进制转高进制-正负数高进制转低进制

    文章目录: 补充知识点:各进制符号表示及其关系--二进制(B).八进制(O).十进制(D).十六进制(前缀OX,后缀H) 扩展:在线进制转换 第一部分:正数 一:[整数]正数十进制转任意进制:辗转相除 ...

  4. python编写程序转换进制_Python实现任意进制之间的转换

    在日常生活中我们频繁使用到数学的进制,如季度逢三进一,星期逢七进一:生肖.小时使用12进制,每天使用24进制,每月使用30进制,分秒使用60进制,一年使用360进制等等:在编程过程中我们经常需要转换进 ...

  5. Python数据结构14:递归的原理,递归实现数列求和、求阶乘、十进制转为任意进制

    1. 概念:什么是递归? 递归(Recursion)是一种解决问题的方法.尤其是复杂问题,有时用递归解决复杂问题可能会出奇的简单. 递归将一个比较复杂的问题分解成更小规模的问题,持续分解直到问题规模小 ...

  6. 十进制装换为二进制至九进制之间的任意进制输出

    内容:把十进制转换为二进制至九进制之间的任意进制输出 算法原理:N=(N/d)*d+N%d,先得到的余数为低位后输出,后得到的余数为高位先输出,所以正好可以利用栈的特性,将求得的余数放入到栈中,然后再 ...

  7. 使用递归将十进制转换成任意进制(Number Conversion)

    关于递归 什么是递归? 说白了,就是函数自己调用自己,然后被调用的函数继续调用自己,这将无限循环下去,除非代码中有终止调用链的的内容. 解释一下递归的所经历的过程 递归需要有边界条件.递归前进段和递归 ...

  8. 使用链栈来对十进制数进行任意进制的转换

    使用辗转相除法,通过链栈来实现一个十进制数字对任意进制的一个转换,提前声明,这里不包括一进制和零进制的转换. #include"stdio.h" #include<stdli ...

  9. 二进制数与十进制之间的转换以及使用一个函数实现任意进制之间的转换

    其他进制转为十进制都可以实现,只需要将函数中的10和2换掉你需要的就行 #include <stdio.h> #include <math.h>// 1. 二进制转换为十进制 ...

最新文章

  1. RHEL7系统管理之内核管理
  2. C#WINFORM窗体传参的最佳实践
  3. Mybatis是如何实现SQL语句复用功能的?
  4. 报错 插入更新_自增主键,三类插入测验答案,在这里。
  5. 039_MySQL_多表查询
  6. 一个小偷写给失主的信
  7. ❤️《大前端—了解与使用NodesJS》
  8. 链表简介(一)——创建单向动态链表及输出单向链表内容
  9. python小结_Python小结
  10. 视频图像格式YUV详解
  11. 提交表单时,请求的资源[/222/getServlet]不可用(已解决)
  12. MyEclipse10安装破解教程
  13. 学校计算机室计算机购买申请,学校办公用品购买申请报告
  14. 台式计算机如何安装摄像头,台式机怎样安装摄像头
  15. wgs84坐标格式转换度分秒_WGS84经纬度坐标转换到西安80高斯投影坐标。
  16. 对话知名视觉艺术设计师走尺:只要用心 人人是插画师
  17. dz每个php模板页文件,dz模板引擎分析
  18. 无线电能传输LCC-S拓扑/WPT MATLAB/simulink仿真模型
  19. Go语言实战 - 我需要站内搜索
  20. 我来自台湾:普力600 消毒锭_普力-600 消毒片PL-600 SH-XT-K礼盒小套组_易迅发现_易迅网...

热门文章

  1. 如何html中添加动态图片,把动态图片添加到视频画面中 视频添加自定义动态图片 视频加动态logo...
  2. java script创建对象_javascript笔记:深入分析javascript里对象的创建
  3. 创建 linux分区命令,Linux中创建分区
  4. access 子窗体 鼠标滚动不工作_Python GUI项目实战(五)明细信息窗体的完善
  5. 机器学习:怎样才能做到从入门到不放弃?
  6. SparkSQL DataFrame进阶篇
  7. 深度学习 占用gpu内存 使用率为0_深度解析MegEngine亚线性显存优化技术
  8. java更新数据库错误就回滚_Java 中对数据库操作时的 回滚
  9. selenium autoit java_Java+Selenium——AutoIt工具处理文件上传
  10. C语言删掉无关变量无输出,C语言变量类型与输出控制用法实例教程