程序设计课程设计.ppt

上传人:小飞机 文档编号:6482043 上传时间:2023-11-04 格式:PPT 页数:44 大小:2.53MB
返回 下载 相关 举报
程序设计课程设计.ppt_第1页
第1页 / 共44页
程序设计课程设计.ppt_第2页
第2页 / 共44页
程序设计课程设计.ppt_第3页
第3页 / 共44页
程序设计课程设计.ppt_第4页
第4页 / 共44页
程序设计课程设计.ppt_第5页
第5页 / 共44页
点击查看更多>>
资源描述

《程序设计课程设计.ppt》由会员分享,可在线阅读,更多相关《程序设计课程设计.ppt(44页珍藏版)》请在三一办公上搜索。

1、程序设计课程设计信息与计算专业,信09A-12,指导教师:陈小光2011 年 67 月,内容概要,一、课程介绍相关信息、上机安排、先修课程、课程目标、编程要求、分组说明、课程评价、课设报告书格式二、题目介绍Matlab,可视化,C/C+,数据库等三、其它好书推荐,一、课程介绍,相关信息,授课教师:陈小光办公室:四教西204课程主页可下载课设题目要求、课设报告书模板等,上机安排(1),本课程设计为每位同学提供24学时的上机安排,以便能及时收集资料、编写程序实现算法、测试程序和完成设计报告。非上机时间,学生可以在教室、图书馆、宿舍等场所完成资料查阅、系统设计、编程调试等工作。,上机安排(2),Im

2、portant Dates19周,周一:课程介绍及题目讲解20周,周五:组长中期汇报21周,周五:分组总结汇报及提交成果,先修课程,课程目标,首先,在用 C/C+/VC/Matlab 等编程语言完成给定题目的程序设计过程中:初步了解软件设计相关知识及步骤进一步理解结构化和面向对象程序设计的思想更全面地掌握这些编程语言的相关知识了解较大型程序的调试方法等其次,培养自主学习、资料收集和编程实践的能力,为后续专业课程打下基础;同时,培养团队合作的精神。,编程要求,程序设计请按以下过程进行:(1)首先,进行系统分析,对问题进行模块划分或对象分析,进行总体设计,画出程序结构图及各种模块流程图(或对象类的

3、结构图);(2)然后,进行详细设计、编程实现、程序调试;(3)最后,撰写课程设计报告书。,分组说明,分组原则 分组,每组人数为 34 人 建议采用“组长-组员”双向选择方式 允许跨班组合组长负责统筹安排本组所有事务与老师交流沟通组员分工原则:任务分摊、职责明确、团队合作任务:问题分析、方案设计、资料查找、代码编写、程序测试、文档撰写等,课程评价,需提交程序源代码、可执行文件、测试用例(电子版)课程设计报告书(电子版、打印版)电子版提交到多模式教学网评价标准基本考查点:出勤情况、相关知识掌握程度、程序编写情况、实验结果、报告书撰写情况等适当考虑题目的难易程度加分条件:有创意,有创新,“课设报告书

4、”基本格式,封面页 题目、小组成员等第1部分 问题描述第2部分 分析与设计对问题或任务的分析,需要用哪些技术,程序由几个模块组成,每个模块实现什么功能等第3部分 程序实现给出关键代码,要求有详细的注释第4部分 结果与分析给出具体的运行结果,并加以分析第5部分 总结完成情况,任务分工,心得体会等第6部分 参考文献 第7部分 附录参考文献-程序代码等,1.请从多模式教学网上课程主页里下载“课设报告书模板”。2.严格要求格式规范!,二、课设题目介绍,题目列表,P1.Matlab编程:数学问题求解P2.可视化编程:鼠标、绘图与状态栏P3.可视化编程:对话框和标准控件P4.C/C+编程:矩阵运算P5.C

5、/C+编程:大整数运算P6.C/C+编程:文本统计P7.数据库编程:班级信息管理系统P8.数据库编程:毕设选题系统P9.趣味编程:圆周率的计算P10.趣味编程:验证码图片生成P11.趣味编程:排序算法可视化P12.趣味编程:24点游戏,Matlab编程,P1.Matlab编程:数学问题求解,参考:Matlab R2007 基础教程,刘慧颖 编著完成“第5章 Matlab的数学运算”的如下习题:,4.有如下数据:利用本章介绍的几种插值方法对其进行插值,得到每隔 0.05 的结果。,可视化编程,说明:VC/VB/Java均可,若VC,以下IDE均可 Visual Studio 6.0/2005/2

6、008/2010,P2.可视化编程:鼠标、绘图与状态栏,参考:Visual C+面向对象编程教材(第2版),王育坚 编著。在一个单文档应用程序里,完成“第5章 文档与视图”的如下几个习题:5-35 编写一个应用程序,当在视图中单击鼠标时,在单击处输出鼠标的坐标。5-36 设计一个应用程序,当双击鼠标后弹出一个信息框,显示鼠标双击的次数。5-42 编写一个应用程序,实现在状态栏显示当前时间的功能。5-43 编写一个应用程序,程序能在状态栏显示鼠标的坐标。,P3.可视化编程:对话框和标准控件,Visual C+面向对象编程教材(第2版),王育坚 编著。在一个应用程序里,完成“第6章 对话框和标准控

7、件”的如下几个习题:6-41 编制一个使用组合框的对话框应用程序,在组合框中选择学生姓名后,可以浏览并编辑学生的数学、英语和语文成绩;在组合框中输入学生姓名后,如果组合框中不存在该学生,则添加该学生姓名,并进入成绩输入状态。6-42 完善习题6-41中程序的功能,在程序退出后再重新运行时,对话框能显示以前输入的信息。,08级课设结果,C/C+编程,说明:C或C+均可,不限 IDE/编译器,P4.C/C+编程:矩阵运算,参考:高等代数题目要求:采用C的数组/Struct或C+的vector或valarray或自定义类来表示矩阵实现矩阵的加减乘等常见运算注:若实现矩阵求逆运算可加分,P5.C/C+

8、编程:大整数运算,大整数有广泛应用,如密码学里的RSA算法。题目要求:分析大整数运算的困难性,并给出大整数运算的编程实现方案;编程实现大整数的有效表示方式、输入输出以及四则运算;编程实现基于大整数运算的阶乘计算。Win32 Console 程序即可例如100!=.,P6.C/C+编程:文本统计,文本统计有广泛应用,如搜索引擎里网页分析,密码学中密文破解等题目要求:写一个 Win32 Console 程序,实现对指定英文文本文件的文本统计分析命令行调用方式(举例):TextStat.exe input.txt result.txt要求统计单字符、双字符、三字符的出现频率,并给出排序结果统计结果写

9、到文件提示1:可用C里的fopen等或C+里的iofstream来进行文件读写提示2:可用数组或C+里的map,vector等容器来存储统计信息提示3:可用C的qsort()或 C+的 std:quicksort()进行排序,数据库编程,说明:不限数据库(Access,MySQL,SQL Server 均可),亦可做成网站网页形式,P7.数据库编程:班级信息管理系统,题目要求:建立一个数据库系统,实现班级相关信息的存储和处理(添加、修改、删除、查询等)请创建各种 table,如:人员基本信息(学号、姓名、电话、生日、籍贯等)选课信息(人员、课程、成绩等)奖励信息(人员、奖学金、荣誉称号等)活动

10、信息(人员、活动内容等)说明:请考虑系统的合理高效、操作的简捷方便等因素,08级课设结果,P8.数据库编程:毕设选题系统,本系毕设选题流程:1.老师给出毕设题目及相关要求,并汇总2.所有毕业班同学通过抽签排序3.按排序前后顺序依次选择个人“中意”的题目4.师生确认,若有必要则可修改题目题目要求:请设计一个数据库系统,实现上述毕设选题流程。各种 table,如:题目信息、学生信息、选题结果信息等说明:也可把此问题当作数学建模问题来做,即深入分析,建立最优(或相对较优)模型,并进行仿真实验,给出模型评价和改进等。,趣味编程,说明:不限编程语言,尽情发挥,P9.趣味编程:圆周率的计算,计算圆周率尽可

11、能准确的近似值,(曾经)是数学家们的奋斗目标 有了计算机就容易多了!百度贴吧“圆周率的计算历程”:题目要求:设计并编程实现一种计算的方法,要求可精确到小数点后几百几千几万或更多位。可采用几何、微积分、概率等方法。可参考如下网页:,P10.趣味编程:验证码图片生成,不少网站为了防止用户利用机器人自动注册、登录、灌水,都采用了验证码技术。所谓验证码,就是将一串随机产生的数字或符号,生成一幅图片,图片里加上一些干扰象素(防止OCR),由用户肉眼识别其中的验证码信息,输入表单提交网站验证,验证成功后才能使用某项功能。百度百科上的词条:验证码、Captcha,CAPTCHA:Completely Aut

12、omated Public Turing Test to Tell Computers and Humans Apart(全自动区分计算机和人类的图灵测试),目标:让计算机自动识别(很)难,让人来识别(很)容易。,08级课设结果,(Matlab编程),(VC编程),题目要求:编程实现生成(简单的)验证码图片图片的内容可以为随机整数、字符或其它干扰因素:随机噪声、几何对象(线段/圆等)、随机颜色、图像扭曲/缩放等提示:可用VC里的绘图(CDC类)或 Matlab里的图像处理工具箱里的函数 来进行绘图操作,P11.趣味编程:排序算法可视化,维基百科上的“排序算法”词条:在计算机科学与数学中,一个排

13、序算法是一种能将一串资料依照特定排序方式的一种算法。最常用到的排序方式是数值顺序以及字典顺序。有效的排序算法在一些算法(例如搜寻算法与合并算法)中是重要的,如此这些算法才能得到正确解答。排序算法也用在处理文字资料以及产生人类可读的输出结果。考虑这些排序算法:选择排序、插入排序、冒泡排序、快速排序,题目要求:实现选择、插入、冒泡、快速四种排序算法中的12种;(这部分可采用现成的代码)实现图形界面演示程序,可视化显示整个排序过程;提示:每一次数据比较后,都显示当前整个数组,从而可视化地显示排序算法执行的整个过程生成随机数据进行测试;根据测试结果,尝试分析比较不同算法的优劣。注:可视化界面部分可采用

14、 VC 或 Matlab 或其它,P12.趣味编程:24点游戏,24点游戏:给玩家4张牌,每张牌的数值在113之间,允许其中有数值相等的牌。采用加减乘除四则运算,允许中间运算存在小数,并且可以使用括号,但每张牌只能使用一次,尝试构造一个表达式,使其运算结果为24.请你根据上述游戏规则,构造一个玩24点游戏的算法,要求如下。输入:n1,n2,n3,n4。输出:若能得到运算结果为24,则输出一个对应的运算表达式。如:输入 11,8,3,5 输出(11-8)(3+5)=24提示1:求解24点的基本思路:遍历运算符、数字和括号的所有排列组合形式(易知:给定4个数字,有4!435=7680种表达式)提示

15、2:如果改为n张牌之和为m的游戏呢?,三、好书推荐,推荐:编程珠玑(第2版),计算机科学的不朽经典融深邃思想、实战技术与趣味轶事于一炉的奇书字字珠玑,意味隽永,20余年畅销不衰,内容简介:本书是计算机科学方面的经典名著。书的内容围绕程序设计人员面对的一系列实际问题展开。作者Jon Bentley 以其独有的洞察力和创造力,引导读者理解这些问题并学会解决方法,而这些正是程序员实际编程生涯中至关重要的。本书的特色是通过一些精心设计的有趣而又颇具指导意义的程序,对实用程序设计技巧及基本设计原则进行了透彻而睿智的描述,为复杂的编程问题提供了清晰而完备的解决思路。本书对各个层次的程序员都具有很高的阅读价

16、值。,推荐:编程之美微软技术面试心得,(勤练算法功底强,求职入职心不慌)(09年度畅销榜NO.4)(08年度畅销榜NO.1),一本充满智慧与趣味的好书,包含大量有趣且有启发性的题目,通过阅读本书,您将充分享受到思考之乐、编程之美。,内容简介:本书收集了约60道算法和程序设计题目,这些题目大部分在近年的笔试,面试中出现过,或者是被微软员工热烈讨论过。作者试图从书中各种有趣的问题出发,引导读者发现问题,分析问题,解决问题,寻找更优的解法。本书的内容分为下面几个部分:游戏之乐:从游戏和其他有趣问题出发,化繁为简,分析总结。数字之魅:编程的过程实际上就是和数字及字符打交道的过程。这一部分收集了一些好玩的对数字进行处理的题目。结构之法:汇集了常见的对字符串、链表、队列,以及树等进行操作的题目。数学之趣:列举了一些不需要写具体程序的数学问题,锻炼读者的抽象思维能力。书中绝大部分题目都提供了详细的解说。每道题目后面还有一至两道扩展问题,供读者进一步钻研。书中还讲述了面试的各种小故事,告诉读者微软需要什么样的技术人才,重视什么样的能力,如何甄别人才。回答读者关于it业面试,招聘,职业发展的疑问。这本书的很多题目会出现在it 行业的各种笔试,面试中。但本书更深层的意义在于引导读者思考,和读者共享思考之乐,编程之美。,Have A Nice Summer!,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号