c语言十进制小数转其他进制,只写出了十进制小数转换成二进制的,求二进制小数转十进制的...
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
#include
#include
#include
#define NUM 2
#define ZERO 0.000001
int PrnMainMenu(void);
void ProcessLoop(void);
void two(void);
void ten(void);
int a,b[10],i=0,c=0;
void integer(int n) //定义整数部分
{
if(n>0)
{
integer(n/NUM);
printf("%d",n%NUM);
}
}
void decimal(double m)//定义小数部分
{
if(m>ZERO)
{
m=m*NUM;
printf("%d",(long)m);
decimal(m-(long)m);
}
}
main() /*主函数*/
{
ProcessLoop();
return 0;
}
void ProcessLoop(void)
{
int iChoice;
iChoice = PrnMainMenu();
while (iChoice != 3)
{
switch(iChoice)
{
case 1:
two();
break;
case 2:
ten();
break;
}
system("pause");/*暂停*/
system("cls"); /*_clearscreen(0);清屏 */
iChoice = PrnMainMenu();//返回主菜单
}
return;
}
void two(void)//十进制转二进制
{
double f;
long n;
printf("请输入原数据:");
scanf("%lf",&f);
if(f<0)
{
printf("-");
f=-f;
}
n=(long)f;//整数部分
printf("转换成%d进制的小数为:",NUM);
integer(n);
printf(".");
decimal(f-n);//小数部分的转换
printf("\n");
}
void ten(void)//二进制转十进制
{
printf("请输入原数据\n");
scanf("%d",&a);
while(a!=0)
{
b[i]=a%10;
a/=10;
i++;
}
i--;
for(;i>=0;i--)
c=c*2+b[i];
printf("十进制为:%d\n",c);
}
int PrnMainMenu(void)//主菜单
{
int iChoice;
printf("\n");
printf("----------------菜单-----------------\n");
printf("\n");
printf(" 1:将十进制数转换为二进制数\n");
printf(" 2:将二进制数转换为十进制数\n");
scanf("%d",&iChoice);
return iChoice;
}
c语言十进制小数转其他进制,只写出了十进制小数转换成二进制的,求二进制小数转十进制的...相关推荐
- java转换2进制_java里怎样把文件转换成二进制
展开全部 转换文件成为二进制数据并保存的32313133353236313431303231363533e78988e69d8331333365643661Java代码: 取出数据并还原文件到本地的j ...
- 小数转换成二进制c语言,只写出了十进制小数转换成二进制的,求二进制小数转十进制的...
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 #include #include #include #define NUM 2 #define ZERO 0.000001 int PrnMainMen ...
- java 10进制转 000x_java 如何把 00 转换成 0x00 或者 10 转换成 0x10
public static void main(String[] args) { String s = "00000018A0010098C68E00989A690000000000BC61 ...
- C语言初阶——6.进制
C语言初阶--6.进制 1. 进制 百度百科: 进制也就是进位计数制,是人为定义的带进位的计数方法,对于任何一种进制-X进制,就表示每一位置上的数运算时都是逢X进一位. 十进制是逢十进一,十六进制是逢 ...
- 十进制小数转换为R进制小数
十进制小数转R进制小数,方法为乘R取整,每次乘以相应之后基数后取结果的整数部分即可.需要注意的是并非所有的十进制小数都能完全转化为R进制小数,这时就需要取近似值. 例: 0.9032D转化成16进制小 ...
- C语言实现:任意进制转换
用途: 用C语言程序来实现任意进制之间的转换(不止2到16之间,任意进制皆可) 思路: 以十进制数为媒介,先将需要转换的数转换成十进制数,再将其转换成目标进制数 将涉及高于十进制的转换的数挑出来,利用 ...
- 进制转换器c语言课程设计作业,C语言课程设计报告--进制转换.doc
C 语 言 课 程 设 计 报 告 设计题目:学生姓名:学生学号:专业班级:学院名称:同组人姓名:指导老师: 2011年 月 日 1 需求分析 问题描述 输入数据要求 以命令行方式运行程序时所带参数用 ...
- 2进制 , 8进制 , 10进制 , 16进制 , 介绍 及 相互转换 及 快速转换
为什么要使用进制数 数据在计算机中的表示,最终以二进制的形式存在 , 就是各种 <黑客帝国>电影中那些 0101010- 的数字 ; 我们操作计算机 , 实际 就是 使用 程序 和 软件 ...
- 16进制数的表示方法及转换
十六进制数具有下列两个特点: 英文字母A,B,C,D,E,F分别表示数字10-15. 计数到F后,再增加1个,就进位. 十六进制数的基数是16,采用的数码是0.1.2.3.4.5.6.7.8.9.A. ...
最新文章
- NFS共享服务挂载时出现“access denied by server while mounting”的解决方法
- jQuery ajax发送POST、JS url跳转、console用法
- ArcEngine的鼠标事件中按键判断~
- r语言 小树转化百分数_“小树”机器人1.0新品发布会
- java io 文件路径_如何从Java项目中的相对路径读取文件? java.io.File找不到指定的路径...
- Nodejs基础01
- cdoj31-饭卡(card) (01背包)
- python安装和更新pip
- mysql 实现row_number_MySQL实现ROW_NUMBER()
- linux 内核代码怎么下载,centos的linux内核源码下载方法
- 办公室计算机设备搬迁计划方案,计算机机房整体搬迁方案稿 执行计划.doc
- lol微信登录服务器,LOL开启微信登录功能测试 绑定微信登陆方法一览
- VS2008 LINK : fatal error LNK1104: cannot open file 'atls.lib'错误解决方案
- 服务器该不该选SSD硬盘储存?
- 利用LANDesk Management进行软件的打包步骤
- vue父组件中调用子组件中的方法 及vue父组件调用孙子组件的方法
- 知识付费领域市场格局与投资观察
- Python经典编程习题100例:第78例:找出年龄最大的人
- Linux开机启动流程分析
- ESP-Prog 下载与调试板介绍
热门文章
- Java字符串与日期互转
- eclipse设置工作空间编码为默认utf-8
- Jlink--SWD脚位连接
- Api demo源码学习(4)--App/Activity/Dialog --Activity以Dialog形式呈现
- 【2010】asp.net GridView分页的实现
- 操作系统知识点大总结
- Java之super
- 从零开始学前端: HTML框架和VS Code安装 --- 今天你学习了吗?(CSS:Day01)
- Python自定义类的成员并不一直是所有对象共享的
- php文件出现UTF-8错误,php – 文件格式UTF8与BOM导致“标头已发送” – 错误