十进制和二进制相互转化程序的设计书.docx

上传人:b****3 文档编号:26796708 上传时间:2023-06-22 格式:DOCX 页数:12 大小:344.74KB
下载 相关 举报
十进制和二进制相互转化程序的设计书.docx_第1页
第1页 / 共12页
十进制和二进制相互转化程序的设计书.docx_第2页
第2页 / 共12页
十进制和二进制相互转化程序的设计书.docx_第3页
第3页 / 共12页
十进制和二进制相互转化程序的设计书.docx_第4页
第4页 / 共12页
十进制和二进制相互转化程序的设计书.docx_第5页
第5页 / 共12页
点击查看更多>>
下载资源
资源描述

十进制和二进制相互转化程序的设计书.docx

《十进制和二进制相互转化程序的设计书.docx》由会员分享,可在线阅读,更多相关《十进制和二进制相互转化程序的设计书.docx(12页珍藏版)》请在冰豆网上搜索。

十进制和二进制相互转化程序的设计书.docx

十进制和二进制相互转化程序的设计书

十进制和二进制相互转化程序设计书

需求分析

随着技术的不断提高,进制转换向着简单化,规模化发展,而对于只能识别二进制0和1码的计算机来说,如何翻译成人类可以认识和编译的语言,和安全加密等给信息管理有关的信息随之增加。

在这种情况下单靠人工来处理这些信息不但显得大不从心,而且极容易出错。

因此,需要开发二进制与十进制互换系统,该系统可以实现由计算机代替人工执行一系列复杂而繁琐的操作,使得办公人员可以轻松快捷的完成进制转换的任务。

总结系统需求分为大体分为5个模块:

首先第一个需要数据的信息输入,即输入数据的基本信息包括输入的进制选项,所输入的二进制位数,所输入的二进制数,所输入的十进制数和判断是否全1或全0五个模块。

第二个需求是判断数据进制选项信息,在信息和科技不断进步的今天,数据及时准确的更新成了任何一个系统的首要任务,本系统应时代所需设计了数制信息功能,包括对包括数据的进制,二进制数据的位数,十进制数据,进行进制转换计算。

第三个需求是所输入的二进制数据,数据的运行使用主要是解决向十进制转换

第四个需求是所输入的十进制数据,数据运行使用主要是解决向二进制转换。

第五个需求是打印退出,在对系统进行操作后,退出系统。

 

1.1数据需求分析

本系统的主要数据进制转换的实现。

转换包括:

二进制数向十进制数转换,十进制数向二进制数转换,判断是否为全0或全1,是否继续执行等。

 

1.2功能需求分析

本程序功能为二进制和十进制的相互转换,二进制转十进制主要根据进制转换的根本方法,分别乘以2的次方得到十进制数;十进制转二进制主要根据“除2取余法”得到二进制数。

另外,本程序简单易懂,操作简便,给出引导说明,以及还出错处理,只需按照提示输入即可用。

本系统主要实现对二进制与十进制之间互换,需要实现以下几个方面的功能:

(1)二进制转十进制:

选择二进制向十进制转换,选择二进制位数,输入二进制数,进行数制转换,输出结果,判断是否继续。

(2)十进制转二进制:

选择十进制向二进制转换,输入十进制数,进行数制转换,输出结果,判断是否继续。

 

2系统总体设计

 

2.1系统模块划分

本系统主要是对二进制与十进制互换的管理,包括了二进制转十进制、十进制转二进制。

整个系统分为以下几个模块。

1、主界面模块

本模块提供选择界面的欢迎界面和主菜单界面,供用户选择与执行各项操作工作。

2、输入界面

本模块用于输入数据信息,例如输入二进制位数并输入二进制数(3,101)等。

3、显示转换结果

本模块用于显示转换后的数据信息,以及提供是否继续信息。

 

2.2系统模块结构图

算法

二进制转十进制:

通过循环将二进制每一位分别乘以2的相应次方,相加得到十进制数;

十进制转二进制:

通过“除二取余”发循环,将每一位存在一个数组中;直到除数为0,将此数组逆置,得到该数相应的二进制数。

 

3系统详细设计

3.1程序流程图

 

 

 

 

 

 

3.2中文DOS界面

在VC++6.0环境中将已编写好的程序代码通过编译、调试和运行操作,即可得到以下DOS界面。

 

3.3程序代码清单

 

/*二进制与十进制的相互转换*/

#include

#include

#include

#include

voidmain()

{

charc,Y[33],temp[33];

intn,i=0,k,j=0;

doubleT;

for(c='y';c!

='n'&&c!

='N';)

{cout<<"请选择:

"<

cout<<"1.二进制转十进制;"<

cin>>k;

switch(k)

{

case1:

{

printf("请输该数位数:

\n");

cin>>n;

cout<<"请输该数:

";

for(i=0;i

{

cin>>Y[i];

if(Y[i]!

='0'&&Y[i]!

='1')

{

cout<<"输入有误!

"<

break;

}

}

if(i

break;

else

{

for(T=0,i=0;n>0;i++)

{

if(Y[i]=='1')T=T+pow(2,n-1);

n=n-1;

}

cout<<"该数的十进制为:

"<

break;

}

}

case2:

{

cout<<"请输入十进制数:

"<

cin>>n;

for(i=0;n!

=0;i++)

{

k=(n%2);

n=n/2;

if(k==1)Y[i]='1';

else

if(k==0)Y[i]='0';

}

for(j=0,i=i-1;i>=0;i--,j++)

temp[j]=(int)Y[i];

temp[j]='\0';

cout<<"该数的二进制数为:

";

for(i=0;temp[i]!

='\0';i++)

cout<

break;

}

default:

cout<<"输入有误!

"<

}

cout<

";

cin>>c;

cout<

}

}

4系统连编与运行结果

4.1程序运行起始界面

 

 

4.2输入一个十进制的正整数,转化为二进制

 

4.3输入一个二进制数,转化为十进制

 

4.4输入一个十进制的负数,转化为二进制

 

4.5输入一个十进制小数,转化为二进制时,提示为

总结

 

通过此次对数据结构课程设计课题的实践操作,本设计开发的二进制与十进制相互转换系统从最后的测试结果来看,基本上实现了二进制与十进制互换的几大功能:

按选项选择输入操作,根据选项选择输入的二进制数位数,输入二进制转十进制,输入十进制转二进制,判断是否为全0或全1等功能要。

系统采用模块化程序设计的方法,便于不同功能操作间的独立与联系。

本系统经过测试,证明其运行是可靠、稳定的。

但在系统设计中中也遇到很多的问题,并且本系统的功能还需要不断的完善和改进,在以后的空闲时间里进一步完善,使系统功能更加完善。

在此次设计过程中,得益于老师的尽心指导。

在此表示由衷的感谢!

 

参考文献

[1]谭浩强.C程序设计(第三版).北京:

清华大学出版社,2002.7

[2]严蔚敏,吴伟民.数据结构(C语言版).北京:

清华大学出版社,2003.4

[3]商信华.数据结构.西北大学出版社,2005.6

[4]王珊,萨师煊.数据库系统概率.高等教育出版社,2004.6

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > PPT模板 > 其它模板

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1