主要运用了数组的循环语句分别对大月和小月进行对定义。数组的循环语句是c++中一个很重要的知识,数组可以节省很多的定义,一个句子就可以就可以输出很多的数,这样大大减少了计算机的存储空间。这正是一个很大的进步。
3.2.2闰年与非闰年二月的定义
void f3(int x) //闰年二月
{
for( i=0;i<50;i++)
a[i]=33;
for(i=k-1;i>=0;i--)
a[i]=\000;
for(i=k;i<29+k;i++)
a[i]=a[i-1]+1;
}
void f4(int x) //非闰年二月
{
for( i=0;i<50;i++)
a[i]=33;
6
徐州师范大学物理与电子工程学院课程设计报告
for(i=k-1;i>=0;i--)
a[i]=\000;
for(i=k;i<28+k;i++)
a[i]=a[i-1]+1;
}
用两个函数定义了在闰年与非闰年时,二月的不同定义。这主要运用到变量的不同定义。从而分辨出它们的不同,使可打印出任一年的日历。
3.2.3日历表的输出
int s,count=0;
cout<<"请输入年份:";
cin>>year;
cout<<endl;
c=year;
for(s=1;s<=year;s++)
if(((s-1)%4==0&&(s-1)%100!=0)||(s-1)%400==0)
count++;
day=365*c+count; //相差天数
cout<<"*********************"<<year<<"年日历*********************"; cout<<endl<<endl<<endl<<endl;
在此运用了c++中函数的运算,计算出该年的每月每日的不同。还有一年的输入和输出。
在输出时,闰年与非闰年二月的输出法的定义
if((year%4==0&&year%100!=0)||year%400==0) //闰年二月
{
k=((day+31)%7+6)%7+1;
cout<<"二月"<<endl<<endl;
f3(k);
g(a,50);
day=day+31+29;
}
else //非闰年二月
{
k=((day+31)%7+6)%7+1;
cout<<"二月"<<endl<<endl;
7
徐州师范大学物理与电子工程学院课程设计报告
f4(k);
g(a,50);
day=day+31+28;
}
此处主要运用了if语句来对闰年与非闰年的二月的不同定义的输出。if语句一种可跳过不符合条件的语句,继续下面的语句的执行。它具有很强的实用性。在实际的操作中经常会用到的,是一个很重要的知识。
8
徐州师范大学物理与电子工程学院课程设计报告
4 设计结果及分析
4.1软件测试
软件测试不同于程序测试,是为了发现错误而执行程序的过程,它贯穿于软件定义与开发的整个期间。软件测试的目的是发现程序中的错误,是为了证明程序有错,而不是证明程序无错,因此,它是保证软件质量,提高软件可靠性的关键。
软件测试阶段的工作步骤:
1. 单元测试: 即模块测试,检验每个模块能否单独工作
2. 子系统测试:检验概要设计中模块接口设计问题
3. 系统测试: 综合检验。把经过测试的子系统装配成一个系统进行测试,不仅 应该发现设计和编码的错误,还应验证系统确实能提供需求说明书中的功能(子系统测试和系统测试,统称集成测试)
4 .验收测试: 把软件系统作为单一实体进行测试,在用户的积极参与使用实际数据进行测试
4.2设计成果
程序设计语言类课程的指导思想是:既能使学生通过学习高级编程语言的知识、编程技术和基本算法,又能掌握程序设计的思想和方法,更具备利用计算机求解实际问题的能力,能灵活运用高级语言进行程序设计。
目前简易万年历系统已具有可以运行在电脑桌面上,使用者可以通过各种不同的标记对重要时间及节假日和备忘事件等方面进行有效的查询和管理,可以说达到了简单、方便、易于了解的目的。
9
徐州师范大学物理与电子工程学院课程设计报告
5 总结
课程设计是培养学生综合运用所学知识 ,发现,提出,分析和解决实际问题,锻炼实践能力的重要环节,是对我们的实际工作能力的具体训练和考察过程.随着科学技术发展的日新月异,当今计算机应用在生活中可以说得是无处不在。因此作为二十一世纪的大学生来说掌握程序开发技术是十分重要的,而c++语言又是最常见,功能最强大的一种高级语言,因此做好c++语言课程设计是十分必要的。
通过c++课程设计使我们懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。在设计的过程中遇到问题,可以说得是困难重重,这毕竟第一次做程序设计,难免会遇到过各种各样的问题,同时在设计的过程中发现了自己的不足之处,对一些前面学过的知识理解得不够深刻,掌握得不够牢固,比如说数组的灵活应用,循环语句,if语句……通过这次课程设计之后,我们把前面所学过的知识又重新温故了一遍。
我做的是简易万年历的课程设计,虽然是很简单的一个小的程序,但对我来说却是一个很大的困难。更加是第一次做c++课程设计,所以第一天下午在宿舍做了一个下午却丝毫没有进展,最主要是不知从何开始,这个时候才知道上课老师们不厌其烦的教导是多么的宝贵,这个时候才后悔上课的时候没有认真的听讲。可是现在一切都晚了,还好时间还算是充裕,只好拿出书本重新复习一下。
开始的时候真的感觉编程是一件很无聊的事情,不过当一个程序运行成功的时候那种喜悦是无法言语的,那种成就感是无法比拟的。
又经过几天的努力,终于把程序完成了,尽管程序还是有很多功能上的欠缺和漏洞,可我还是很高兴的。无论如何是自己的劳动成果,是自己经过努力得到的成绩,同时也是学习c++语言的一次实践作业,自己进步的证明。
在课程设计过程中,收获知识,提高能力的同时,我也学到了很多人生的哲理,懂得怎么样去制定计划,怎么样去实现这个计划,并掌握了在执行过程中怎么样去克服心理上的不良情绪。因此在以后的生活和学习的过程中,我一定会把课程设计的精神带到生活中,不畏艰难,勇往直前!
10
徐州师范大学物理与电子工程学院课程设计报告
参考文献
1.谭浩强 著.《c++面向程序程序设计》.北京:清华大学出版社,2006.7
2.吴乃陵,况迎辉,李海文 著.《vc++程序设计》.北京:高等教育出版社,2003.8
3.邓宗明,张睿哲,张晓竞,等编著.《visual c++ 6.0 编程实用技术与案例》.北京: 清华大学出版社,2001.5
4.李海文,吴乃陵 等编《c++程序设计及实践教程》北京:高等教育出版社,2003.9
5.邓华. visual c++案例教程[m].北京中科多媒体电子出版社,2001 6.邹筝.visual c++ 6.0使用教程龚[m].北京:电子工业出版社,2008
7.龚志翔. visual c++编程实例与技巧集粹[m].北京:北京期望电子出版社,2004
11
徐州师范大学物理与电子工程学院课程设计报告
附录 主要程序代码
//打印任意年日历
//已知2000 年1 月1 日为星期辣,输入任一年的年份后,打印该年的年历。 #include<iostream>
#include<cmat