ImageVerifierCode 换一换
格式:DOCX , 页数:13 ,大小:109.11KB ,
资源ID:12953972      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/12953972.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(计算机网络课程设计实验报告曼彻斯特的编码模拟来自东华理工大学学子Word文档格式.docx)为本站会员(b****1)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

计算机网络课程设计实验报告曼彻斯特的编码模拟来自东华理工大学学子Word文档格式.docx

1、 1. 3 功能划分 1. 4 运行需求及其他 3第2章 总体设计2. 1 系统方案2. 2 软件结构 4第3章 详细设计 5第4章 实验源码 6第5章 实验测试 95. 1 测试步骤及内容5. 2 测试总结 10第6章 实验总结 11 第一章 需求分析1. 1 引 言为方便日后软件的维护及升级,编写此需求说明书。按照此次课程设计的相关要求,在老师的指导下设计完成了程序。程序推荐在VC+ 6.0的环境下运行。以下是程序中用到的相关变量及函数名称释义:int d204,用来存储转换后的二进制数的数组char c20, 用来存储十六进制数据的数组int i, 用来进行运算及统计数组长度的变量int

2、 g, 用来存储数组长度的变量int u, 用来计算输出二维数组第一维的维数的变量int j 用来计算输出二维数组第二维的维数的变量int e, 用来判断是否进行图像输出void Man() 将字符串数据转换为十进制数,然后进行二进制转换的函数void Tu() 显示曼彻斯特的模拟编码设计过程中使用到的参考资料有如下:1、C程序设计(第四版)-谭浩强 著,清华大学出版社2、计算机网络(第三版)-吴功宜 著,清华大学出版社3、软件工程(2010年6月第一版)-景秀丽、吕洪林著,中国水利水电出版社1. 2 任务概述任务的目的是输入十六进制数据,输出曼彻斯特编码模拟的波形图。最终使程序能够在VC+6

3、.0中运行。要求在三天的上机课内完成任务,经老师验证后,方可准备实验报告。报告的内容应该包括封面、目录、需求分析、总体设计、详细设计、编码(详细写出编程步骤)、测试的步骤和内容、课程设计总结、参考资料等。1. 3 功能划分第一部分为输入数据;第二部分为字符串转换十进制数;第三部分为十进制转换二进制数;第四部分为输出曼彻斯特模拟编码;第五部分为主函数入口。1. 4 运行需求及其他 程序在VC+6.0的环境下编写,可以在支持语言的环境下运行。软件不具备保密功能,但可维护性强。若用户对保密性要求高,不推荐使用或测试。第2章 总体设计2. 1 系统方案 数据流图 : 输入数据 显示图像按照数据流图的实

4、现方式,推荐设计两个函数,第一个是将字符串转换为第3章 实验源码实验源码如下 :(附编程步骤:1、写文件头并建立main函数2、定义要创建的两个子函数3、main函数中调用子函数并进行第一次编译检查4、完成子函数的详细内容5、进行最后的编译及运行检测 )#includestdio.hString.hint d204=0;/用来存储转换后的二进制数char c20=0; /用来存储十六进制数据int i=0;/用来进行计算int e=0;int g;/用来计算数组长度/void Man()/将数据进行二进制转换 printf(请输入十六进制数据(小于20位):); scanf(%s,c); wh

5、ile(ci)/将字符串数据转换为数字 if(ci=0&ciAF ci=ci-55;af ci=ci-87; else printf(数据错误!请退出重来!ne=1; return; i+; g=i; int j;该数据转换为二进制为: for(i=0;i=0;j-) dij=ci%2; ci/=2; for(j=0;j4;j+)%d,dij);/void Tu()/显示曼彻斯特的模拟编码 if(e=1)该数据的曼彻斯特模拟编码为 :nn for(int u=0;ui;u+) for(int j=0; if(u=(g-1)&j=3) if(duj=0) printf(| else| else

6、if(duj=0) printf( if(j=3&g) if(du+10=du3) printf(| if(duj+1=duj) else else printf(/void main() Man(); Tu();第4章 实验测试5. 1 测试步骤及内容首先进行正确的数据测试第一次测试:输入十六进制数据为:a12 第二次测试: 输入十六进制数据为:0a12接下来进行不正确数据的测试 第三次测试: 输入的数据为:ppq第四次测试:12sq测试总结:输入合适或者不合适的数据都可以得到正确的回复,满足了课程设计的要求。第5章 实验总结前前后后大的修改代码不下六次,第一次的代码当然是不完善的,虽然经过

7、自己的多次验证,认为已经是正确的。其实当时还存在相当大的缺陷,比如图像的显示非常难看,没有显示出竖杠“|”,也不能进行多次循环执行。认识到这些缺点后,果断开始进行完善。第一步是对多次循环进行完善。第一次尝试使用for循环来实现。失败后,选择了最不受喜欢的goto语句,我居然实现了!经过对循环内容的多次修改,实现了输入正确数据显示图像之后的循环,包括在选择的时候退出程序。也实现了输入错误数据提示之后的循环及退出。万万没料到的是第二天经过老师的测试,发现循环没问题,可是在第二次循环输入的时候,对字母(例如“a”)进行二进制转换时竟然会出现错误。但是数字却不会。疑惑的同时,接到老师的提醒,遂寻找修正

8、错误。花去大量时间之后,发现个人解决不了,便认为是循环方式出错。改为while循环,修改完成之后,不仅发现第二次对字母进行二进制转换会出错,而且会在第二输出二进制数是多加上一组四个零的数据。无奈之下只好放弃循环。放弃循环之后,程序没有出现什么奇怪的错误了。于是进行第二步,对图像显示的完善。运用特殊字符将“”、“|”、“”输出来了。再次找老师进行审查。老师提出了本次课程设计本人的最后一个问题:最后输出图像多出了一竖。经过添加判断语句之后完善了这个缺陷,老师也终于“无可奈何”的认可了我的程序。最后,我对我第三次(goto语句)的代码还是存在很多疑问,为什么我第一次进行对字母的二进制转换没有问题,第二次会出错,数字却不会一起出错?第四次(while语句)的代码为什么每次第二次进行二进制转换都会多出四个零?知道此次课程设计结束,为什么字母第二次转换会出现错误依然没有解决。我将利用我自己的课余时间找出问题所在,尽全力解决。最后的最后,我再一次认识到自己编码能力的不足,今后一定会加强程序设计的锻炼,早日成为一个合格的程序猿

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

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