精华内容
下载资源
问答
  • 编写把一个十进制数转换为R进制 (如:R=2,则转换为二进制,R=7则转换为7进制)的数制转换算法函数(要求利用栈来实现) 【算法步骤】 ① 初始化一个空栈S。 ② 当十进制数N非零时,循环执行以下操作: l把N...

    编写把一个十进制数转换为R进制

    (如:R=2,则转换为二进制,R=7则转换为7进制)的数制转换算法函数(要求利用栈来实现)
       


    【算法步骤】

    ① 初始化一个空栈S

    当十进制数N非零时,循环执行以下操作:

    lN8求余得到的八进制数压入栈S
    lN更新为N8的商。

    当栈S非空时,循环执行以下操作:

    l弹出栈顶元素e

           输出e

    【算法描述】

    void conversion(int N)

    {//对于任意一个非负十进制数,打印输出与其等值的八进制数

       InitStack(S);  //初始化空栈S

       while(N)  //N非零时,循环

       {

          Push(S,N%8);  //N8求余得到的八进制数压入栈S

          N=N/8;  //N更新为N8的商

       }

       while(!StackEmpty(S))//当栈S非空时,循环

       {

          Pop(S,e);  //弹出栈顶元素e

          cout<<e;  //输出e

       }

    }

    C语言完整代码:

    /*进制转换*/ 
    #include <stdio.h>
    #include <stdlib.h>
    
    #define ERROR 0
    #define OK 1
    #define  MAXSIZE  20
    typedef int ElemType;
    
    typedef struct Sqstack{
    	ElemType *top;
    	ElemType *base;
    	ElemType stacksize;
    }stack;
    
    /*Function:栈初始化 */ 
    int Initstack04(stack *s){
    	s->base=(ElemType *)malloc(MAXSIZE*sizeof(ElemType));//申请空间
    	if(s->base==NULL) {
    		printf("栈创建失败!");
    		return ERROR; 
    	}
       s->top=s->base;
       s->stacksize=MAXSIZE;
       printf("栈创建成功!"); 
       return OK;
    }
    /*Function:入栈*/ 
    int Push04(stack *s,ElemType e){
    	if(s->top-s->base==MAXSIZE){
    		return ERROR;
    	}
    	*s->top++=e;
    	return OK;
    } 
    /*Function:出栈*/ 
    int Pop04(stack *s){
    	if(s->top==s->base){
    		printf("栈为空栈!\n");
    		return ERROR;
    	}
    	s->top--;
    	printf("%d ",*s->top);
    	return OK;
    }
    /*Function:进制转换*/
    void transition(stack *s){
         int n,m;
         printf("请输入您要转换的数字:\n");
         scanf("%d",&m);
         printf("请输入您要转换的进制:\n");
         scanf("%d",&n);
         while(m){
         	Push04(s,m%n);//余数入栈 
         	m=m/n;
            }
    	 printf("转换结果为:\n");
    	 while(s->top!=s->base){//输出 
    	 	Pop04(s);
    	 }
    }
    void main(){
    	stack s;
    	Initstack04(&s);
    	transition(&s);
    }

    运行结果:

     

    展开全文
  • 数据结构(C++)有关练习题

    热门讨论 2008-01-02 11:27:18
    7、 编写一个程序,将10进制数转换为其它(2-9)进制数。可以将要转换的数重复除以基数,然后讲除的余数按反方向排列来实现; 8、 已知A[n]为正数数组,试写出实现下列运算的递归算法; a. 求数组A中的...
  • 自第一版出版以来,都是国内读者的普遍好评,累计销量近万册。 《C#高级编程(第7版)》的顶级专家作者团队首先复习了C#的基础知识,之后详细讲解了该语言和架构中的所有新增功能,使读者能立即开始编写 Windows...
  • 自第一版出版以来,都是国内读者的普遍好评,累计销量近万册。 《C#高级编程(第7版)》的顶级专家作者团队首先复习了C#的基础知识,之后详细讲解了该语言和架构中的所有新增功能,使读者能立即开始编写 Windows...
  • 自第一版出版以来,都是国内读者的普遍好评,累计销量近万册。 《C#高级编程(第7版)》的顶级专家作者团队首先复习了C#的基础知识,之后详细讲解了该语言和架构中的所有新增功能,使读者能立即开始编写 Windows...
  • 自第一版出版以来,都是国内读者的普遍好评,累计销量近万册。 《C#高级编程(第7版)》的顶级专家作者团队首先复习了C#的基础知识,之后详细讲解了该语言和架构中的所有新增功能,使读者能立即开始编写 Windows...
  • 自第一版出版以来,都是国内读者的普遍好评,累计销量近万册。 《C#高级编程(第7版)》的顶级专家作者团队首先复习了C#的基础知识,之后详细讲解了该语言和架构中的所有新增功能,使读者能立即开始编写 Windows...
  • 自第一版出版以来,都是国内读者的普遍好评,累计销量近万册。 《C#高级编程(第7版)》的顶级专家作者团队首先复习了C#的基础知识,之后详细讲解了该语言和架构中的所有新增功能,使读者能立即开始编写 Windows...
  • 自第一版出版以来,都是国内读者的普遍好评,累计销量近万册。 《C#高级编程(第7版)》的顶级专家作者团队首先复习了C#的基础知识,之后详细讲解了该语言和架构中的所有新增功能,使读者能立即开始编写 Windows...
  • 自第一版出版以来,都是国内读者的普遍好评,累计销量近万册。 《C#高级编程(第7版)》的顶级专家作者团队首先复习了C#的基础知识,之后详细讲解了该语言和架构中的所有新增功能,使读者能立即开始编写 Windows...
  • 自第一版出版以来,都是国内读者的普遍好评,累计销量近万册。 《C#高级编程(第7版)》的顶级专家作者团队首先复习了C#的基础知识,之后详细讲解了该语言和架构中的所有新增功能,使读者能立即开始编写 Windows...
  • 自第一版出版以来,都是国内读者的普遍好评,累计销量近万册。 《C#高级编程(第7版)》的顶级专家作者团队首先复习了C#的基础知识,之后详细讲解了该语言和架构中的所有新增功能,使读者能立即开始编写 Windows...
  • 易语言 茶凉专用模块

    2010-05-04 12:26:36
    子程序 到十进制, 整数型, 公开, 将2,8,16进制文件转换到10进制数值(返回十进制数) .参数 文本, 文本型, , 2,8,16进制文件 .参数 进制, 整数型, 可空, 默认为十六进制 2为二进制,8为八进制,16为16进制 .子程序 读...
  • 象棋程序中用到的数据结构 349 答案 351 编程练习 353 第八章 模块化编程 354 模块 354 公用和专用 355 extern修饰符 356 头文件 358 模块体 361 使用无限数组的程序 361 用于多文件的Makefile 364 ...
  • 十进制码: 5 6 7 8 共占用4个字节。ASCII码文件可在屏幕上按字符显示, 例如源程序文件就是ASCII文件,用DOS命令TYPE可显示文件的内容。 由于是按字符显示,因此能读懂文件内容。  二进制文件是按二进制的编码...
  • 由于数值单元存放的是二进制数,而用户熟悉的是十进制数,所以应将数值单元中的二进制转换为十进制数,即BCD码。要通过数码管显示出当前数值,还必须将BCD码进一步转换为七段码,转换的最终结果数据存放于显示缓冲区...
  • 程序和进制 - 指令和程序 / 冯诺依曼机 / 二进制和十进制 / 八进制和十六进制 变量和类型 - 变量的命名 / 变量的使用 / input函数 / 检查变量类型 / 类型转换 数字和字符串 - 整数 / 浮点数 / 复数 / 字符串 / 字符...
  • C#编程经验技巧宝典

    热门讨论 2008-06-01 08:59:33
    58 <br>0081 文本中首字母改为大写 59 <br>0082 C#随机数的产生 59 <br>0083 身份证从15位升至18位算法 60 <br>0084 十进制二进制数的算法 60 <br>0085 十进制八进制数的算法 61...
  • javascript入门笔记

    2018-05-15 15:01:07
    面积 = π * r * r; 5、在控制台中打印输出 半径为 * 的圆的周长是 * 半径为 * 的圆的面积是 * 笔记本名称:ThinkPad E460 笔记本价格:3000 笔记本库存:100台 1、运算符 1、位运算符 1、作用 ...
  • 3. 关系结构模型:关系式数据结构把一些复杂的数据结构归结为简单的二元关系(即二维表格形式)。常见的有Oracle、mssql、mysql等 二、 主流数据库 数据库名 公司 特点 工作环境 mssql 微软 只能能运行在windows平台,...
  • Java编写的山寨QQ,多人聊天+用户在线 21个目标文件 摘要:JAVA源码,媒体网络,山寨QQ,Java聊天程序 Java编写的山寨QQ,多人聊天+用户在线,程序分服务端和客户端,典型C/S结构, 当用户发送第一次请求的时候,验证...
  • JAVA上百实例源码以及开源项目

    千次下载 热门讨论 2016-01-03 17:37:40
     Java编写的山寨QQ,多人聊天+用户在线,程序分服务端和客户端,典型C/S结构,  当用户发送第一次请求的时候,验证用户登录,创建一个该qq号和服务器端保持通讯连接得线程,启动该通讯线程,通讯完毕,关闭Scoket...
  • 8.14写一函数,输入一个十六进制数,输出相应的十进制数。 64 8.15给出年,月,日,计算该日是该年的第几天。 65 第9章 预处理命令 66 9.1定义一个代参数的宏,使两个参数的值互换,并写出程序,输入两个数作为使用...
  • php高级开发教程说明

    2008-11-27 11:39:22
    能够快速地从一点到另一点—但其他人可能认为这并不容易。如果你从开发组的某个人手 中获得一个源文件并需要添加一些特征,首先必须对其进行整体把握,并区分代码的各个部分。 理想情况下,这一过程将和阅读源文件...
  • [size=15.5556px]A、整型常量(二进制,八进制十进制,十六进制) [size=15.5556px]B、整型变量(基本型,短整型,长整型,无符号型) [size=15.5556px]变量占用空间大小(字节) [size=15.5556px]变量所表示数的范围 [size=15...
  • java开源包1

    千次下载 热门讨论 2013-06-28 09:14:34
    使用redis作缓存时,支持list类型的高级数据结构,更适合论坛帖子列表这种类型的数据 5. 支持混合使用redis缓存和memcached缓存。可以将列表数据缓存到redis中,其他kv结构数据继续缓存到memcached 6. 支持redis的...
  • java开源包12

    热门讨论 2013-06-28 10:14:45
    使用redis作缓存时,支持list类型的高级数据结构,更适合论坛帖子列表这种类型的数据 5. 支持混合使用redis缓存和memcached缓存。可以将列表数据缓存到redis中,其他kv结构数据继续缓存到memcached 6. 支持redis的...

空空如也

空空如也

1 2 3
收藏数 55
精华内容 22
关键字:

数据结构编写十进制转r进制

数据结构 订阅