#include<stdio.h>
#include<stdlib.h>
#define MAXSIZE 100 /*链栈类型定义*/
typedef struct node
{
int data1[MAXSIZE];
int top;
}StackNode; /*队列类型定义*/
typedef struct point
{
int data2[MAXSIZE];
int frot, rear;
}LQueue; /*整数部分转换*/
void Push_LinkStack(StackNode *s,int z,int k)
{
int n;
while(z!=)
{
n=z%k;
z=z/k;
if(s->top==MAXSIZE-)
{
printf("栈满!");
return;
}
else
{
s->top++;
s->data1[s->top]=n;
}
} } /*小数部分转换*/
void In_LQueue(LQueue *q,float f,int k,int m)
{
int i,j;
f=f*k;
for(i=;i<m;i++)
{
j=(int)f;
if(q->rear==MAXSIZE-)
{
printf("队满!");
return;
}
else
{
q->rear++;
q->data2[q->rear]=j;
}
f=f-j;
f=f*k;
}
} void Output(StackNode *s,LQueue *q,int m)
{
int y,i;
int x,z;
if(s->top==-)
{
printf("栈空");
}
else
{
while(s->top!=-)
{
x=s->data1[s->top];
s->top--;
if(x<=)
{
printf("%d",x);
}
else
{
z=x-;
printf("%c",'A'+z);
}
}
}
printf(".");
while(q->frot!=q->rear)
{
q->frot++;
y=q->data2[q->frot];
if(y<=)
{
printf("%d",y);
}
else
{
i=y-;
printf("%c",'A'+i);
}
}
printf("\n");
} void menu()
{
printf("*********************\n");
printf("* 进制转化器 *\n");
printf("*1----------开始转换*\n");
printf("*0--------------退出*\n");
printf("*********************\n");
} int main()
{
StackNode *s;
s=(StackNode *)malloc(sizeof(StackNode));
s->top=-;
LQueue *q;
q=(LQueue *)malloc(sizeof(LQueue));
q->frot=-;
q->rear=-;
float n,f;
int k,sel,z,m;
do
{
menu();
printf("\n请输入你的选择:");
scanf("%d",&sel);
switch(sel)
{
case :printf("\n请输入一个十进制的非负小数:");
scanf("%f",&n);
printf("\n要将其转换成几进制数;\n");
printf("(2、8、16)\n");
printf("你的选择:");
scanf("%d",&k);
printf("\n结果需保留几位小数:");
scanf("%d",&m);
z=(int)n;
f=n-z;
Push_LinkStack(s,z,k);
In_LQueue(q,f,k,m);
Output(s,q,m);
}
}while(sel!=);
return ;
}

进制转换器(十进制转n进制)的更多相关文章

  1. java进制转换器 图形用户界面 十进制及其相反数分别转化为二,四,八,十六进制

    package com.rgy.Test; import java.awt.Color; import java.awt.FlowLayout; import java.awt.GridLayout; ...

  2. C语言dos程序源代码分享(进制转换器)

    今天给大家分享一个dos程序的源代码 这个程序是本人在学习中的经验分享 如果有问题或者建议,欢迎大家一起交流 源代码: /*本程序为一个进制转换器 本程序不作为商业用途,完全为技术交流 喜欢C语言的同 ...

  3. - >code vs 1475 m进制转十进制

    1475 m进制转十进制  时间限制: 1 s  空间限制: 128000 KB  题目等级 : 白银 Silver 题解  查看运行结果   题目描述 Description 将m进制数n转化成一个 ...

  4. ->code vs 1474 十进制转m进制

    1474 十进制转m进制  时间限制: 1 s  空间限制: 128000 KB  题目等级 : 白银 Silver 题解  查看运行结果   题目描述 Description 将十进制数n转换成m进 ...

  5. C语言:其他进制转换为十进制(方法二)

    #include<stdio.h> #include<math.h> #include<string.h> #include<ctype.h> //其他 ...

  6. wikioi 1475 m进制转十进制

    /*===================================== 1475 m进制转十进制 题目描述 Description 将m进制数n转化成一个十进制数 m<=16 题目保证转 ...

  7. wikioi 1474 十进制转m进制

    /*===================================== 1474 十进制转m进制 题目描述 Description 将十进制数n转换成m进制数 m<=16 n<=1 ...

  8. c-八进制 转 十进制

    概述 其实x进制转十进制的算法都差不多,不过如果是针对于字符形式,他们却有点不同.使用指针和数组的形式计算,又不同.这里演示将字符型的数组形式的八进制转成十进制: #include <stdio ...

  9. 数据结构之【栈】+十进制转d进制(堆栈数组模拟)

    其实这篇文章开出来主要是水文章%% %% 栈--后进先出的婊 特点:只能在某一端插入和删除的特殊的线性表 操作:进栈--PUSH->向栈顶插入元素 出栈--POP-->将栈顶元素删除 实现 ...

  10. python经常使用的十进制、16进制、字符串、字节串之间的转换(长期更新帖)

    进行协议解析时.总是会遇到各种各样的数据转换的问题,从二进制到十进制,从字节串到整数等等 废话不多上.直接上样例 整数之间的进制转换: 10进制转16进制: hex(16)  ==>  0x10 ...

随机推荐

  1. 转:从开源项目学习 C 语言基本的编码规则

    从开源项目学习 C 语言基本的编码规则 每个项目都有自己的风格指南:一组有关怎样为那个项目编码约定.一些经理选择基本的编码规则,另一些经理则更偏好非常高级的规则,对许多项目而言则没有特定的编码规则,项 ...

  2. JavaScript的事件对象_其他属性和方法

    在标准的 DOM 事件中,event 对象包含与创建它的特定事件有关的属性和方法.触发的事件类型不一样,可用的属性和方法也不一样. 在这里,我们只看所有浏览器都兼容的属性或方法.首先第一个我们了解一下 ...

  3. @requestBody注解的使用

    1.@requestBody注解常用来处理content-type不是默认的application/x-www-form-urlcoded编码的内容,比如说:application/json或者是ap ...

  4. hdfs namenode -initializeSharedEdits 和 hdfs namenode -bootstrapStandby

    hdfs namenode -initializeSharedEdits 将所有journal node的元文件的VERSION文件的参数修改成与namenode的元数据相同 hdfs namenod ...

  5. Linux技巧学习

    主要是收集一些Linux的技巧: 1.编写可靠shell脚本的八个建议 指定bash,推荐使用 /usr/bin/env bash 和 /bin/bash,不要使用/usr/bin/bash. set ...

  6. [转]Android WebView播放视频(包括全屏播放),androidwebview

    Android WebView播放视频(包括全屏播放),androidwebview 最近项目开发中用到了WebView播放视频的功能,总结了开发中犯过的错误,这些错误在开发是及容易遇到的,所以我这里 ...

  7. Java中的泛型方法

    泛型是什么意思在这就不多说了,而Java中泛型类的定义也比较简单,例如:public class Test<T>{}.这样就定义了一个泛型类Test,在实例化该类时,必须指明泛型T的具体类 ...

  8. @ExceptionHandler

    @Controller public class AccessController { /** * 异常页面控制 * * @param runtimeException * @return */ @E ...

  9. javascript图片切换

    JavaScript 图片滑动切换效果 作者:cloudgamer 时间: 2009-09-25 文档类型:原创 来自:蓝色理想 第 1 页 JavaScript 图片滑动切换效果 [1] 第 2 页 ...

  10. 《Java程序设计》实验五 实验报告

    实验五 java网络编程 实验内容 XP基础 XP核心实践 相关工具 实验要求 1.没有Linux基础的同学建议先学习<Linux基础入门(新版)><Vim编辑器> 课程 2. ...