周兵软件工程实验报告.docx

周兵软件工程实验报告.docx

ID:57438595

大小:99.94 KB

页数:8页

时间:2020-08-16

周兵软件工程实验报告.docx_第1页
周兵软件工程实验报告.docx_第2页
周兵软件工程实验报告.docx_第3页
周兵软件工程实验报告.docx_第4页
周兵软件工程实验报告.docx_第5页
资源描述:

《周兵软件工程实验报告.docx》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、《软件工程》实验报告一.实验目的1.能按照软件工程的思想,采用面向过程的方法开发出一个小型软件系统。2.在软件系统开发过程中,能综合利用一门编程语言和软件工程等多门课程的知识。3.培养良好的软件开发习惯,了解软件企业文化。4.掌握结构化数据流分析技术。5.掌握结构化程序设计的基本概念与技术,并且养成良好的编码风格。6.掌握单元测试的一般步骤及技术。7.掌握集成测试的一般步骤和技术。二.实验内容1.软件需求分析①、功能需求分析·输入一个年份(1-3000),然后显示12个月的月历·能解决闰年和平年问题·能输出显示结果

2、②、运行需求分析·操作系统:Windows2000,WindowsXP、win7及更高版本显示一月确定闰年计算1月1日是否闰年显示表头开始信息年份检查输入年份年份年份非法开始信息显示二月任意键……显示十二月任意键③、数据流图软件结构图1.软件设计与编码#include#include#include#include#definefirstdayof11/*definethefirstdayoffirstyear.星期日=7*/#definega

3、p""/*setgapbetweennumbersofdates*/#definedent""/*setrightmargin.*/structinfo{intmonth;intfirstdayofmonth;intdaysofmonth;intleap;}monthinfo;intcheckinput(void);intinputyear(void);intisleap(inty);voidoutput(structinfo);voidprinthead(structinfo);voidprintmonth(st

4、ructinfo);structinfosetinit(int);structinfosetmonthinfo(structinfo);/*Thisfuctionistoacceptyear,ifitisleapyear,itreturn1,otherwisereturn0*/intisleap(inty)//判断是否为闰年{return((y%4==0&&y%100!=0)

5、

6、y%400==0);//是闰年返回1,不是返回0}/*Thismoduleistoacceptinputyear()andcheckifi

7、tiscorrect.ifitiscorrectitreturnintyear,otherwiseaskuserreenter*/intcheckinput(void)//检查输入的年份是否符合要求{inty;do{y=inputyear();if(y<1

8、

9、y>3000){printf("输入错误!。");y=0;}}while(y<1);returny;}/*Thisfunctionistoaccepttheinputyear,ifitistheinteger,itreturnsit,otherwi

10、seitreturn-1*/intinputyear(void){chars[80];//定义一个字符串数组存放输入的年份字符串,字符串长度为80inti,y;y=-1;printf("请输入年份(1-3000):");for(i=0;i<80;++i){s[i]=getchar();if(s[i]==27)//循环接受字符,并判断字符,若此字符等于esc,退出此次接受年份,循环到下一次接受exit(0);if(s[i]==10)break;}for(i=0;i<80;++i){if(s[i]==10)break;

11、elseif(!isdigit(s[i]))//不是数字,直接返回y=1,输出输入错误returny;}y=atoi(s);returny;}/*Thismoduleistoacceptmonthinfo,andprintthewholeyearcalender.*/voidoutput(structinfomonthinfo){charch;do{printhead(monthinfo);printmonth(monthinfo);printf("按任意键显视下一月,按Esc键退出.");ch=getchar

12、();if(ch==27)exit(0);monthinfo=setmonthinfo(monthinfo);}while(monthinfo.month<13);}/*Thismoduleistoacceptmonthinfo,amdprintmonthlyheadlike"一月"*/voidprinthead(structinfomonthinfo){c

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。