欢迎来到天天文库
浏览记录
ID:59317735
大小:248.50 KB
页数:6页
时间:2020-09-05
《软件工程 编码.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、实验三实验项目编码日期2015-11-09专业班级计科12(3)组号10同组者杨爱红、李香、陈晓彤、张家秀学生学号姓名项雪丽机号6-5成绩一、实验目的掌握结构化编程,对程序源代码进行工程文档化处理二、主要仪器设备微型计算机系统,MSVisio2003软件,IDE软件三、实验原理与方法根据提供的非结构化伪码或源代码,编写出结构化的程序。结构化程序设计的原则(使用顺序、选择、重复基本控制结构表示程序逻辑,控制结构的单入口与出口等)为指导,使用约束型流程图、NS或PAD图进行结构化的设计;采用自顶向下和逐步细化的原则,导出程序的
2、结构化编码。四、实验内容与步骤1、主要内容根据给定的非结构化案例和实验大纲的要求,建立模块结构化模型(主模块、子模块),并编写每个模块的结构化文档化代码。案例:复制命令接口:<程序名>[参数1][参数2]功能:是将命令行参数中的参数1标识的文件,复制到参数2标识的文件中,如命令行中只有一个文件名则把该文件写到标准输出文件(显示器)中。【源码】#includemain(intargc,char*argv[]){FILE*fp1,*fp2;charch;intSel;Sel=argc;if(Sel==1)go
3、toSel_No;if((fp1=fopen(argv[1],"rt"))==NULL)gotoSel_Sr;if(Sel==2)fp2=stdout;elseif((fp2=fopen(argv[2],"wt+"))==NULL)gotoSel_Dt;while((ch=fgetc(fp1))!=EOF)fputc(ch,fp2);fclose(fp1);fclose(fp2);gotoSel_EndSel_No:{printf("havenotenterfilenamestrikeanykeyexit");getch(
4、);exit(0);}Sel_Sr:{printf("Cannotopen%s",argv[1]);getch();exit(1);}Sel_Dt:{printf("Cannotopen%s",argv[1]);getch();exit(1);}Sel_End:}要求:(1)增加设计命令使用方法的提示,若参数仅是/?则显示命令的使用说明;(2)增加设计命令执行后结果提示。(3)源代码结构化处理。(4)文档化处理:前置的功能说明、变量作用说明、数据结构说明、控制逻辑说明、关键语句说明。2、实验主要步骤1)系统的启动过
5、程启动windows,打开visio2003软件,在“文件”新建中选择所要绘制图形的类型,然后选择“文件”中要建立的形状类型,即可绘图。打开visualc++6.0,即可进行程序编译。2)文档的建立过程根据给定的一段编码进行修改、注释并绘图。绘图时先选择好模板,建立好文档,点击插入,插入新页,保存,命名。3)程序结构模型的建立过程在本次实验中,根据老师给定的一段源程序,对源程序进行结构化处理以及注释,并在c++软件中编译运行,在CMD窗口中调试程序,看是否完成两个文件间的内容复制,并用格式<程序文件名>?查看帮助信息。然
6、后根据修改后的源程序代码,在visio软件里画出相对应的程序结构化模型图(包括约束性流程图、NS图、PAD图)。五、完整的实验结果1、提交结构模型与代码工程文档:班级_学号_MSD.vsd、班级_学号_MPC.doc2、程序结构化模型图图1:程序流程图图2:N-S图图3:PAD图3、调试成功的结构化、文档化源编码:(附详细的编码打印)1)接口设计:2)代码#include#include#include#include#defineN200//预定
7、义没N的值为常数200intmain(intargc,char*argv[]){chartotalLine[N];//定义可存放N个字符的数组来临时存放每行的数据FILE*fp1,*fp2;//定义两个文件指针fp1,fp2if(argc==1){printf("没有文件名,按任意键退出!");getchar();exit(-1);}if(strcmp(argv[1],"\?")==0)//输入的是否是"?",显示参数帮助信息{printf("cp帮助信息:");printf("1.cp的功能是完成两个文件间内容的
8、复制");printf("2.cp格式:<程序名>[参数1][参数2]");printf("3.参数1:源文件名及其路径");printf("4.参数2:目标文件名及其路径");printf("5.参数为/?表示在屏幕上显示帮助信息");exit(0);}fp1=fopen(argv
此文档下载收益归作者所有