2019级VC 课程设计题目

发布 2020-02-26 19:22:28 阅读 1337

六、课程教学基本要求提供足够多的程序设计选题,题目应覆盖面较为广泛,部分题目要具有开放性,要求每个学生根据自己的实际情况选择题目,经教师批准后即可进入实际工作阶段。

课程设计结束对每个学生进行验收,要求每个学生提交合格的课程设计报告,还要保证程序能够运行,能够讲清楚自己的工作。老师在检查过程中可针对程序提出问题,学生回答,若程序没能运行得到结果,则为不及格,若程序可以运行,但效果一般,则酌情扣分,若程序运行无问题,则提问回答不好的也要相应扣分。课程设计课程集中安排在第十一周。

每个同学都要提交初期、中期和最后的文档,提交课程设计报告,要求在规定时间内提交文档。最后验收时,若文档不全,成绩受到一定影响。

七、学时分配表。

2023年 9 月15 日。

vc++程序课程设计说明书。

一、 设计任务与要求。

vc++程序课程设计》是计算机科学与技术各专业本科生在完成《vc++程序设计》课程学习后进行的一门专业实践课程,是培养学生综合运用所学知识解决专业相关问题的重要环节,是对学生实际工作能力的具体训练和考察过程。本次课程设计的题目均设想采用vc语言来开发。希望题目简单到学生可以独立完成,又可以达到锻炼学生编写复杂程序的课程设计目的。

最重要的是希望能避免抄袭,让学生真正锻炼自我。要求每个学生必须参加,并完成如下各项课程设计任务:

1. 要求每个学生认真阅读本vc语言课程设计说明书,理解课程设计的目的和任务。

2. 要求学生通过自学理解和掌握本说明书附录2中给出的程序实例,读懂其中程序的设计功能,设计思想,设计结构,设计技巧,设计的不足等情况,提高阅读较大并且较为复杂程序源**的能力,也可以通过实例理解本次课程设计要求的设计任务的规模和难度。

3. 要求每个学生根据自己的实际情况选择一个题目,实际动手完成这个题目,编写出程序**,并调试通过。

4 每个同学选择一个题目,原则上不允许多名同学选择同一个题目。多名同学选择同样题目时,独立完成,程序**不可相同。

5. 要求每个学生完成课程设计后撰写《vc语言程序课程设计报告》,可以按照任务书后面附带的课程设计报告模版的格式实际撰写。

6. 要求每位学生必须在上机前做好充分准备,每次上机必须目的明确,必须事先编写好程序**,然后在规定的时间和地点上机调试。

二、 学生选题原则。

1学生根据自身情况选择其中一类题目,抽取其中一道题,作为课程设计选题,每个同学有两次选题机会,最终确定题目。

2 允许学生在给出可供选择题目之外自己选择题目,但要经指导教师同意。

3允许两名学生共同选择第二部分的综合题目,并共同完成。

三、 课程设计实施过程。

1在课程设计开始时,公布此课程设计说明书。

2.教师根据需要安排合适的时间、地点进行答疑。

3.教师要认真检查学生完成的程序进展情况。

4 教师要指导学生撰写符合规范的《vc++课程设计报告书》。

5.每个学生必须参加课程设计答辩,针对课程设计的内容回答提问。

四、检查考核办法。

首先检查完成后的程序能否正常运行和得出希望的结果,程序检查通过后再检查所撰写的《vc++课程设计报告书》, 最后参加课程设计答辩,根据报告的质量及面试的结果给出学生课程设计的成绩。

五、考核评分标准:

1完成质量较好,即可评定为优秀;完成质量尚可但有明显不足,可以评为良好;完成质量一般,成绩为中等;完成质量较差,成绩为及格;没有完成,成绩为不及格。

2 成绩评定由指导教师提出初步建议;成绩评为优秀和不及格的,要参加由系组织的统一答辩,答辩组给出最后成绩。

3 如果发现两名或更多同学的课程设计相同部分过多,特别是程序的源**相同部分达到或超过90%,则认定为抄袭,成绩评定为不及格。如果发现与现有技术书籍或网上资料相同部分过多,特别是程序的源**相同部分达到或超过80%,也认定为抄袭,成绩评定为不及格。允许参考同学的工作,允许参考现有技术书籍或网上的资料,但要有自己的不同或改进之处,可以利用已有程序的**,但要自己重新组织,调试通过并对程序理解正确。

附录1 供选择的vc++程序课程设计题目。

(一)算法设计类题目。

1.横向绘制余弦曲线。

在屏幕上用‘*‘横向显示0~360度的cos(x)曲线。此题关键在于余弦曲线在0~360度的范围内,一行要显示两个点。考虑到cos的对称性,将屏幕的行方向定义为x,列方向定义为y,则0~180度的图形是左右对称的。

若将图形的总宽度定义为62列,计算出x行0~180度时y点的坐标m,那么在同一行与之对称的180~360度的y点的坐标就应为62-m。程序中利用反余弦函数acos计算坐标(x,y)的对应关系。

2.绘制余弦曲线和直线。

在屏幕上显示0~360度的cos(x)曲线与直线f(x)=45*(x-1)+31的迭加图形。其中cos图形”*”表示,f(x)用”+”表示,在两个图形交叉点处则用f(x)图形的符号。图形迭加的关键是要在分别计算出同一行中两个图形的列方向点坐标后,正确判断相互的位置关系。

为此,可以先判定图形的交点,再分别控制打印不同的图形。

3.模拟人工洗牌。

编写一个模拟人工洗牌的程序,将洗好的牌分别发给四个人。

使用结构card 来描述一张牌,用随机函数来模拟人工洗牌的过程,最后将洗好的52张牌顺序分别发给四个人。

对每个人的牌要按桥牌的规则输出。即一个人的牌要先按牌的花色(顺序为梅花、方块、红心和黑桃)进行分类,同一类的牌要再按a、k、q、j牌的大小顺序排列。另发牌应按四个人的顺序依次分发。

注:c++随机数函数有:

void srand(unsigned seed)

4. 用户猜测藏物位置:计算机在n行n列(行号为0到n-1,列号为0到n-1)的“棋盘”的某一位置处“藏放一物件”(具体位置通过使用“rand()%10”来随机产生);用户通过输入行列号来“寻找”该物件;若没猜对时计算机要告诉用户与藏放物件的位置有多远(取整后的近似距离)。

5. 编程序,让计算机来猜测用户“暗记”的某张扑克牌:计算机从一副扑克牌(54张)中任意抽出27张,摆放在不同的三行上(每行9张),用户“暗记”某张纸牌,而后告诉计算机所“暗记”的那张纸牌处于哪一行中;之后计算机再两次将纸牌重新摆放,并让用户再回答两次相同的提问(那张纸牌在重新摆放后又处在哪一行上);此时计算机会将用户所“暗记”的那张纸牌给挑出来。

例如,程序执行后的屏幕显示结果可设计为(其中的前缀a、b、c、d代表四种不同的花色):

line 1: c-9 d-3 a-7 d-9 a-9 c-3 b-8 a-a d-7

line 2: b-10 a-q d-6 b-4 a-3 b-9 b-k c-a d-8

line 3: king2 d-a b-a a-4 a-2 b-7 d-5 c-7 a-8

remember a card, and tell me what line it reside in(1/2/3): 3

line 1: c-9 d-3 a-7 b-10 a-q d-6 king2 d-a b-a

line 2: d-9 a-9 c-3 b-4 a-3 b-9 a-4 a-2 b-7

line 3: b-8 a-a d-7 b-k c-a d-8 d-5 c-7 a-8

what line the card you remembered reside in now (1/2/3) :1

line 1: c-9 b-10 king2 d-9 b-4 a-4 b-8 b-k d-5

line 2: d-3 a-q d-a a-9 a-3 a-2 a-a c-a c-7

line 3: a-7 d-6 b-a c-3 b-9 b-7 d-7 d-8 a-8

what line the card you remembered reside in now (1/2/3) :1

your remembered card is : king2

6. 编写程序求解骑士巡游问题:在n行n列的棋盘上(如n=5),假设一位骑士(按象棋中“马走日”的行走法)从初始坐标位置(x1,y1)出发,要遍访(巡游)棋盘中的每一个位置一次。

请编一个程序,为骑士求解巡游“路线图”(或告诉骑士,从某位置出发时,无法遍访整个棋盘 — 问题无解)。

当n=5时,意味着要在5行5列的棋盘的25个“点”处,按骑士行走规则,依次将1至25这25个“棋子”(数码)分别摆放到棋盘上(摆满25个位置则成功,否则失败问题无解)。

例如,当n=5且初始坐标位置定为(1,1) —即最左上角的那个点时,如下是一种巡游“路线图”。程序执行后的输出结果为:

x1,y1)? 1=>5, 1=>5) :1 1

提示:1)“棋盘”可用二维数组b表示。

2)编制一个具有如下原型的递归函数solve,用于完成任务:从(i,j)点出发,做第k至第n*n(即n的平方)次的移动 — 将k直到n的平方这些数码按规则分别摆放到棋盘即数组b中,若成功则通过引用参数ok返回true,否则返回false。

void solve(int i, int j, int k, bool& ok);

3)编制主函数,让用户输入作为巡游起点的初始坐标位置(x1,y1),在该处摆放“棋子”(数码)1,而后进行调用“solve(x1, y1, 2, ok);”来完成所求任务。

7. 编写程序对八皇后问题进行求解:在8行8列的棋盘上放置8个皇后,使任一个皇后都不能吃掉其他的7个皇后(注:

皇后可吃掉与她处于同行或同列或同一对角线上的其他棋子),并将结果以某种方式显示出来。

例如,当求出下述的一个解时,可输出如下信息来表示该解(输出了表示摆放皇后的坐标位置以及“棋盘状态”— 棋盘中有皇后的位置放一个“q”字符,其他位置为“+”字符)。

VC课程设计题目

vc 课程设计题目 b090110 12 前言 本课程设计分成自测题和综合题两部分。两部分都列入验收。练习题 共11道。内容覆盖主要基本技术 基本的开发环境 调试技术 文件操作,动态链接库,图形图像编程,多线程编程,控件开发等。每个学生选择5个完成,要求如下 必做 1 2,3选择其一 4,5选择其一...

《VC 课程设计》要求

课程名称 vc 课程设计 一 课程设计的性质和目的。本专业vc 程序设计课程设计是配合 visual c 程序设计 的课堂教学和实验教学而设置的一个教学环节,总时为2周。通过该环节,使学生熟悉采用面向对象编程语言进行windows 应用程序的可视化开发,进一步掌握直观 高效的图形用户界面的创建过程和...

VC 课程设计要求

设计标题 用户签名。开发成员。开发时间。目录。介绍你所做任务的背景和意义,别人看到了这部分,有兴趣读下去是这部分写的成功的标志。用 或图表的形式列出你们小组各个阶段的时间进度大致安排 简要介绍所做任务的内容,内容应该介绍的具体 明确 可跟踪可检查 如果你是软件的一个用户,你会对软件有什么要求 如果你...