- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
进制转换器设计报告
计算机vc++课程实践报告
进制转换器
设计题目:计算机程序设计实践(C++)
设计时间:2013/9/27
学 院:电子信息学院
专业班级:测控技术与仪器二班
学生姓名:陈发猛 学号:1240308210
胡鹏瑞 1240308213
指导老师:萧寒
一、实践任务
用表单设计一个进制转换的计算器。如图5-8所示。含退格按钮及清除按钮,可进行十进制数转换为二进制以及十进制数转换成十六进制运算,用菜单来进行选择。
创新要求:增加十进制数与二进制数以及十六进制数的相互转化。
二、目的和意义
面向对象程序设计课程设计可以培养学生综合运用所学面向对象程序设计知识和技能分析与解决实际问题的能力,以及严肃认真的科学态度和严谨求实的工作作风。
三、要求(包括原始数据、技术参数、设计要求、图纸量、工作量要求等)??????????
? 采用面向对象程序设计语言C++进行程序开发???
? 选用一种C++语言的开发环境设计界面及程序???
? 在开发环境下,进行程序的运行及调试
四、概要分析: ?
本课程设计是在基于对话框的应用程序中模拟一个进制转换器,本进制转换器可以把十进制转化为二进制或十六进制,以及它们之间的相互转换。系统开发平台为Windows?XP,程序设计设计语言采用Visual?C++6.0,程序运行平台为Windows?98/2000/XP。程序通过调试运行,初步实现了设计目标。
五、实践过程:
步骤一:建立进制转换器的界面
首先,新建一个MFC基于对话框的工程。点击文件-新建,在工程选项卡里选择MFC?AppWizard[exe],给工程命名,点击确定
在接下来的向导里选择基于对话框,其他选项使用默认即可,之间点击完成。
新建单文档应用程序 最后一步中选择:
1.定制对话框:
ID标示以及标题如表:
3.为edit控件映射CString变量Cnumber;
4.在view类定义中中添加:
int numberstate;//标记当前的数字进制
CString connet(CString str,int numberstate,int numberstate1);
CString connet(CString str,int numberstate,int numberstate1);的实现函数:
CString CMyView::connet(CString str,int numberstate,int numberstate1)
{
CString re=;//
int l=str.GetLength();
char *p=new char[l];
int *n=new int[l];
for(int i=0;il;i++)//从str中取出每一位字符到char数组p
{
p[i]=str.GetAt(i);
}
for(int j=0;jl;j++)//将每位char数组中的字符转化成数字存入数组
{
if(p[j]=9)
n[j]=(int)p[j]-48;
else
{
switch (p[j])
{
case A:n[j]=10;break;
case B:n[j]=11;break;
case C:n[j]=12;break;
case D:n[j]=13;break;
case E:n[j]=14;break;
case F:n[j]=14;break;
}
}
}
//将字符数组转换成十进制数字
int nu=1;//标识当前位数变量
int num=1;//当前位数的十进制数字
int tennumber=0;//十进制数字
for(int k=l-1;k=0;k--)
{
num=nu*n[k];
tennumber+=num;
nu=nu*numberstate;
}
//将十进制数转换成需要的进制数字
while(tennumber)
{
int number=tennumber%numberstate1;
CString s;
s.Format(%d,number);
re.Insert(-1,s);
tennumber=tennumber/numberst
您可能关注的文档
- FME常用数据转换.doc
- 3Dmax中英文详细翻译对照.doc
- Modbus协议转换板使用说明.doc
- 各类数控刀具转速进给切削量吃刀量参数.doc
- 数码大师操作指南.doc
- 巧妙转换ProE与ansys间的模型数据.doc
- 转换板大体积混凝土施工方案.doc
- 工程技术资料精选--板式转换层混凝土厚板施工工法.doc
- GPS-CORS操作步骤(华测+南方3.0).doc
- 正弦波与方波的相互转换.doc
- 2025年演出经纪人演出数据跨境流动法律问题专题试卷及解析.pdf
- 2025年信息系统安全专家物联网安全日志分析专题试卷及解析.pdf
- 2025年信息系统安全专家云环境持续安全监控专题试卷及解析.pdf
- 2025年信息系统安全专家ISMS内部审核流程与技巧专题试卷及解析.pdf
- 2025年演出经纪人艺人定位与数据化运营策略专题试卷及解析.pdf
- 2025年演出经纪人商务谈判中的僵局处理与冲突化解专题试卷及解析.pdf
- 2025年演出经纪人国际演出合同纠纷解决机制专题试卷及解析.pdf
- 2025年注册项目管理师蒙特卡洛模拟在敏捷项目迭代周期估算中的应用专题试卷及解析.pdf
- 2025年AWS认证子网与AWSSimSpaceWeaver仿真网络专题试卷及解析.pdf
- 2025年AWS认证SQS与EMR集群任务调度专题试卷及解析.pdf
原创力文档


文档评论(0)