程序设计实践 联系客服

发布时间 : 星期二 文章程序设计实践更新完毕开始阅读2beb0fc458f5f61fb7366601

《VC++程序设计》课程

实践指导

江苏科技大学计算机科学与工程学院

2011.2

一、VC++课程实践的性质与目的

“VC++课程实践”是在学习了“VC++程序设计”课程后进行的实践教学环节,该环节为学生提供一个既动手又动脑,独立实践的机会,使学生将课本上的理论知识和实践有机的结合起来,有利于巩固、提高和融合所学的课程知识,提高学生运用所学知识解决实际问题的能力。主要目的如下:

1.进一步培养学生程序设计的思想,加深对VC++语言要素和控制结构的理解。 2.针对VC++中的重点和难点内容进行训练,强调好的程序设计风格。 3.进一步熟悉VC++的编程技巧和上机调试程序的方法。 4.掌握程序设计的常用算法。

二、VC++课程实践的要求

学生必须仔细阅读本程序设计实践指导书,认真主动完成程序设计实践的要求。要发挥自主学习的能力,充分利用时间,制订好程序设计实践的时间计划,并在程序设计实践过程中不断检测自己的计划完成情况。根据系统的功能要求,学生必须在教师的指导下认真完成应用程序的设计。具体要求如下:

1.系统功能模块分析、控制模块分析正确;

2.系统设计要实用; 3.编程简练、功能全面; 4.说明书、流程图要清楚。

三、VC++课程实践的选题

题目可从第4章中选择,创新性题目可只选择1题,仅选提高题应不少于3题,仅选基础题应不少于6题,也可组合选题,还可自行选择感兴趣的题目(须经指导老师审定)。对于提高题、创新题及游戏题可组成团队开发,但应制定详细的项目分工说明。

四、VC++课程实践的基本步骤

课程实践是一个从分析到设计,再到总结的过程,具体工作可按如下步骤依次进行:

1.确定问题要求,充分分析和理解问题本身,给出解决方案框架。

2.在确定解决方案框架过程中,考虑怎样使程序结构清晰、合理、简单和易于调试,并确定每个函数的简单功能,以及函数之间的调用关系。

3.详细设计和编码。确定算法的主要流程,在此基础上进行代码设计。 4.上机前编写程序与检查。可用2种方法检查程序,来有效提高调试效率,减少上机调试程序时的无谓错误。方法一,用一组测试数据手工执行程序;方法二,通过阅读或给别人讲解自己的程序而深入全面地理解程序逻辑,将程序中的明显错误事先排除。

1

5.上机调试程序。 6.完成课程实践报告。

五、时间安排及地点

本课程实践按照教学要求在1周(按5天计算)内完成,每天至少上机3-4小时进行程序调试,总上机调试时间不少于15个小时。题目布置后,所有同学应提前开始查找资料,作好准备。具体时间安排如下:

1.分析设计准备阶段(前一周周六、周日); 2.编程调试阶段(周一~周四);

3.总结及书写课程实践报告阶段(周五); 4.检查验收阶段(时间由指导老师确定)。 验收地点:机房。

六、组织管理

良好的组织是课程实践质量的重要保证,在课程实践期间的主要组织工作安排如下:

1.每人独立完成所选任务,创新性题目可2~3人组成小组,自由组合,小组应指定一名组长。

2.由班长负责考勤。

3.指导教师负责指导学生。

七、考核评估

根据学生完成情况,结合所选题目的难度及分析解决问题的能力和创新精神,确定成绩等级。

考核标准包括:

1.所设计程序的正确性、通用性,全面完成题目的要求(60%); 2.课程实践报告(20%):包括系统设计要求,设计思路,系统功能模块图,系统流程图,类的层次图(包括类成员列表),调试过程,关键程序代码,程序设计实践总结,参考书目等。最后附源程序代码。不符合以上要求者,则本次实践以不及格记; 3.平时考勤(20%)。

提交材料包括:

1.源程序。按照程序设计课程实践的具体要求所开发的所有源程序;

2.程序的说明文件(保存在.txt中)。在说明文档中应该写明上交程序所在的目录,上交程序的主程序文件名,如果需要安装,要有程序的安装使用说明;

3.课程实践报告。保存在word 文档中,文件名要求按照“姓名-学号-实践报告”起名,如文件名为“张三-0840308112-实践报告.doc” 。 注:(1)程序及报告提交电子稿,发送至指导老师的邮箱(由教师提供)中;

(2)报告除需提交电子稿外,必须每人另提交一份打印件。

1

说明:选题、时间安排及地点、考核评估部分可视具体情况自行调整。 八、程序设计实践的内容 ? 基本题

1.试建立一个类PP,求出下列多项式的前n项的值。

n?0?1?Pn(x)??x n?1

?((2n?1)xP(x)?(n?1)P(x))/nn?1n?1n-2?具体要求如下:

(1)私有数据成员

? int n:前若干项的项数。 ? double x:存放x的值。

? double *p:根据n的大小动态申请存放Pn(x) 前n项的数组空间。 (2)公有成员函数

? ? ?

PP(int num,double x1):构造函数,初始化数据成员n和x,使p指向动态申请的数组空间。 ~PP():析构函数,释放p指向的动态内存空间。 double fun(int n1,double x):递归函数,用于求多项式Pn(x)的第n1项。

注意:将递归公式中的n用作函数参数。本函数供process函数调用。 ? void process( ):完成求前n项的工作,并将它们存放到p指向的动态数组中。

? void show( ):输出n和x,并将前n项以每行4个数的形式输出到屏幕上。 (3) 在主函数中完成对该类的测试。先输入num和x1,并定义一个PP类的对

象items,用num和x1初始化items的成员n和x,调用items的成员函数,求出并输出多项式前num项的值。

2.试建立一个类SP,求f(n,k)?1?2?3?....?n,另有辅助函数power(m,n)用于求m。 具体要求如下:

(1)私有成员数据。

? int n,k:存放公式中n和k的值; (2)公有成员函数。

? ?

SP(int n1,int k1):构造函数,初始化成员数据n和k。 int power(int m, int n):求m。

n

nkkkk? int fun( ):求公式的累加和。 ? void show( ):输出求得的结果。

(3)在主程序中定义对象s,对该类进行测试。

1