当前位置:文档之家› 面向对象程序设计(C )课程设计任务书及题目

面向对象程序设计(C )课程设计任务书及题目

面向对象程序设计(C  )课程设计任务书及题目
面向对象程序设计(C  )课程设计任务书及题目

上海电机学院课程设计任务书

指导教师(签名):王中华系主任(签名):2014年5月20日年月日

附:课程设计题目

1.有理数运算

问题描述

2有理数是一个可以化为一个分数的数,例如2/3,533/920,-12/49都是有理数,而就为无理数。在C++中,并没有预先定义有理数,需要时可以定义一个有理数类,将有理数的分子和分母分别存放在两个整型变量中。对有理数的各种操作都可以用重载运算符来实现。

基本要求

定义并实现一个有理数类,通过重载运算符+、-、*、/对有理数进行算术运算,通过重载运算符==实现判定两个有理数是否相等。写一个优化函数,它的作用是使有理数约去公分母,也即是使保存的有理数分子和分母之间没有公约数(除去1以外)。此外,还要定义一个将有理数转换为实数的函数,再加上构造函数和有理数输出函数。

测试数据

在应用程序中,创建若干有理数对象,通过带参数的构造函数使得各有理数对象值各不相同,然后分别进行各类运算,输出运算结果,检验其正确性。

实现提示

设有两个有理数a/b和c/d,则有:

(1)有理数相加分子=a*d+b*c;分母=b*d

(2)有理数相减分子=a*d-b*c;分母=b*d

(3)有理数相乘分子=a*c;分母=b*d

(4)有理数相除分子=a*d;分母=b*c

优化函数在创建有理数对象时应执行,在执行其它各种运算之后也需执行它,这样可保证所存储的有理数随时都是最优的。对于判断两个有理数是否相等,由于在对有理数进行各种运算后都对其进行优化,所以判定两个有理数是否相等只需判定它们两个的分子和分母分别相等即可。

选做内容

重载插入(<<)和提取(>>)运算符,使得对有理数可以直接输入输出。设有理数输入格式为:整数1 整数2 //整数1为分子,整数2为分母

有理数输出格式为:

分子/分母

2.通讯录管理

问题描述

编写一个简单的通讯录管理程序。通讯录记录有姓名,地址(省、市(县)、街道),电话号码,邮政编码等四项。

基本要求

程序应提供的基本管理功能有:

1)添加:即增加一个人的记录到通信录中

2)显示:即在屏幕上显示所有通信录中的人员信息,应能分屏显示。

3)存储:即将通讯录信息保存在一个文件中。

4)装入:即将文件中的信息读入程序。

5)查询:可根据姓名查找某人的相关信息,若找到显示其姓名、地址、电话号码和邮政编码。

6)修改:可修改一个人的除姓名外其它信息。

测试数据

程序应输入不少于10个人员的通讯录信息,应考虑到人员可以同名的情况。

程序可用一个单向链表来管理人员信息,每个人员的姓名,地址,电话号码和邮政编码用一个类Cperson来实现,作为链表的值指针指向这些Cperson类对象,通过链表的遍历可以操作这些数据。

选做内容

为了加快数据定位查找的速度,采用常用优先的方法对链表的各个节点进行排序,即一旦操作了一个人员的数据,他的数据就将被调用到链表的链首。这样经过有限次操作,经常查阅的人员的信息就将排在链表的前端。虽然不能说链首的节点一定是最常用的,但常用的节点一定会排在较靠前的部分,链表查找时所要走的平均距离一定较短。

3.商品销售统计

问题描述

编写商品销售统计程序,商品的信息有:商品的名称,计量单位(重量或件),单价。所有商品的信息事先已存入计算机,屏幕上显示所有商品的名称,选择商品名,输入商品计量单位(如重量,件数等),根据单价算出总价。客户一次购物可能购买多种商品,程序应计算出客户应付的钱款数。

基本要求

程序分为两个部分:第一部分用于输入商品的信息并允许修改和删除;第二部分实现销售统计。程序运行时由用户选择进入哪一部分功能,并能在运行时在两部分之间切换。第二部分运行时,首先显示所有商品名称及代码(商品数目较多时,应考虑分屏显示),用户输入商品代码及商品重量或件数,用户一次操作可输入若干商品的购买信息,然后输入一个特殊的代码(如-1)表示本次购物结束。此时。程序计算出应付钱款数并显示。

测试数据

程序应输入不少于10种商品的信息,并进行模拟运行。

实现提示

本程序的商品信息管理可采用与课程设计题目二类似的数据结构,既定义一个商品类,每种商品作为商品类的实例(对象)存储在链表节点中。

选做内容

程序在营业结束时统计每种商品的销售量,销售金额及总营业额。因此第二部分应有营业结束的选择,当用户选择此项时屏幕上显示当天营业的每种商品的销售量,销售金额及总营业额。注意,商品类的数据成员应增加有商品的销售量和销售金额。总营业额是所有商品的营业额之和,可用静态数据成员实现。或可由原商品类派生出一个特殊的类,增加上面的数据成员及相应的成员函数。

4.研究生初试录取

问题描述

研究生考试课程为4门,其中数学、外语、政治为统一命题,而专业基础课则根据不同的专业由招生学校自行命题。国家对初试录取分数有总分要求(如某一年要求4门课总分应达到310分),另外还有对每门课的最低分数要求(如总分为100的试卷最低应达到40分,总分为150的试卷最低应达到65分)。编程统计初试合格的人数,并按总分由高到低的顺序输出合格考生的信息。

基本要求

程序运行时首先要求输入:考生姓名,准考证号,报考专业,是否应届生,4门课程(政治、数学、外语、专业基础课)成绩。这些原始数据应保存到一个文件中。然后输入:录取的总分要求,各课程的最低分数要求。输出要求:过线考生的姓名,准考证号,报考专业,是否应届生,4门课程(政治、数学、外语、专业基础课)成绩及总分,这些信息应存放到另一个文件中。

测试数据

程序应输入不少于10名考生的信息,其中应届生和历届生分别有若干名,并且都有合格和不合格的情况。

可定义一个考生类存放有关信息和实现相应的操作。分数线数据(总分要求和各门课程的要求)可定义另外的类来存放,但应能被考生类及其派生类直接访问。

选做内容

初试合格的考生应经过复试才能决定是否录取,复试成绩合格(大于给定分值)可以录取,否则被淘汰。而录取的顺序假设是按照专业基础课和复试成绩的平均值来确定的(因为这涉及到是计划内还是委培问题)。因此,应首先输入初试合格考生的复试成绩及复试的合格线分数,然后按上面要求排序输出并标明被淘汰的学生。

5.足球联赛积分

问题描述

足球联赛采用主客场双循环赛制,胜一场得3分,平局各得1分,负一场得0分,联赛排名以积分多者在前,当两队(或多队)积分相同时,则净胜球(即进球数与失球数之差)多者在前,若净胜球相同,则进球数多者在前,若仍相同,则抽签或踢附加赛决定名次(这在联赛结束后进行,联赛未结束则两队名次并列,本程序不做这方面要求)。试编程序统计最近一轮比赛后,各队积分及排名。

基本要求

设积分表结构如下:队名(不超过15个字符),已比赛的场数,赢的场数,平的场数,负的场数,进球数,失球数,积分。积分表放在正文文件中。最近一轮的结果从键盘输入,其形式为:主队名(可用代码),客队名(可用代码),主队得分(即进球数),客队得分(即进球数)。程序应根据此轮结果修改各队的积分和名次,所得的最新记分表仍在原积分文件中并同时在屏幕上显示。

测试数据

可选择我国当年的甲A或甲B联赛的数据输入,并检查与报章公布的数据是否一致。

实现提示

定义一个球队类,每个球队是均是此类的对象。由于联赛中参赛的队伍数是固定的,因此可用对象数组来实现(当然也可以用链表结构)。每输入两个队的比赛成绩,则相应的队的有关数据(比赛场数,赢的场数,平的场数,负的场数,进球数,失球数,积分等)即可进行修改,比赛成绩录入完成,调用联赛排序方法(对象数组作为参数)排出名次并输出。

选做内容

篮球联赛(如NBA)往往采用胜率来决定名次,胜率就是取胜的场数比赛场数之比。若胜率相同,再由净胜球及进球数来决定名次,通过继承性完成上述要求。

6.银行账户管理程序

问题描述

设计一个银行账户管理程序,账户的信息有账号(唯一)、姓名、余额、身份证号码、单位、电话号码、地址等,允许用户进行如下操作:开户、销户、存款、取款、转账、查询,一个用户可以有多个户头,账户的数值没有上限。

基本要求

程序运行时,可以由用户选择进行何种操作,开户操作要求输入用户信息后自动获取账号,用户销户后账号被回收,并且该账号可以继续分配给其它账户,不允许用户透支,根据姓名或账号可以进行用户的信息查询,所有的账户信息应存放到一个文件中,可以随时的访问和更新。

测试数据

程序应输入不少于10人的账户信息,应考虑到人员同名的情况。

实现提示

可定义一个账户类存放账户信息以及执行相应的操作,可以用一个链表类来管理账户。

在上述程序的基础上,添加联名账户(一个联名账户有两个拥有者)的管理。

7.模拟计算器程序

问题描述

设计一个程序来模拟一个简单的手持计算器。程序支持算术运算+、-、*、/、=、以及C(清除)、A(全清除)操作。

基本要求

程序运行时,显示一个窗口,等待用户输入,用户可以从键盘输入要计算的表达式,输入的表达式显示在窗口中,用户键入’=’符号后,窗口显示出结果。

测试数据

程序输入不少于5种不同的表达式进行测试。

实现提示

可定义一个计算器类,该类包括两个组件对象,一个计算引擎和一个用户接口,用户接口对象处理接受的键盘输入信息,并显示答案,计算引擎对象对给出的数据执行相应操作,并存储操作的结果。

选做内容

如果用户输入的表达式不合法,可以判别出来并给出相应的错误提示。

8.设计一个排课程序

问题描述

每位教师都有教学工作量,教师对他所希望讲授的课程表达为一个期望值,1,2…,n,其中1位最高的期望值。课程也有优先级,1,2…,n,用来决定将课程分给教师的顺序,其中1时最高的优先级。设计一个程序针对某些课程给某些教师进行排课。

基本要求

程序运行时,用户输入教师信息(姓名、教师号、工作量)、课程信息(课程名、课程号、周学时、总学时、优先级)、教师对所希望讲授课程的期望值以及教学工作量等相关信息,所有信息应保存在文件中,程序根据课程的优先级以及教师对课程的期望值进行排课。为了公平起见,程序随机分配课程,如果10门课程都有优先级1,程序以随机的顺序将这些课程分给教师,如果10位教师对某门课程的期望值为1,程序应从10位教师中随机选择一个。最后输出排课情况,即某位老师上某门课程,以及某位老师的工作量。

测试数据

程序应能实现对不少于20门课和10个教师的排课,并且使每个教师的满意度达到最大,不存在工作量不满的教师以及未分配的课等情况。

实现提示

可定义一个教师类存放教师信息,所有教师的信息可以用链表存储;定义一个课程类存放课程信息,所有课程的信息可以用链表存储;定义一个排课类进行排课,排课类可以访问课程和教师信息。

选做内容

对两个同类班级安排一学期(20周)的课程,程序应能处理某些限制,如一个老师不能同时给两个班上课。

9.设计一个Database类

问题描述

设计一个Database类。Database类是一个表的集合,而表又由行和列组成。例如,下面的雇员

信息表包含三个记录,每个记录有四个字段(Employee、Name、Department和Boss)。

雇员姓名部门部门经理111-11-1234 Cruz ACC Warder

213-44-5649 Johnston MIS Michaels

321-88-7895 Tom FIN Bearskin

基本要求

能够完成对数据库的基本操作;包括创建数据库,实现对数据库里面的表的添加,删除;以及能够完成对表结构的修改(如添加或删除字段),以及对表中的记录进行添加和删除;能够完成对使用适当的查询语言从一个或多个表中查找相关信息。

测试数据

可以选取高校人员(教师、学生、职工等)数据库作为测试数据

实现提示

Database 类的公有接口包含如下数据成员:

?创建一个表。

?通过增加或删除字段修改表结构。

?删除一个表。

?在表中增加一个记录。

?从表中删除记录。

?用适当的查询语言从一个或多个表中查找信息。

选做内容

高校人员信息通常保存在文件里面,可以从文件里面读取人员信息;然后完成上面操作。

10.电煤气管理系统

问题描述

设计一个水电管理信息系统,能够对高校的水电费用进行管理,包括了登记费用,查询费用,以及住户信息管理等。在设计时要考虑到学生和教工在用水电时的不同,学生可以免费使用一定额度的水电,超过这个额度的随便以后必须自费使用,且自费部分水电费的价格标准要高于教工的收费标准(主要是节约资源)。

基本要求

●实现对用户信息的录入

●实现水电煤气数据的录入

●计算并查询用户应缴费用

●查询未缴纳费用名单

测试数据

可选用小区物业管理部门的数据,也可采用手工输入不少于10个用户信息的数据。

实现提示

●用户基本信息类,教工用户信息类,学生用户信息类

●收费标准类,该类存储水电煤气标准单位的收费标准,如:煤气,1.0元/立方米;

●不同类型人员水、电、煤气信息类,这些类可以包括水表,电表,煤气表ID,抄表时间,

上次抄表时间,本次抄表时间,上次抄表度数,本次抄表度数,本次使用度数,费用,是否缴费标记等信息。

●在实现的时候考虑继承和多态技术的合理使用。

选做内容

实现用户查询系统能够找出该用户半年之内的交费记录和本次应交费的数据。

11.赛事管理系统

参赛选手n人(n>1),评委m人(m>2),评委给每一选手打一个分数score(分数score为小于等于10的一个正实数)。选手的最后得分lastScore计算方法为

(1)m<9时,去掉一个最高分和一个最低分后另m-2个得分的平均值。

(2)m≥9时,去掉两个最高分和两个最低分后另m-4个得分的平均值。

假设事先已经建立了text型的数据文件f1.txt,其中依次记录着n个选手的编号(一个正整数)、姓名(一个字符串)以及m个评委给出的得分。

请编制程序,依次从数据文件f1.txt中读入n个选手的有关信息,而后按上述规定方法计算出每一个选手的最后得分,而且往屏幕上以及另一个text型文件f2.txt中同时输出如下形式的结果信息。

假设参赛选手人数n=5,评委人数m=7,磁盘文件f1.txt中的初始数据为:

1 zhangjin 8.8 9.3 7.9 8.7 8.9 9.7 9.2

2 lintao 8.9 8.2 8.6 8.8 8.5 9.1 9.3

3 guojian 8.9 8.

4 8.7 8.6 8.6 8.4 8.6

4 maling 7.9 8.3 8.

5 8.

6 8.5 8.9 8.3

5 liuyifan 9.5 9.1 9.8 9.2 9.0 9.5 8.9

那么,程序执行后,屏幕显示结果以及磁盘文件f2.txt中的结果均应该为:

----------------------------------------------------------

参赛号姓名最高分最低分累积分最后得分

----------------------------------------------------------

1 zhangjin 9.7 7.9 44.9 8.98

2 lintao 9.

3 8.2 43.9 8.78

3 guojian 8.9 8.

4 42.9 8.58

4 maling 8.9 7.9 42.2 8.44

5 liuyifan 9.8 8.9 46.3 9.26

----------------------------------------------------------

思考:可进一步考虑找出比赛的第1至第k名,也在屏幕以及f2.txt中同时输出相关的结果信息(k小于等于n,并规定若多个选手最后得分相同时,则有效分(即已删除原来的最高分后)中最高分高者名次优先)。

12.学生学籍与成绩管理系统

设计一个类CStudent,类中包含一个学生的基本数据如下:

编号,姓名,性别,年龄,数学成绩,计算机成绩,外语成绩。

并假设编号为整数,且从1号往后连续编码;姓名为字符串,性别为字符。如:

1 LiPing m 18 89 98 94

请采用binary文件形式,并使用随机读写处理方式,对自定义CStudent类的对象数据进行存储与读写处理(即是说,总按具有连续编码的编号num为“序”来对文件中的各对象数据进行随机读写处理)。并设计该类的成员函数,而且对输出运算符“<<”进行重载,使该运算符能够完成将一个学生的信息输出到屏幕上。要求成员函数完成以下功能:

(1)从键盘输入一个学生的有关信息,并将它们存入到数据文件中(按编号来确定写出位置)。

(2)按编号对学生信息进行检索并将检索结果显示在屏幕上。

(3)按姓名对学生信息进行检索并将检索结果显示在屏幕上。

(4)计算某编号学生的总成绩与平均成绩。

(5)列出所有总成绩超过n分的性别为s同学的有关信息(n,s由用户从键盘输入)。

思考:可进一步对上述程序进行扩充,如,添加学生基本数据(籍贯,专业,班级,其他各门

成绩,奖惩记录等),并添加所需要的其他相关处理函数(如可通过咨询教学办公室管理人员后确立),进而将其编制成为一个简单而实用的小型学籍与成绩管理软件。

13.日期时间显示

(1)定义一个时间类Time,能提供时、分、秒组成的时间,并提供时间增加的方法(按秒)。

(2)定义一个日期类Date,记录年、月、日,并提供日期增加的方法(按天)。

(3)由类Time和日期类Date,派生出DateTime类,除具有年、月、日、时、分、秒外,还增加国名和与格林威治时间的差。

编写一个应用程序,输入年、月、日、时、分、秒,在屏幕上模拟显示一电子计时器,不断输出下一秒的时间和日期,以及格林威治的日期和时间。

注意,当对日期增加1天后,会涉及所谓的“进位”问题:首先算出本“日”所在的月份具有的天数N,若加1之后的“日”数值超过所在的月份具有的天数N时,“进位”到月,而月份若超过12时还要“进位”到年。

思考:可对该类增加你所考虑到的其他功能,如,对日期进行输入,计算二日期的间隔天数,计算某日期为星期几,打印对象当前数据的y年m月的月历,一次增加若干天,对两个日期进行其他比较运算等。

14.商品管理系统

某商场有如下的几种货品:衬衣、鞋子、帽子、裤子、冰箱、电视、立柜、壁橱、沙发。每一种货物都有详细的说明信息。

衬衣:布料、尺寸、单价、产地、库存量、所属货柜;

鞋子:皮料、尺寸、单价、产地、库存量、所属货柜;

帽子:布料、样式(平顶或尖顶)、尺寸、单价、产地、库存量、所属货柜;

裤子:布料、尺寸、单价、产地、库存量、所属货柜;

冰箱:制冷类型、样式(二门或三门)、颜色、尺寸、单价、产地、库存量、重量、所属货柜;

电视:样式(彩色或黑白)、颜色、尺寸、单价、产地、库存量、重量、所属货柜;

立柜:木料、颜色、尺寸、单价、产地、库存量、所属货柜;

壁橱:木料、颜色、尺寸、单价、产地、库存量、所属货柜;

沙发:木料、皮料、颜色、尺寸、单价、产地、库存量、所属货柜;

对这些商品的操作有:

新商品的录入,商品的进库,商品的出库,商品的调价,所属货柜的管理,库存的统计,总价格的计算,产地的统计。

要求自行设计数据结构,用类结构将上述的货品表示出来。在上一步的基础上,将上述的商品管理计算机化,完成操作要求的功能。

15.实现集合类MyVector

定义并实现一个集合类MyVector,集合类中curSize表明当前集合中有几个元素,集合中最多含maxSize个元素,存放集合元素的数组是动态的。要求提供的方法有:

(1)增加一个元素到集合中;

(2)从集合中去掉一个元素;

(3)判断一个元素是否在集合中;

(4)重载<<运算法,输入集合;重载>>运算符输出集合;

(5)分别实现集合的交、并、差运算。

16.实现字符串类MyString

设计一个简单的字符串类MyString,它包含设置字符串、返回字符串长度和显示内容等功能。能对字符串进行插入、替换、删除、查找和连接等操作。

程序要求:

(1)对字符串的操作采用下列菜单形式:

1.生成字符串

2.显示

3.求字符串长度

4.字符串插入

5.字符串替换

6.字符串删除

7.字符串查找

8.字符串的连接

0.返回

(2)调试

1. 生成字符串s=”ABCDBCEFGHTH”

2. 求长度len(s)=12

3. 字符串的插入t=”XYZ”

insstr(s, 3, t)= ”AB XYZ CDBCEFGHTH”

4. 字符的替换将字符串s中的所有p=”BC”替换为t=”LMN”;

repl(s, p, t)= ”A LMN D LMN EFGHTH”

5. 字符串的查找p=”BC”:

index(s, p)=2

6. 字符串的连接将字符串p=“12345678”的字符串s连接:

strcat(s, p)=”ABCDBCEFGHTH12345678”

17.线性表操作

定义一个线性表类(采用类模板),实现下列操作:

(1)生成线性表。

(2)做元素的插入、删除操作。

(3)元素的查找。

(4)线性表输出。

(5)二个多项式合并一个多项式。

设计一个选择式菜单,以菜单方式选择上述操作。

18.考勤管理

考勤管理信息记录了学生的缺课情况,它包括:缺课日期、第几节课、课程名称、学生姓名、缺课类型(迟到、早退、请假及旷课)。试设计一个考勤管理系统,使之能提供以下功能:(1)录入学生的缺课记录;

(2)修改某个学生的缺课记录;

(3)查询某个学生的缺课情况;

(4)统计某段时间内,旷课学生姓名及旷课次数,按旷课次数由多到少排序;

(5)统计某段时间内,有学生旷课的课程及旷课人次,按旷课人次由多到少排序;

(6)系统以菜单方式工作

19.学生成绩统计管理

主要功能:

1)输入一个班级的学生的基本信息(包括学好,姓名,性别,5门课程成绩)。

2)按姓名或者学号查找、修改、删除和保存各个学生的信息。

3)计算每个学生各门功课总分和平均分,按学号或总分排序输出每个学生的基本信息及总分、平均分和名次。

4)计算全班各门功课的平均分,显示每门课程中低于平均分的每一个学生的学号,姓名,性别,科目,成绩。

5)显示每门科目中,成绩在90分以上的学生信息,以及每门科目中不及格的学生信息。

6)设置系统登陆密码,只有正确输入密码方可进入管理系统;可更改和保存登录密码。

20.用模板类实现中缀表达式转后缀并求值

1.设计目的

(1)掌握栈“后进先出”的特点。

(2)掌握栈的典型应用——中缀表达式转后缀、并利用后缀表达式求值。

(3)掌握串或者数组的相关操作。

(4)掌握C++模板类和STL的使用。

2.主要内容

(1)中缀表达式转换为后缀。

(a)定义一个运算符栈,并输入一个中缀表达式(运算对象存在多位整数,运算符为+、-、*、/、%及括号),然后从中缀表达式中自左至右依次读入各个字符。

(b)如果是第一次读入运算对象,则直接输出到后缀表达式;如果不是第一次读入运算对象,并且前一个读入的字符是运算对象,也是直接输出到后缀表达式;如果不是第一次读入运算对象,并且前一个读入的字符是运算符,则先输出逗号作为分隔符,然后再将该运算对象输出到后缀表达式。

(c)如果读入的是运算符,并且运算符栈为空,则将该运算符直接进栈;如果栈不为空,则比较该运算符和栈顶运算符的优先级。

若该运算符高于栈顶运算符的优先级,则将该运算符直接进栈;若该运算符低于或等于栈顶运算符的优先级,则将栈中高于或等于该运算符优先级的元素依次出栈,然后再将该运算符进栈。每出栈一个运算符时,先输出一个逗号到后缀表达式作为分隔符,然后再将出栈运算符输出到后缀表达式。

(d)如果读入的是开括号“(”,则直接进栈;如果读入的是闭括号“)”,则一直出栈并输出到后缀表达式,直到遇到一个开括号“(”为止。开括号“(”和闭括号“)”均不输出到后缀表达式。

(e)重复(b)(c)(d)步,直到中缀表达式结束,然后将栈中剩余的所有运算符依次出栈。每出栈一个运算符时,先输出一个逗号到后缀表达式作为分隔符,然后再将出栈运算符输出到后缀表达式。

(f)给后缀表达式加上‘\0’作为字符串结束标志。

(2)后缀表达式求值。

(a)定义一个double型的运算数栈,将中缀表达式转换得到的后缀表达式字符串自左向右依次读入。

(b)如果读入的是运算对象,则将该运算对象串(下一个逗号分隔符前的部分所构成的数字字符串)转换为对应的多位整数值,然后将该整数值(将自动类型转换为double型)直接进入运算数栈。

(c)如果读入的是运算符,则立即从运算数栈中弹出两个运算数,计算两个运算数运算后的值(运算时先出栈的元素放在运算符后面,后出栈的元素放在运算符前面),并将计算结果存回运算数

栈。

(d )重复(b )(c )步,直到后缀表达式结束,最后栈中保存的那个数即为该后缀表达式的计算结果。

(e )和手工计算的结果进行比较,检验程序运行结果的正确性。

假设输入中缀表达式为:715/)42/(18*152*5/)32123(-+-+

转换后的后缀表达式为:--++,,,,,,,,,,,,,,,,,,

7/15/42*1815*2/532123 后缀表达式求得的值为:52

3.设计要求

(1)运算对象存在多位整数。

(2)遇到除数为0的情况,应能给出相应提示,并提醒重新输入中缀表达式。

(3)%运算符左右遇到非整数时,应能自动对其进行取整;%运算符左右遇到负数时,应能给出相应提示,并提醒重新输入中缀表达式。

(4)如果一个班级中有两个同学同时选中该课题,则要求学号在前的同学用模板类的方式自定义栈;学号在后面的同学要求使用STL 中提供的栈来实现。

21. 马的遍历及其复杂性分析

1.设计目的

(1)掌握栈的本质,灵活使用栈解决实际问题。

(2)掌握求解问题时使用的回溯策略。

(3)比较一般回溯方法和贪心算法的异同点,并尝试分析其时间和空间代价。

2.主要内容

编写程序实现马对棋盘方格的遍历。一个棋盘有八行八列共64个方格,输入马的起始方格位置,从起始方格出发,一个马的移动必须跨越两行一列或是两列一行。设起始方格的次序为1,马跳过的下一个方格的次序是上一个方格的次序加1。马必须经过每个方格且仅经过一次,并且马的移动不能超越棋盘边界,求出马经过这64个方格的次序。

例如,图12-25显示了坐标(5,3)位置上马的所有合法移动位置(即K0~K7)。

图12-25 位置K 上马的八个合法移动位置

简化问题表述则为:从坐标(row ,column )出发,依次尝试:(row-2,column+1)、(row-1,column+2)、(row+1,column+2)、(row+2,column+1)、(row+2,column-1)、(row+1,column-2)、(row-1,column-2)、(row-2,column-1)这八个方向。

先将整个棋盘(实质就是一个二维数组)的所有方格初始化为-1。

回溯法解决马遍历棋盘的步骤:

(1)从起始位置开始,可将马的每次跳动抽象为一个栈结点,当马跳到下一个方格时就将起跳方格的信息压栈,并在棋盘中标记好马经过该起跳方格的次序。

(2)当马跳到某个方格发现无处可跳时,就出栈一个结点(相当于跳回到上一步,即回溯),

并将该方格的次序恢复为初始值-1,然后尝试出栈结点对应方格的下一个跳跃方向。

提示:某个方格无处可跳意味着该方格的八个方向要么是已经尝试过的“死路”,要么就是超出棋盘边界的,此时只能通过出栈方式回跳到上一个方格,从而进一步尝试上一个方格的其它方向是否存在遍历通路。

(3)当某个方格次序为64时,代表所有方格都遍历完。

(4)输出所有方格中的次序。

栈结点的结构可以设置如图12-26:

图12-26 栈的结点结构

其中rowNo保存起跳方格的行号,colNo保存起跳方格的列号,direction保存起跳方格的方向(int型,取值为0-7,对应K0-K7这八个方向)。通过当前方格位置及方向即可计算出下一个方格的行号和列号,便可进一步判断该方格是否越界或者马是否已经过该方格了。

注意:对于用回溯法编出的程序,只能输入(0,0)等少数坐标进行测试,如果输入其它坐标作为马的起始位置,因为回溯次数太多,可能程序运行很久也得不到运行结果。

假设输出马的起始位置为(0,0),则马遍历整个棋盘方格的次序如12-27所示。

图12-27 初始位置为(0,0)的遍历次序图12-28 初始位置为(5,3)的遍历次序若用贪心算法实现该程序,假设马的起始位置为(5,3),则马遍历整个棋盘方格的次序如图12-28所示。

3.设计要求

(1)用回溯法编程,输入马的初始坐标为(0,0),输出马对整个棋盘的遍历次序。

(2)输入马的初始坐标为其它方格坐标值,观察程序的运行时间并分析之。

(3)查阅参考资料,了解贪心算法策略,并改用贪心算法实现该程序,输入马的初始坐标为棋盘64个坐标中的任意坐标,检验程序的运行结果,观察程序的运行时间。

(4)分析一般回溯方法和贪心算法解决该问题的特点及其时间复杂度。

(5)如果一个班级中有两个同学同时选中该课题,则要求学号在前的同学用模板类的方式自定义栈;学号在后面的同学要求使用STL中提供的栈来实现。

22.Win32连连看游戏程序设计

1.设计目的

(1)掌握Win32程序的实现方法。

(2)参照视频提高自学能力。

(3)熟悉C++开发实际项目的过程和方法。

2.课题要求

用VC++6.0实现一个连连看游戏程序。

23.Win32扫雷游戏程序设计

1.设计目的

(1)掌握Win32程序的实现方法。

(2)参照视频提高自学能力。

(3)熟悉C++开发实际项目的过程和方法。

2.课题要求

用VC++6.0实现一个类似于Windows附件中自带的扫雷游戏程序。

24.Win32计算器程序设计

1.设计目的

(1)掌握Win32程序的实现方法。

(2)参照视频提高自学能力。

(3)熟悉C++开发实际项目的过程和方法。

2.课题要求

用VC++6.0实现一个类似于Windows附件中自带的计算器程序。

软件工程课程设计任务书(模板及参考)

编号: 大连理工大学本科生课程设计任务书 课程名称:软件工程课程设计 指导教师: 项目名称:粒子群主题网站 小组名称: 组长姓名: 上课时间:2009年7月13 日- 7月25 日 大连理工大学软件学院 20 年月日

1 设计目的 软件工程课程设计是在学生系统的学习了《软件工程》课程后,综合运用所学的知识,设计开发一个小型的实际系统。 要求学生运用软件工程的思想,严格按照软件生命周期各个阶段的目的和任务,完成对系统的定义、设计、编码、运行以及后期的维护。通过对具体系统的设计和开发,使得学生掌握软件工程的基本原理和基本方法,学会用软件工程学的概念、原理、方法开发和维护软件。 2 设计要求 (1)选用迭代式开发的过程模型,运用软件工程的方法,规范地完成规模小、功能较为简单 的软件开发,包括需求分析、设计、编码和测试。 (2)学生5人组成一个项目小组,一人为组长,其他人为组员,组内成员分工明确、团结协 作、相互配合,共同完成选题的设计。 (3)课程设计时间为2周。 (4)开发平台.NET3.5,语言(C# \ ASP),数据库设计工具Powerdesigner;数据库系统MS SQL Server 2005 (5)具体指标: 1)可以选择结构化分析/设计(SA/SD)或面向对象方法(OOA/D) 2) 结构化分析/设计(SA/SD) a)需求分析:分析系统的静态功能和动态行为 每一位小组成员能够描绘分配的子功能需求 每一位小组成员完成分配子功能的数据流图DFD,要求绘制到3级DFD3 小组负责人组织完成系统的DFD3 b)设计:完成系统的功能模块设计 每一位小组成员根据需求的DFD3图,完成分配的子功能模块设计,用HIPO 图表征。 每一位小组成员设计分配的子功能模块的接口 每一位小组成员能够完成分配的子功能程序流程的逻辑设计 小组负责人组织完成系统的总体结构集成 c)软件实现: 每一位小组成员完成分配的子功能界面的设计 每一位小组成员完成分配的子功能代码编写 小组负责人在.NET框架下,组织完成系统的实施 d)软件测试: 每一位小组成员完成分配的子功能的单元测试 小组负责人负责组织系统的测试用例,不少于20个,完成测试工作 3)面向对象方法(OOA/D):以UML为主 a)需求分析:分析系统的静态功能和动态行为

施工组织课程设计任务书(2018)

《土木工程施工课程设计》课程设计 任务书及指导书 华南理工大学广州学院 土木工程学院 2018.7

设计任务书 现某住宅小区需兴建4栋现浇混凝土框架结构6层住宅(37-40号楼),计划总工期为九个月,要求学生根据该工程的设计图纸及本任务书的要求,编制该工程的施工组织设计。 一、已知设计资料 1. 图纸一份(另发)。 2. 建筑场地的“三通一平”工作已经完成。 3. 建筑现场附近有永久性高压线及自来水干管通过,施工用水、电可直接引入。 4. 模板、钢筋在现场加工,混凝土、砂浆购买成品。 5. 可供利用的场地范围及道路见建筑平面示意图。 6. 施工开工日期为2018年11月1日。 7. 因施工单位的基地离该工地不远,故无需考虑现场临时的生活设施(如食堂、宿舍等)。 二、设计要求 1. 列出该工程的各个项目的名称和工程量(参考工程量清单)。 2. 拟订各个主要工种工程的施工方法及相应的质量与安全措施。 3. 计算各个工程项目的劳动量,部分材料量和机械台班数。 4. 编制主导工程的流水施工方案。 5. 编制整个工程的施工进度计划(以日计算)。 6. 设计整个建筑场地的施工平面图,在图中包括: (1)垂直运输机械的布置 (2)加工棚、仓库的布置 (3)布置运输道路 (4)布置行政管理及文化、生活、福利用临时设施 (5)布置水电管网及设施 三、设计的内容 学生在完成本设计时,应包括下列两部分的内容: (一)设计说明书 1. 对该建筑物的概况和施工条件简单叙述,主要包括该建筑物的结构特征,以及施工设计的原始资料。 2. 工程项目的工程量、劳动量计算作为设计说明书的附件。 3. 主导工程的施工方法及技术措施。 4. 主导工程流水施工方案(包括:流水节拍、流水步距、施工层的划分、每层施工段数、总施工段数、各工种工作队数、计划工期等参数的计算)及整个工程施工进度计划的编制说明。 5. 各种为施工服务的临时设施、材料仓库堆场面积的计算。 6. 设计施工平面图的必要说明。 7. 设计说明书及附件以A4打印装订成册,将评分表放在最后一页。打开课堂派网页https://https://www.doczj.com/doc/f75057738.html,/,使用邮箱或手机号注册并绑定微信,使用邀请码GMZJ5F加入班级,编辑个人信息后上传设计说明书部分。 (二)设计图表 1. 该单位工程的施工进度计划表,采用A3图幅绘制。 2. 施工平面图按比例在A3图幅中绘制,各仓库、堆场应注上尺寸。

课程设计任务书41912

课程设计任务书 题目:110KV河津变电所初步设计 设计时间:2011年 8月15日至2011年 8月 28日

110kV 河津变电站设计 一、原始资料 1、设计依据 根据省市电网公司批文《河津变电所设计任务书的批复》。 2、建站的必要性 河津市县,随着国民经济的发展,工农业生产增长需要,迫切要求供电容量增长,根据省电网公司批文,决定新建河津变。河津变用35KV和10KV两个电压等级向其用户供电,主要35KV负荷有:三个35变电所、以及一类负荷的造纸厂、化工厂、医院;主要10KV负荷有:属于一类负荷的站甲和水厂,二类负荷的站乙毛纺厂、水泥厂、纺织厂等。负荷的用电量大,对供电可靠性要求比较高。 3、建设规模 本变电所经两条110KV送电线,分别从两个已建成的变电所获得电源。 4、站址条件 (1)所址:河津变电所 (2)水文气象:该地区气候,平均气温15度,最高气温35度,最低气温-15度。 (3)交通、水源情况:东侧有一条国家三级公路,进所公路为0.4公里;附近有河流,供水方便,水量充足。 (4)地区气温: ?1?年最高气温35℃,年最低气温–15℃。?2?年平均气温15℃。 二、电气资料 1、待建110kV河津变电所距离新绎变电所和洛阳变电所都为50km。 2、待建110KV河津变电站年负荷增长率为5%,变电站总负荷考虑五年发展规划。 3、待设计变电站地理位置示意如下图: 3、待建110KV河津变电所各电压级负荷数据如下表: 三、设计任务 1、进行负荷分析及变电所主变压器容量、台数和型号的选择。 2、进行电气主接线的技术经济比较,确定主接线的最佳方案。 3、计算短路电流,列出短路电流计算结果。 4、主要电气设备的选择。 四、设计成果 设计说明书和计算书。 五、参考资料 1、发电厂电气原理 2、电能系统基础

C语言程序课程设计任务书

《C语言程序设计》课程设计任务书 对象:17楼宇智能化技术专业 一、课程设计目的 本课程设计主要是为了进一步提高学生掌握利用C语言语言开发程序的能力,熟悉程序开发的一般流程,及自主学习能力和团队协作能力。 1. 掌握C语言语言基本语法及数据类型; 2. 掌握C语言基本程序结构、数组、函数、指针、文件的使用; 3. 掌握结构化程序设计思想和C语言开发程序基本流程; 4. 具备C语言程序调试能力; 5. 能自主进行知识查阅及分析和解决问题; 6. 能具备良好的团队协作能力和沟通能力。 二、课程设计要求 (一)总体要求 学生必须仔细阅读课程设计书,认真主动完成课设的要求。有问题及时、主动通过各种方式与教师联系沟通。 学生要发挥自主学习的能力,充分利用时间,安排好课设的时间计划,并在课设过程中不断检测自己的计划完成情况,及时的向教师汇报。 本课程设计主要流程是: 分组->选题->进行课程设计->撰写课程设计报告->课程设计答辩->上交资料。 本课程设计成绩组成: 总成绩(100%)=源程序(60%)+课程设计报告(20%)+课程设计答辩(10%)+小组自评分(10%,包括组长评分和个人自评分)

(二)各部分具体要求 1. 分组要求 (1)小组成员1-2人组成,成员自由组合,小组组长由本小组推荐产生; (2)本课程设计实行小组组长负责制,每个成员具体分工由成员共同协商,组长最后决定; (3)课程设计结束后,组长根据每个成员所负责具体任务及是否积极参加等因素进行打分,每个成员分数不能一样; (4)课程设计小组自评表由组长填写,最后由各成员签名,除签名外表格其它内容可打印(A4纸); (5)本课程设计要体现团队合作精神,每个成员分工合理,要及时、定期沟通,组长充分发挥组织协调作用,每个成员要有合作和团队意识。 2. 选题要求 本课程设计选题必须在6月10日之前完成,每个小组可以从推荐设计项目中进行选题,也可以自己自拟设计题目,自拟设计题目要上报设计详细功能,在得到老师的许可后方可开始进行课程设计。 同一个班级每个小组选题不能重复,学习委员汇总全班各组选题,电子档E-mail给老师。 3. 设计内容要求 (1)每个课程设计项目至少包含5个功能模块; (2)设计界面友好,要有菜单界面,数据存放在文件中,数据使用数组、结构体都可以; (3)书写规范,变量及函数命名体现“见名知意”原则;采用锯齿型书写格式,便于阅读; (4)采取模化程序设计,在设计过程中,按功能定义多个不同的函数,通过函数调用实现各功能模块的作用; (5)要求利用结构化程序设计方法以及C的编程思想来完成系统的设计; (6)整个设计必须上机调试通过。 4. 课程设计报告要求 设计报告内容要体现整个课程设计过程,包括:需求分析、总体设计、详细设计、程序运行测试与分析、设计反思。

软件工程课程设计任务书

《软件工程》课程设计 任务书 一、目的、要求 通过该课程设计要使学生树立起强烈的工程化意识,用工程化思想和方法开发软件。切实体会出用软件工程的方法开发系统与一般程序设计方法的不同之处,学生在对所开发的系统进行软件计划、需求分析、设计的基础上,实现并测试实际开发的系统。通过一系列规范化软件文档的编写和系统实现,使学生具备实际软件项目分析、设计、实现和测试的基本能力。 二、主要内容 要求学生掌握软件工程的基本概念、基本方法和基本原理,为将来从事软件的研发和管理奠定基础。每个学生选择一个小型软件项目(内容参照《计算机综合实践指导》,宋雨等编著,清华大学出版社出版),按照软件工程的生命周期,完成软件计划、需求分析、软件设计、编码实现、软件测试及软件维护等软件工程工作,并按要求编写出相应的文档。具体的方法可以选用传统的软件工程方法或者面向对象的方法,开发环境和工具不限。 三、进度计划 四、设计成果要求 1.至少提交4个文档,包括软件计划、软件需求规格说明书、软件设计说明书、软件测试计划,要求文档格式规范、逻辑性强(可参考《计算机综合实践指导》中给出的要求及格式)、图表规范; 2.独自实现了系统的某些功能,基本达到了要求的性能,经过了测试,基本能运行。 五、考核方式 (1)提交的文档规范,工作量大,文档逻辑性强、正确,按《计算机综合实践指导》标准考核(附《软件工程课程设计》实验报告评分表)占60%(2)系统验收、讲解、答辩占25% (3)考勤占15% 学生姓名:(此处为签名)

指导教师: 2011年6 月17 日《软件工程课程设计》实验报告评分表

(注:素材和资料部分来自网络,供参考。请预览后才下载,期待你的好评与关注!)

施工组织课程设计任务书.doc

毕业设计任务书——某工程施工图预算及施工组织设计 学生姓名: 指导老师:匙静 石家庄职业技术学院建筑工程系 (工程建筑管理教研室) 2005.3

编制施工图预算任务书 一.编制内容: 1.根据给定施工图完成该工程的施工图预算。 2.完成据实调整部分的材料用量分析。 3、编制基础分部工程量清单形式的招标及投标报价。 二.编制要求: 1.计算书:要求计算过程详细、完整、算式清楚。(手工计算) 2.施工图预算书:含编制说明,定额套用,取费。要求定额套用、换算正确。(手工或使用广联达预算软件上机操作) 3.据实调整材料用量:掌握据实调整材料范围,材料用量计算准确。(手工或使用广联达预算软件上机操作) 4、只编制基础土方开挖和混凝土的清单报价(手工计算后上机操作,加以 比较)。

施工图预算编制指导书 一、准备阶段:收集资料,调查研究 应掌握的有关资料有:现行《河北省建筑工程预算定额》、《河北省建筑工程费用定额》、预算工作手册、现行调价文件、施工图纸等。 1.熟悉现行《河北省建筑工程预算定额》。 要求掌握定额各章、节内容的划分,各分部、分项工程的工程量计算规则,能熟练、正确地套用、换算定额, 2.熟悉现行《河北省建筑工程费用定额》。 要求掌握建筑物、构筑物工程类别的划分,施工单位取费资质等级的划分;掌握建筑工程项目费用构成的内容,取费方法。 3.熟读施工图纸。 必须清楚地了解建筑施工图和结构施工图的内容,建筑图、结构图、细部大样等各图纸之间是否相互对应,是否有矛盾之处。对图纸中选用的标准图集,要掌握其使用方法。通过熟悉图纸,必须对该建筑的全部构造、材料做法、装饰要求等有一个清晰的认识,为编制施工图预算打好基础。4.熟悉现行调价文件及据实调价材料的价格。 二、编制建筑工程施工图预算 1.确定工程量计算项目 根据施工图纸的内容和定额项目,列出计算工程量的分部、分项名称。2.计算工程量 工程量的计算工作,在整个预算编制过程中是最繁琐,花费时间最长的一个环节,数据是否准确直接影响到施工图预算的准确性,因此,必须在工程量计算上多下功夫,才能保证预算的质量。计算时应注意:

课程设计任务书

《钢结构》(钢屋架)课程设计任务书 一、设计资料 如图1所示某厂房,长度60m,柱距6m,跨度为L=18m,采用梯形钢屋架,1.5×6.0m预应力混凝土大型屋面板,屋架铰支于钢筋混凝土柱上,上柱截面400×400,混凝土强度等级为C20,屋面坡度为10 i。地区计算温度高于-200C,无侵蚀性介质,地震设防烈度为 :1 7度,屋架下弦标高为18m;厂房内桥式吊车为2台150/30t(中级工作制),锻锤为2台5t。钢材选用Q235钢,E43型焊条。 图1 柱网布置图 如图2所示。 三、荷载标准值(水平投影面计) ①永久荷载: 三毡四油(上铺绿豆砂)防水层 0.4 kN/m2 水泥砂浆找平层 0.4 kN/m2

保温层 kN/m2(按附表取) 一毡二油隔气层 0.05 kN/m2 水泥砂浆找平层 0.3 kN/m2 预应力混凝土大型屋面板 1.4 kN/m2 屋架及支撑自重:L = .0+ q011 12 .0 悬挂管道: 0.15 kN/m2 ②可变荷载: 屋面活荷载标准值: 0.7kN/m2 雪荷载标准值: 0.35 kN/m2 积灰荷载标准值: kN/m2 (按附表取) 四、课程设计要求 1.掌握钢屋架荷载的计算; 2.掌握杆件内力的计算和组合,杆件的计算长度、截面形式,截面选择及构造要求,填板的设置及节点板的厚度; 3.掌握普通钢屋架节点设计的原则和要求,主要节点的设计及计算和构造;掌握钢屋架施工图的内容和绘制。 五、课程设计(论文)进程安排

附件: 1. 附表 屋面保温层及积灰荷载的取值 (kN/m 2) 2. 附图 单位荷载作用下杆件内力系数图 02 .279 附图1 全跨单位荷载作用下各杆件的内力值 A a c e g e'c' a ' +2.5370.000-4.3 71 -5.636 -4.551 -3.357 -1.8500.0 -4.754 -1.86 2 +0.615 +1.17 +1.344 +1.581 +3 .158 +0 .540 -1 .632 -1 .305 -1 .520 -1 .748 -1.0-1.0+0.406 0.000.00-0.5+5.325 +5.312 +3.967+2.637+0.933 B C D E F G F ' E 'D 'C 'B 'A '0.51.0 1.0 1.0 1.0 1.01.0附图2 半跨单位荷载作用下各杆件的内力值

C语言课程设计任务书(必备)

《C语言程序设计》课程设计任务书及指导书 计算机科学与信息工程学院 2012年

说明:以下题目每名同学可以选择一个作为设计题目,也可以自己自拟一个题目,但工作量要与此相关不大。 C语言课程设计任务书及指导书1 题目:学院教学信息管理系统 功能:学院教学信息管理系统,每一条记录包括教师的职工号、姓名、职称、性别、3门讲授课程的名称,教学效果综合评分。系统要求实现以下功能: 1、输入:输入每一位教师记录,将其信息写入文件中。 2、显示:显示每位教师记录。 3、排序:按职工号或教学效果综合评分进行排序,并显示。 4、查找:完成按姓名或课程查找教师的相关记录,并显示。 5、保存:将相关数据写入磁盘文件,便于存、取操作。 分步实施: 1、初步完成总体设计,搭好框架,确定人机对话的界面,确定函数个数。 2、完成信息的录入和显示(即通过编程创建文件,输入教师信息并可将文件内容显示出来) 3、完成排序功能。 4、完成查找功能(可按职工号、姓名、讲授课程进行查找) 要求:1、用C语言实现程序设计; 2、利用结构体来实现教师信息的处理; 3、系统的各个功能要求用函数实现; 4、界面友好(良好的人机交互),程序必须有注释。 课程设计实验报告要求: 1、预习报告:仔细分析客户需求、进行模块划分、设计每个模块的算法和数据结构。 2、实验总结报告:按照模板的格式。 C语言课程设计任务书及指导书2 题目:酒店房间登记与计费管理系统 功能:1、屏幕上出现一个界面,让操作员能够方便的选择所需要进行的操作,包括登记入住、查询房间的入住情况、查询当前费用、结账退房等操作。 登记入住的信息主要有:客人姓名、房间号、入住时间、计费方式(按天或小时)、单价、押金房间信息:房间号、是否有人入住、房间标准、每天单价、小时单价 2、对不同标准的房间实施不同的收费标准,也可以按天收费或按小时收费,可根据顾客需要 在登记的入住的时候进行选择。 3、在结账退房时,根据入住的时间,计费方式和房间单价计算出总费用。 4、保存:将相关数据写入磁盘文件,便于存、取操作。 分步实施: 1、初步完成总体设计,搭好框架,确定人机对话的界面,确定函数个数; 2、完成最低要求:建立房间列表,完成登记入住、查询房间入住情况等功能。 3、进一步要求:完成计费和费用查询功能; 每次登录时读取保存在磁盘文件中的入住情况。要求:1、用C语言实现系统;

2014软件工程课程设计任务书

《软件工程》课程设计任务书 一、目的及意义 软件工程课程设计是在学生学习了《软件工程》课程的同时,综合运用所学的知识,设计开发一个小型的实际系统。 要求学生运用软件工程的思想,严格按照软件生命周期各个阶段的目的和任务,完成对系统的定义、设计、编码、运行以及后期的维护。通过对具体系统的设计和开发,使得学生掌握软件工程的基本原理和基本方法,学会用软件工程学的概念、原理、方法开发和维护软件。 二、内容及要求 自拟课题,可以进行相关系统或网站设计(如资源管理系统、网络监控系统、勤工俭学管理系统、个人财务管理系统、大学城二手物品在线交易网站等),然后以项目小组的形式完成项目。 本课程设计要求学生采用“项目小组”的形式,结合具体的开发项目进行设计,对软件生命周期的每一个阶段包括可行性分析、需求分析、概要设计、详细设计、编码、测试等严格按照软件工程规范实施一个具体的案例。具体要求如下: 1.可以选择结构化分析/设计(SA/SD)或面向对象方法(OOA/D) 2.结构化分析/设计(SA/SD) 1)需求分析:分析系统的静态功能和动态行为。每一位小组成员能够描绘分配的子功能需求;每一位小组成员完成分配子功能的数据流图DFD,要求绘制到3级DFD,小组负责人组织完成系统的DFD。 2)设计:完成系统的功能模块设计。每一位小组成员根据需求的DFD图,完成分配的子功能模块设计,用HIPO图表征。每一位小组成员设计分配的子功能模块的接口,每一位小组成员能够完成分配的子功能程序流程的逻辑设计,小组负责人组织完成系统的总体结构集成。 3)软件实现:每一位小组成员完成分配的子功能界面的设计,每一位小组成员完成分配的子功能代码编写,小组负责人在.NET框架下,组织完成系统的实施。 4)软件测试:每一位小组成员完成分配的子功能的单元测试,小组负责人负责组织系统的测试用例,完成测试工作。 3.面向对象方法(OOA/D):以UML为主 1)需求分析:分析系统的静态功能和动态行为。每一位小组成员完成一个用例分

基础工程课程设计任务书及例题

《基础工程》课程设计任务书 开题日期: 2014年 5月 26 日完成日期: 2014年 6 月 1 日 一、设计目的 通过本次设计,让学生初步掌握柱下钢筋混凝土独立基础的设计步骤、方法及具体的计算过程,并逐步培养从事基础工程浅基础的设计能力。 二、设计内容 (一)设计题目 柱下钢筋混凝土独立基础 (二)设计内容 1、确定基础埋深; 2、按持力层承载力特征值确定基础底面尺寸; 3、验算地基变形; 4、基础结构设计:拟定基础剖面尺寸,进行内力分析、强度验算和配筋设计,并满足构造设计要求; 5、绘制基础施工图,包括基础平面图、立面图及配筋图。 三、设计资料

1、地形 拟建建筑场地平整 2、工程地质资料 自上而下依次为: ①号土层填土:厚约0.5 m,含部分建筑垃圾; ②号土层粉质黏土:厚1.2 m,软塑,潮湿,承载力特征值f ak=130 kpa; ③号土层黏土:厚1.5 m,可塑,稍湿,承载力特征值f ak=180 kpa; ④号土层,细砂,层厚2.7 m,中密,承载力特征值f ak=240 kpa; ⑤号土层,强风化砂质泥岩,厚度未揭露,承载力特征值f ak=300 kpa。 3、岩土设计技术参数 地基岩土物理力学参数如表1所示。

地基 岩土 物理 力学 参数表 4、水文资料为 地下水对混凝土无侵蚀性;地下水位于地表下1.5 m。 5、上部结构资料 上部结构为多层全现浇框架结构,室外地坪标高同自然地面,室内外高差450mm。柱网布置见图1,图中仅画出了1-6列柱子,其余7-10列柱子和4-1列柱子对称。 图1 柱网平面图 6、上部结构作用: 柱底的荷载效应标准组合值和荷载效应基本组合值分别见表2和见表3。 表2 柱底荷载效应标准组合值

教师信息管理系统(C语言课程设计)

课程设计任务书 计算机科学与技术专业年级班 一、设计题目 教师信息管理系统设计 二、主要容 教师信息包括教师号、、性别、年龄、学历、职称、工资、住址、等(教师号不重复)。试设计一教师信息管理系统,使之能提供以下功能: (1)系统以菜单方式工作 (2)教师信息录入功能--输入 (3)教师信息删除功能 (4)教师信息浏览功能--输出 (5)查询和排序功能:(至少一种查询方式) --算法 按教师号查询 按职称查询等 三、具体要求 围绕课程设计的目的和意义,基本要求如下: 1、认真阅读《C语言课程设计》指导书,明确课程设计的目的、意义和要求; 2、快速总结C程序设计语言的精髓,如:函数的概念、函数的设计和函数的调用;

3、快速熟悉Tuber C 或C++的上机环境。能熟练进行高级编辑操作(特别是字块操作);熟悉步进式、断点跟踪的程序调试方法,提高工作效率。 4、根据“课程设计题目”,采用结构化的程序设计思想,确定系统的总体设计方案、确"定时间进度。如果是多人共一题,则要首先完成小组的人员分工及安排,不允许重题现象。 5.学习并了解良好的程序设计风格。按质、按量、并按时间完成课程设计的任务。 6.提供可运行的课程设计系统,参加上机面试答辩。 本次课程设计的重点是:学会设计并编写函数,掌握好各函数之间的调用关系;利用文件操作函数,建立数据库并完成对数据库的各种操作;掌握几种典型算法的应用(如:冒泡法、选择排序法和折半查找法)。同时锻炼学生根据题目进行分析、设计、编码、调试程序和书写必要文档的综合处理能力,从实践中学习并体会程序设计的结构化思想和设计方法。 四、进度安排 依照教学计划,课程设计时间为3周。按照软件工程的思想,软件系统的分析设计至关重要,并要充分重视书写“文档”。避免甚至杜绝“拿到题目就编码”的现象。建议将时间分为三个阶段: 第一阶段,根据题目要求,拿出系统的总体设计方案:即构思各程序模块的算法,并画出相应的N-S图,同时编写相应的文档; 第二阶段,根据N-S图编写程序代码并单独调试,再将调试通过的各个子模块进行集成调试; 第三阶段,归纳文档资料,按要求填写在《课程设计说明书》上,并参加答辩。

软件综合课程设计任务书

软件综合课程设计任务书

————————————————————————————————作者: ————————————————————————————————日期: ?

软件综合课程设计任务书 一、课程设计的目的、要求 目的:软件综合课程设计是一个综合性的设计型实验教学环节,旨在使学生通过软件开发的实践训练,进一步掌握设计开发软件的方法与技术,学会数据的组织方法,提高软件开发的实际能力,培养创造性的工程设计能力和分析、解决问题的能力。 实现以下目标: 1.深化已学的理论知识,完成理论到实践的转化 通过软件开发的实践,进一步加深对软件工程方法和技术的了解,将所学的理论知识运用于开发实践中,并在实践中逐步掌握软件工具的使用。 2. 提高分析和解决实际问题的能力 课程设计不仅是一次软件工程实践的模拟训练,同时通过软件开发的实践,积累经验,提高分析问题和解决问题的能力; 3. 培养“开拓创新”能力 大力提倡和鼓励在开发过程中使用新方法、新技术,激励学生实践的积极性和创造性,开拓思路,设计新算法、新创意,培养创造性的工程设计能力; 要求:学生组成开发小组(2~4人),以小组为单位选择并完成一个规模适度的软件项目,在教师的指导下以软件设计为中心,独立完成从需求分析到软件测试的开发过程。 二、设计步骤安排 1.确定课题 由教师命题并给出各课题的具体需求,学生根据课题涉及的知识领域及自己对该领域的熟悉程度和对该课题的兴趣,选择课题,经教师调整审定后确定; 2. 需求分析 建立系统的分析模型,这是系统开发的重要阶段。主要工作是: 分析确定系统应具备的功能、性能,并从经济上、技术上进行可行性分析,建立“需求分析模型”确定开发计划。 3. 软件设计 具体工作是:对系统的分析模型进行修改、细化,进行系统的结构设计,用户界面设计,数据管理部件设计(若系统涉及到数据库,要对数据库结构进行设计) 4. 编码与测试 根据项目的应用领域及语言的特点,选择编程语言进行编码,要求给出程序的详细注释(包括模块名、模块功能、中间过程的功能及变量说明); 由开发小组进行除验收测试以外的测试工作(包括单元测试、组装测试与系统(确认)测试)。所有测试过程都要求采用综合测试策略,先进行静态分析,再进行动态测试。要求制定测试计划、记录测试过程与结果、保留测试用例、写出测试报告。 5. 验收测试 由教师组织验收测试的实施,内容包括:系统能否正确运行,实际系统与设计方案是否一致,是否实现了需求所确定的功能与性能,系统设计有无特色,算法有无创新,系统结构是否合理、新颖,系统界面是否友好、美观,操作是否简单,使用是否方便。6.总结和整理课程设计报告

基础工程课程设计任务书(1) 第四版

2011年度 桥梁基础工程课程设计任务书 题目: 某公路桥梁桩基础设计 1. 课程设计教学条件要求 本设计对象为某公路桥梁,该桥梁的上部结构设计已经完成,本课程设计的任务是完成桥墩基础与地基的设计与检算。要求同学选择(或由任课教师分配)一个基础,按给定的条件完成相关的设计和计算工作。 2. 课程设计任务 2.1工程概况 某公路桥梁设计采用桩(柱)式桥墩,初步拟定尺寸如图1所示。该桥梁上部结构为25米钢筋混凝土装配式T梁桥。桥面宽7米,两边各0.5米人行道。 该桥墩基础由两根钻孔桩组成,旋转钻成孔。桩的设计直径d(即钻头直径,精确至0.1m)自选,桩底沉渣厚度控制为t=(0.2~0.4)d。在局部冲刷线处设置横系梁,其断面尺寸可按构造等要求确定,高度约1.0m。 2.2 工程地质和水文地质 地质资料:标高20.00以上桩侧土为软塑亚粘土,各物理性质指标为:容重=18.5kN/m3,土粒比重G s=2.70,天然含水量w=21%,液限w L=22.7%,塑限w p=16.3%;标高20.00以下桩侧及桩底均为硬塑性亚粘土,其物理性质指标为:容重=19.5kN/m3,土粒比重G s=2.70,天然含水量w=17.8%,液限w L=22.7%,塑限w p=16.3%。 2.3 设计荷载

(1)一跨上部结构自重G 1=2000×(L /20)1.2 kN (取整),其中L 为跨径; (2)盖梁自重G 2=350kN ; (3)局部冲刷线以上桩重应分别考虑最低水位及常水位;汽车荷载应考虑最不利荷载组合(双孔和单孔布载);人群荷载尚应考虑最不利情况;荷载布载长度为梁长(L -0.1)m 。 (4)设计汽车荷载为公路—Ⅱ级,汽车可能产生的横向偏心距为0.55m ,单孔活载时纵向偏心距为b=0.30m ,并应考虑冲击力。行人荷载为3.5kPa 。 (5)水平荷载 单桩所受水平力如图4所示。其中:H T (制动力)=4.5kN ;W 1(风力)=5kN ; W 2(风力)=8kN 图2 2.4 材料 ,可选 MPa 410×=2.85h E ,混凝土弹性模量C25桩身混凝土强度等级拟采用择的钢筋有HPB235和HRB335。 2.5 具体任务要求如下: (1)确定桩的长度,进行单桩承载力验算。 具体计算时按如下不同标准跨径分组进行,同组人员的设计桩径、桩长不得全部相同。 跨 径(m) 13 20 25 30 35 40

课程设计任务书完整题目

课程设计任务书完整题目

————————————————————————————————作者:————————————————————————————————日期:

发电厂电气部分课程设计任务书 发电厂电气部分课程设计目的和要求 1.课程设计的目的: 发电厂电气部分课程设计是在学习电力系统基础课程后的一次综合性训练,通过课程设计的实践达到: (1)巩固“发电厂电气部分”、“电力系统分析”等课程的理论知识。 (2)熟悉国家能源开发策略和有关的技术规范、规定、导则等。 (3)掌握发电厂(或变电所)电气部分设计的基本方法和内容。 (4)学习工程设计说明书的撰写。 (5)培养学生独立分析问题、解决问题的工作能力和实际工程设计的基本技能。 2.课程设计的任务要求: (1)分析原始资料 (2)设计主接线 (3)计算短路电流 (4)电气设备选择 3.设计成果: (1)完整的主接线图一张 (2)设计说明书一份

发电厂电气部分课程设计说明书 1.前言(简要介绍本次设计任务的内容、设计的原则、依据和要求) 2.原始资料分析 3.主接线方案确定 3.1 主接线方案拟定(2~3个,小图) 3.2 主接线方案评定(可靠、灵活、经济) (本章要求在说明书中明确画出方案拟定示意图,针对图示可以从主接线的三个基本要求列表评价所初选的方案,最终得出结论,对可靠性的定量计算评价,不做要求)。 4.厂用电(所用电)接线设计 5.主变压器(或发电机)的确定 (确定主变压器(或发电机)的型号、容量、台数,列出技术参数表,说明变压器的相数、绕组数、冷却方式等,简要说明确定的理由,为下一章的短路电流计算做准备) 6. 短路电流计算 (画出短路电流计算用的等值阻抗图,注明短路点的选择,列出短路电流计算表,具体的阻抗变换过程、计算过程放在附录中。) 7.电气设备选择 (包括QF、QS、CT、PT、母线、电缆、馈线、电抗器等,按照参考资料积极推荐使用成熟的新产品,不得使用淘汰产品。按照主接线的电压等级,列出各级电压下的电气设备明细表,具体的设备选择及校验过程放在附录中) 8.继电保护和自动装置(本次不涉及) 9.防雷设计(本次不涉及) 10.配电装置(本次不涉及) 结论 结论是课程设计的总结,单独作为一章编写,是整个设计的归宿。要求准确阐述自己的创造性工作或新的见解及其意义和作用,还可进一步提出需要讨论的问题和建议。 参考文献:西北电力设计院.电力工程设计手册.中国电力出版社 熊信银.发电厂电气部分. 中国电力出版社 黄纯华.发电厂电气部分课程设计参考资料.中国电力出版社王荣藩.工厂供电设计与实验[M].天津大学出版社,1998,05 傅知兰.电力系统电气设备选择与计算,中国电力出版社 曹绳敏.电力系统课程设计及毕业设计参考资料. 中国电力出版社,1995

c语言课程设计运动会比赛计分系统(含任务书)

一、课程设计目的 将理论教学中涉及到的知识点贯穿起来,对不同的数据类型、程序控制结构、数据结构作一比较和总结,结合设计题目进行综合性应用,对所学知识达到融会贯通的程度。通过课程设计,学生在下述各方面的能力应该得到锻炼: (1)进一步巩固、加深学生所学专业课程《C语言教程》的基本理论知识,理论联系实际,进一步培养学生综合分析问题,解决问题的能力。 (2)全面考核学生所掌握的基本理论知识及其实际业务能力,从而达到提高学生素质的最终目的。 (3)利用所学知识,开发小型应用系统,掌握运用C语言编写调试应用系统程序,训练独立开发应用系统,进行数据处理的综合能力。 (4)对于给定的设计题目,如何进行分析,理清思路,并给出相应的数学模型。 (5)掌握自顶而下的设计方法,将大问题进行模块化,领会结构化程序设计的方法。 (6)熟练掌握C语言的基本语法,灵活运用各种数据类型。 (7)进一步掌握在集成环境下如何调试程序(单步调试,设置断点、观察表达式,分块调试)和修改程序。 二、课程设计名称及内容 课程设计名称:运动会比赛计分系统 设计内容:设计一个运动会比赛计分系统,该系统要求对运动会比赛得分进行管理和维护。 三、任务和要求 要求:初始化输入:N-参赛学校总数,M-男子竞赛项目数,W-女子竞赛项目数各项目名次取法有如下几种: (1)取前5名:第一名得分7分,第二名得分5,第三名得分3,第四名得分2,第五名得分1; (2)取前3名:第一名得分5,第二名得分3,第三名得分2; (3)用户自定义:各名次权值由用户指定。 四、设计方案提示

(1)界面 系统以菜单方式工作 (2)输入数据并存入文件 使用到结构体变量和动态链表,由程序提醒用户填写比赛结果,输入各项目获奖运动员信息。对输入的信息进行合法性判断,直到输入正确为止。都输入完成后,调用写文件函数对指定的文件进行写操作,把输入的信息写入到文件中。 (3)显示所有记录 将文件中的所有记录以表格的形式输出。如果文件未打开会出现“文件打开失败!按任意键返回...”,关闭文件。 (4) 查询 所有信息记录完毕后,用户可以查询各个学校的比赛成绩,生成团体总分报表,查看参赛学校信息和比赛项目信息等。 二:算法设计: 信息输入模块、比赛结果录入模块以及查询模题目的总体要求是要建立三个模块:信息输入模块、建立三个模块块。在建立完之后,要求该程序能够在用户将各种必要的信息记录之后,用户可以查询所有学校的比赛成绩,而且也可以生成团体总分表,查看参赛学校信息和比赛项目信息等一切录入的信息,为此,要示编程人员能通过一些具体的程序将以上的功能加以实现。在建立三个模块的大前提下,我们将采用结构体,循环体,指针和各种函数来实现这种功能,在数据结构体中,要采用结构体数组,其中包括学校、项目、运动员三个结构体。学校结构体成员包括学校校名、竞赛项目、得分项目结构体成员包括项目名、权值。(1)在此程序中,包括几个头文件:mainfile.h; dos.h; conio.h; momery.h; 接下来,定义全)局变量,其中包括“参赛学校项目数N;男子项目数M;女子项目数W;参赛学校g_school; 竞赛项目g_sport; 各名次链表指针ptrHead,ptrThis,ptrNew; 总体设计:系统设计为信息输入模块、比赛结果录入模块和查询模块三个模块。总

地下工程课程设计任务书

地下结构设计原理课程设计任务书 一、课程设计的目的、意义 本课程设计是土木工程专业(岩土与地下工程方向)的主要实践教学环节之一。通过课程设计使学生掌握公路隧道衬砌的设计理论和设计方法,提高分析问题和解决问题的能力,加强学生文字表达能力,计算技巧等基本功训练,初步培养学生熟悉和运用行业设计规范,并具备解决工程设计问题的能力,能独立进行公路隧道工程的设计。培养学生综合运用所学的理论知识,为毕业设计或毕业后从事隧道工程设计或施工工作打下良好基础。 课程设计是《地下工程》课程教学的重要实践性环节,是使学生熟练掌握隧道设计计算原理和计算方法的重要内容,为进一步的毕业论文和设计打下基础。要求每个学生高度重视,必须认真按时完成。课程设计未完成的或未上交的学生不得参加本课程的期末考试。 二、时间安排 根据高等学校土木工程专业隧道及地下工程方向《地下工程》课程教学大纲要求:本课程安排两周的课程设计,采取分散进行的方式。按照本学期本课程教学的实际教学情况,对课程设计工作做如下安排: 1、根据教学进度,在讲授隧道结构计算章节前后将课程设计任务布置给学生; 2、从讲授隧道结构计算内容算起,分散在4周时间内完成课程设计全部内容; 3、课程设计计算书完成后,在第16周二(2014年6月10日)前由各班班长收集齐全后交指导教师; 三、课程设计题目及资料 1、课程设计题目:公路隧道结构计算分析 老鹰岩隧道位于四川省乐山市马边县和沐川县之间,为一直线型隧道,公路等级:二级公路;道路设计行车速度: V=40km/h;隧道设计速度:V=40km/h。起止桩号为K49+785~K50+030,长245米。主洞净宽9米,净高5米。 洞口段地质条件较差,对于V 级围岩地段,留核心土环形掏槽开挖;IV 级

液压系统课程设计任务书

学号: 课程设计任务书 2013~2014 学年第二学期 学生姓名:专业班级: 指导教师:工作部门: 一、课程设计题目: 二、课程设计内容 液压传动课程设计一般包括以下内容: (1) 明确设计要求进行工况分析; (2) 确定液压系统主要参数; (3) 拟定液压系统原理图; (4) 计算和选择液压件; (5) 验算液压系统性能; (6) 结构设计及绘制零部件工作图; (7) 编制技术文件。 学生应完成的工作量: (1) 液压系统原理图1张; (2) 部件工作图和零件工作图若干张; (3) 设计计算说明书1份。 三、进度安排

四、基本要求 (1) 液压传动课程设计是一项全面的设计训练,它不仅可以巩固所学的理论知识,也可以为以后的设计工作打好基础。在设计过程中必须严肃认真,刻苦钻研,一丝不苟,精益求精。 (2) 液压传动课程设计应在教师指导下独立完成。教师的指导作用是指明设计思路,启发学生独立思考,解答疑难问题,按设计进度进行阶段审查,学生必须发挥主观能动性,积极思考问题,而不应被动地依赖教师查资料、

给数据、定方案。 (3) 设计中要正确处理参考已有资料与创新的关系。任何设计都不能凭空想象出来,利用已有资料可以避免许多重复工作,加快设计进程,同时也是提高设计质量的保证。另外任何新的设计任务又总有其特定的设计要求和具体工作条件,因而不能盲目地抄袭资料,必须具体分析,创造性地设计。 (4) 学生应按设计进程要求保质保量的完成设计任务。 液压传动课程设计原始资料 一、课程设计内容(含技术指标) 设计中等复杂程度的机床液压传动系统,确定液压传动方案,选择有关液压元件,设计液压缸的结构,编写技术文件并绘制有关图纸。 1、设计一台卧式单面多轴钻孔组合机床液压动力滑台的液压系统。已知参数:切削负载FL=30500N,机床工作部件总质量m=1000kg,快进、快退速度均为5.5m/min,工进速度在20~100mm/min范围内可无级调节。滑台最大行程400mm,其中工进行程150mm,往复运动加、减速时间≤0.2s,滑台采用平导轨,其摩擦系数fs=0.2,动摩擦系数fd=0.1。滑台要求完成“快进-工进-快退-停止”的工作循环。 2、设计一台卧式单面多轴钻孔组合机床的液压系统,要求液压系统完成“快进—工进—快退—停止”的工作循环。已知:轴向切削力为32000N,移动部件总重量为10810N,工作台快进行程为150mm,工进行程为100mm,快进、快退速度为7m/min,工进速度为60mm/min,加、减速时间为0.2s,导轨为平导轨,静摩擦系数为0.2,动摩擦系数为0.1。 3、设计一台专用卧式钻床的液压系统,要求液压系统完成“快进—工进—快退—停止”的工作循环。已知:最大轴向钻削力为14000N,动力滑台自重为15000N,工作台快进行程为100mm,工进行程为50mm,快进、快退速度为 5.5m/min,工进速度为51—990mm/min,加、减速时间为0.1s,动力滑台为平导轨,静摩擦系数为0.2,动摩擦系数为0.1。 4、设计一台专用卧式铣床的液压系统,要求液压系统完成“快进—工进—快退—停止”的工作循环。已知:铣头驱动电动机功率为8.5kw,铣刀直径为70mm,转速为350r/min,

C语言课程设计任务书

信息科学与工程学院综合设计报告书课程名称:C语言课程设计 班级: 学号: 姓名: 指导教师:

目录 ( 一) 需求分析..................................... . 2-3 1.设计题目; 2.用户操作流程; 3.数据处理流程; (二)概要设计......................................4-5 1.系统总体设计框架; 2.系统功能模块图; (三)详细设计.....................................5-11 1.主要功能模块的算法设计思路; 2.工作流程图; (四)主要源程序代码...............................12-21 1.完整源程序清单及关键注释; (五)调试分析过程描述.............................21-24 1.测试数据、测试输出结果; 2.对程序调试过程中存在问题的思考; (六)课程设计小结.................................24-25 1.包括课程设计过程中的学习体会与收获; 2.对C语言和本课程设计的认识以及自己的建议等内容。

一、需求分析 1、设计题目: 编程实现以下功能: (1)分别输入一元多项式pn (x)和Q n (x)。 从键盘输入一元多项式中各项的系数和指数,并用单链表 加以表示。 (2)分别对一元多项式pn (x)和Q n (x)进行升幂排序。 将一元多项式中各子项按照指数从小到大的顺序排序。 (3)分别输出一元多项式pn (x)和Q n (x)。 将用单链表表示的一元多项式输出,即打印多项式的系数 和指数。 (4)任意输入一个实数x0,分别求出一元多项式pn (x0)和Q n (x0)的值。 (5)已知有两个一元多项式分别为Pn (x)和Qn (x),求出两个多项式的和 R n (x)和差T n (x),分别用单链表表示R n (x) 和T n (x), 并将二者输出, (R n (x)=P n (x)+Q n (x),T n (x)=P n (x)-Q n (x)) 2、用户操作流程: (1)进入欢迎及界面。

相关主题
文本预览
相关文档 最新文档