迷宫问题大作业

迷宫问题大作业
迷宫问题大作业

数据结构课程设计大作业

20140821班

题目迷宫问题

专业计算机科学与技术

学生姓名姚鑫

学号2014082309

指导教师樊艳芬

完成日期2016/5/19

湖州师范学院信息工程学院

目录

内容摘要 (1)

设计任务与技术要求 (2)

总体设计方案 (2)

数据结构和算法的设计 (2)

程序清单 (3)

程序测试与调试 (7)

结论与体会 (10)

迷宫问题

【内容摘要】

在一个m行,n列的迷宫中求从入口到出口的一条简单路径,即在求得路径上不能同时重复出现同一通道。迷宫可用下图所示的方块来表示,每个方块或者是通道(用空白方块表示)或者是墙(用带阴影的方块表示)。0和1分别表示迷宫中的通道和墙。

输出时简单路径用‘☆’表示,起点用‘入’表示,出口用‘出’表示,墙用‘■’表示,可走的路用‘’表示。

输入m,n,表示m行n列。再输入m行n列的迷宫(用0和1组成的矩阵表示),再输入迷宫的起点和终点,输出迷宫(含有从起点到终点的简单路径)。运用了深度优先搜索和递归的相关知识。

【关键字】深度优先搜索,递归

【Abstract】

Looking for a simple path from the entrance to the exit in a maze of M rows and N columns, that is, the road could not be repeated at the same time in the path. A maze can be shown as diamonds in the following figures. Each diamond is either road or wall. Well , a blank diamond shows the road and a black diamond shows the wall .In the program ,zero represents road ,and one represents wall.

When we output,‘☆’represents road, enter stands for starting point ,out stands for exit and ‘■’represents wall. Well, ‘’stands for the way that we can choose.

First we should type in m and n. Then type in rows of m and columns of n which can be represented by matrix made of zero and one. In the end, we should type in the starting point and exit.

We have learned the information about Depth First Search and recursion.

【Key words】Depth First Search,recursion

一、实验内容概述(设计任务与技术要求)

以一个m×n的长方阵表示迷宫,0和1分别表示迷宫中的通路和障碍。设计一个程序,对任意设定的迷宫,求出一条从入口到出口的通路,并把这条通路显示出来,或得出没有通路的结论。

二、实验目的概述(总体设计方案)

a)掌握迷宫问题的DFS(深度优先搜索)解法。

b)了解和熟悉深度优先搜索的思路。

c)复习和熟悉二维数组的用法。

d)使用图形来美化输出,使得输出一目了然。

三、解题思路的描述(数据结构和算法的设计)

(1)总体思路:先输入迷宫多少行多少列(从1存到n,0行0列以及n+1行n+1列设置为墙用1表示),再输入迷宫的入口和出口,然后递归调用DFS函数(深度优先搜索)来寻找

从起点到终点的路线。在搜索过程中把存迷宫的二维数组中每个点分别置为:

0 尚未走过的路

1 墙

2 路线

然后判断是否存在这样一条路线,如果不存在,就输出“不存在从入口到出口的路线”;

如果存在,就输出迷宫(包括路线)。并输出注释。

'☆' means the route

' ' means the road

'■' means the wall

(2)数据结构的选择和描述:选用了int类型数组,数组a用来存储迷宫,结构体Point用来定义入口坐标和出口坐标,x代表横坐标,y代表纵坐标。flag用来记录dfs时是否找到

出口,即退出dfs的标志。(flag为1时找到出口,为0时没找到)

(3)要算法的功能和描述:采用了深度优先搜索(DFS)的思想。每次搜索的方向依次为右下左上,每搜索一个点就标记为2,若从该点的四个方向进行dfs都无法找到出口,就重新

标记为0.;

(4)DFS的具体描述:

1.传入一个点的横纵坐标,一开始就把传入的存迷宫的这个二维数组节点标记为2(路线),

2.判断是否为终点,如果是终点flag标记为1(防止退出DFS时走过的路线被还原0),

并跳出DFS函数;否则什么也不做,继续往下运行;

3.向右搜索:判断右边相邻的结点是否违反要求(即是否是墙或者越界),如果不违反要

求,就把右边相邻的结点传入DFS进行搜索;否则什么也不做,继续运行;

判断是否已经找到终点,若已经找到终点(flag==1)直接跳出函数;

4.向下搜索:判断下边相邻的结点是否违反要求(即是否是墙或者越界),如果不违反要

求,就把下边相邻的结点传入DFS进行搜索;否则什么也不做,继续运行;

判断是否已经找到终点,若已经找到终点(flag==1)直接跳出函数;

5.向左搜索:判断左边相邻的结点是否违反要求(即是否是墙或者越界),如果不违反要

求,就把左边相邻的结点传入DFS进行搜索;否则什么也不做,继续运行;

判断是否已经找到终点,若已经找到终点(flag==1)直接跳出函数;

6.向上搜索:判断上边相邻的结点是否违反要求(即是否是墙或者越界),如果不违反要

求,就把上边相邻的结点传入DFS进行搜索;否则什么也不做,继续运行;

判断是否已经找到终点,若已经找到终点(flag==1)直接跳出函数;

7.运行到这里还没找到终点表示此路不通,把这点还原为没走过时的样子(重新标记为0);

四、源程序清单(源程序中应该附有必要的注释)

(1)源程序

#include

typedef struct point{

int x;

int y;

}Point; //迷宫中每个点

Point start,end; //迷宫的入口与出口

int a[40][40]; //输入时迷宫存储的数组

int m,n; //m:行 n:列

int flag=0; // sign of exit dfs退出的标志

void dfs(int x, int y) //深度优先搜索

{

a[x][y]=2; //表示x行y列这个位置已被走过

if((x==end.x)&&(y==end.y)){ //找到了出口

flag=1; //退出dfs,防止走过的路线被还原

return ;

}

if((y+1<=n)&&(a[x][y+1]==0)){ //向右搜索

dfs(x,y+1);

}

if(flag){

return;

}

if((x+1<=m)&&(a[x+1][y]==0)){ //向下搜索

dfs(x+1,y);

}

if(flag){

return;

}

if((y-1>=1)&&(a[x][y-1]==0)){ //向左搜索

dfs(x,y-1);

}

if(flag){

return;

}

if((x-1>=1)&&(a[x-1][y]==0)){ //向上搜索

dfs(x-1,y);

}

if(flag){

return;

}

a[x][y]=0; //此路不通,把这点还原为没走过时的样子

}

int main()

{

int i,j;

printf("请输入多少行多少列:(m,n)(注:输入0 0结束)\n");

while(scanf("%d%d",&m,&n)&&(m||n)){ //输入0 0 结束printf("请输入迷宫:(1表示墙 0表示路)\n");

for(i=0;i<=m+1;i++){ //输入迷宫for(j=0;j<=n+1;j++){

if(i==0||j==0||i==m+1||j==n+1){ //外面置为1,即墙a[i][j]=1;

}else{

scanf("%d",&a[i][j]);

}

}

}

printf("请输入迷宫入口和出口: x1 y1 x2 y2\n");

scanf("%d%d%d%d",&start.x,&start.y,&end.x,&end.y); //输入迷宫入口及出口

dfs(start.x,start.y); //深度优先搜索搜索路径

if(!flag){

printf("不存在从入口到出口的路线\n");

}

for(i=0;i<=m+1;i++){ //输出结果

for(j=0;j<=n+1;j++){

if(i==start.x&&j==start.y){ //入口输出美化

printf("入");

}else if(i==end.x&&j==end.y){ //出口输出美化

printf("出");

}else if(a[i][j]==1){ //墙输出美化

printf("■");

}else if(a[i][j]==0){ //路输出美化

printf(" ");

}else if(a[i][j]==2){ //路线输出美化

printf("☆");

}

}

printf("\n"); //换行

}

printf("'☆' means the route\n"); //注释

printf("' ' means the road\n");

printf("'■' means the wall\n");

}

return 0;

}

(2)算法的时间复杂度是什么?算法的空间复杂度是什么?为什么?

答:空间复杂度:线性时间复杂度,具体看最长的那条路径长度。栈中维持单一路径

上的节点;

时间复杂度:O((m+1 )*(n+1))注:存储迷宫所用的行数乘列数;

(3)还可以扩充自己的想法,题目要求所编程序都能适用哪些情况,如果做一些修改,还能适合什么情况(能解决什么问题)?

答:此代码还可以解决类似的寻找路径问题,且输出形象简洁。

做一些修改可以解决大多数的DFS问题,如油田问题(记忆化搜索);

(4)说明在这个程序中所使用的各变量、形式参数的具体含义及各子程序之间的调用关系等。

答:

1.调用关系:调用DFS函数,且在搜索的过程中一直调用,直到找到终点。

2.结构体Point:用来表示迷宫的每个结点,拥有成员变量x,y皆为整形。

3.Start ,End:

a)Start:迷宫的起点;

b)End: 迷宫的终点

4.a[40][40]:存储迷宫的数组;

5.m,n:

a)m 行;

b)n 列;

6.flag:dfs退出的标志;

五、程序调试及测试结果

(1)上机调试上述程序,总结在调试过程中出现的问题及解决方法

1.一开始没有定义flag导致找到从起点到终点的路线后无法输出路线。

因为在退出时都被还原了(还原为未走过时的样子了);

2.在美化输出时没有考虑到有些字符是普通的一个字符的两倍,导致输出完全不对;

3.没有考虑找不到从起点到终点的路线时的情况;

4.深度优先搜索时在搜索完四个方向都没有找到终点时忘记把这个点还原为0了;

(2)给出几组有代表性的数据,运行上述程序,查看运行结果,分析运行结果。

截图 1 5×5的迷宫

从(1,1)到(5,5)的路线

截图 2 5×5的迷宫

从(1,1)到(3,5),不存在路线

截图 3 书上的例子(6×9的迷宫)从(1,1)到(6,9)的路线

截图 4 书上的例子(6×9的迷宫)从(1,1)到(1,9)路线

截图 5 12×18的迷宫

从(1,1)到(12,18)的路线

六、结论与体会

(1)在解决和设计本文题目所涉及到的问题时,你所采取的方法、手段和关键性的技术。

采用了DFS(深度优先搜索),递归,输出的转化。

(2)在调试程序的过程中你所遇到的问题及解决方法。

1.一开始没有定义flag导致找到从起点到终点的路线后无法输出路线。

因为在退出时都被还原了。。。(还原为未走过时的样子了);

2.在美化输出时没有考虑到有些字符是普通的一个字符的两倍,导致输出完全不对

3.没有考虑找不到从起点到终点的路线时的情况;

4.深度优先搜索时在搜索完四个方向都没有找到终点时忘记把这个点还原为0了;

(3)关于程序的特色和改进设想。

特色:

1.输出十分形象简洁,只要输入迷宫以及起点终点就可以输出所求路线(路线存在的

情况下)

2.采用了深度优先搜索,代码简洁,可读性高;

3.深度优先搜索时的改变方向的方式采用了最简单,易懂的方式,虽然啰嗦,但是可

读性好;

改进设想:

1..可以使用BFS(广度优先搜索),可以找出从起点到终点的最短路径,但是代码会变

得更长,用到了队列,可读性降低。

2.使用c++的容器队列来使用BFS,可是代码简洁。

(4)其他需要说明的情况。

任意大小的迷宫以及任意的起点与终点皆可计算出从起点到终点的路径(虽然不是最短的)。

小结:迷宫问题我一开始在输出的处理上有点问题,我一开始把存迷宫的int型二维数组转存到char的字符型数组中去了,结果输出就乱套了,后来发现可以遍历的时候判断,如果是0就用printf直接输出两个空格,是1就用printf输出■,是2就用printf输出☆(因为■和☆占两个字节和中文是一样的,所以用char型的数组没法存,后来用printf直接对应判断输出就美观多了)如果是起点就输出‘入’,是终点就输出‘出’。在dfs中,我用的是回溯法,但是一开始存了路径后忘了考虑回溯的情况(即搜错路要回溯的时候),后来加了一个回溯的处理就好了。还有就是搜索结束的处理,用了flag来标记。这样在搜到终点时就可以直接一层一层的跳出函数递归了。(不会出错)

参考文献

指导教师:日期实验成绩:

毕业大作业格式要求及封面

4、毕业大作业(论文)的撰写 (1)毕业大作业(论文)的框架与要求: a、题目:应简短、明确、有概括性,可分为主标题和副标题,一般不超过20个字。 摘要 b、目录:两级目录。 c、引言:应说明课题的来源、目的、意义,对本课题已有研究情况的评述,本课题欲解决的主要问题,采用的手段、方法,所需条件,成果及意义等。 d、正文:对设计或研究做详细表述(计量单位统一用国际标准制,引用的数据或重要论断要注明出处)。 引言、正文均另起一页。 e、主要参考文献:按正文引用的先后顺序列出,包括文献编号和文献出处。 对于书籍和专著应按下列顺序注明:作者、书名、版本,出版地、出版者、出版年,引用内容所在页码; 对于论文应按下列顺序注明:作者、论文篇目、刊物名,年、月、卷(期),论文在刊物中的页码; f、附录:附录不宜放在正文中,但有参考价值的内容,如数据表格、公式推导、设计图纸、外文文献译文等。 g、结束语:以简短文字对工作中帮助自己的人表示感谢。 (2)篇幅:专科生为6000-8000字。 (3)毕业大作业(论文)上交时,必须按统一格式打印:用A4纸、仿宋小4号字打印,其中题目用仿宋加粗3号字打印,每页44行,每行34字即68字符,每页需加页眉、页脚[页眉:北京科技大学管庄校区毕业设计(论文)、(仿宋5号字),页脚:第X页共X 页(居中排、仿宋5号字)],并用封面装订成册。上述内容同时需制成软盘,装入论文封底专用袋内。 装订次序:毕业大作业封面、摘要、目录、引言、正文、主要参考文献、附录、结束语、封底。 毕业大作业(论文)一式两份并要求交电子版,教研室存。优秀毕业大作业(论文)需再交一份存校区图书馆。

C语言大作业报告

目录 一、设计题目 二、目标和需求分析 三、开发工具 四、应用平台 五、程序模块 1、游戏盒子 2、2048 3、扫雷 4、贪吃蛇 六、开发日志 七、程序调试及运行 八、程序开发总结 总结:虽然做出来的东西真的没什么技术水平,但是我们尽量把这个东西的每个方方面面做完整。

目标和需求分析一个小的游戏盒子,可以用来启动其它游戏,当然,其它游戏也是我们大作业的编写内容,平时可以玩玩用来打发时间 用到的工具VS2005 Easyx图形库 Pthread线程库 Hge 分工 秦贤康 组织大家,编写主程序,及构思计划,技术指导 王尧 所有的文件处理,数据算法方面优化 王懿晨 合作2048模块 杨梓晗 图片资源加工,音乐裁剪,按钮制作 程维驰 合作扫雷模块 应用平台:WINDOWS X64

程序功能模块: 一、 安装包:(写入开始菜单快捷方式,桌面快捷方式,开机启动等)//pascal 脚本编写 #define MyAppName "C 大作业" #define MyAppVersion "2.0" #define MyAppPublisher "五人小组" #define MyAppExeName "1.exe" [Setup] AppId={{49DB1DB4-FAE9-4ACB-A4B9-E5C420C5F10B} AppName={#MyAppName} AppVersion={#MyAppVersion} ;AppVerName={#MyAppName} {#MyAppVersion} AppPublisher={#MyAppPublisher} DefaultDirName={pf}\{#MyAppName} DisableDirPage=yes DefaultGroupName={#MyAppName} DisableProgramGroupPage=yes (剩余代码未全部给出) 安装包 内嵌:C 语言报告 游戏盒子 开机启动,桌面快捷方式等 进入动画,左侧动画 启动模块 通知,和显示游戏信息 2048 扫雷 贪吃蛇 主界面信息显示 通知栏信息显示 意见箱

C语言大作业报告范文

学院XX学院

目录 1 摘要 (3) 1.1设计题目 (3) 1.2设计容 (3) 1.3开发工具 (3) 1.4应用平台 (3) 2 详细设计 (3) 2.1程序结构 (3) 2.2主要功能 (3) 2.3函数实现 (3) 2.4开发日志 (4) 3 程序调试及运行 (4) 3.1程序运行结果 (4) 3.2程序使用说明 (4) 3.3程序开发总结 (4) 4 附件(源程序) (4)

1 摘要 1.1 设计题目 (A)求最大数;(B)高次方数的尾数 1.2 设计容 (A)求555555的约数中最大的三位数; (B)求13的13次方的最后三位数1.3 开发工具 Visual C++ 6.0和Win32。 1.4 应用平台 Windows XP 32位 2 详细设计 2.1 程序结构 (A)求最大数

定义变量a、b、c,a从100至999递增,b为555555,用b除以a,判断是否可以整除,若可以,则把a的值赋给c,a自加1;若不可,a自加1。重复以上步骤,直到a>999,输出c。循环语句采用for 循环。 (B)高次方数的尾数

定义变量i、j,i从1至13递增,j初值为1。用j乘以13,用得到的乘积除以1000并取其余数,赋给j,i自加1。重复以上步骤,直到i>13,输出j。循环语句采用for循环。

2.2 主要功能 程序功能:(A)求555555的约数中最大的三位数; (B)求13的13次方的最后三位数。 原理和方法: (A)题目的原理和方法:因为要求的是三位数,就用555555从小到大依次除以100到999的所有数,并判断能否整除,最后一个可以整除555555的数即为所求。循环语句采用for循环。 (B)题目的原理和方法:乘积的最后三位数只与乘数和被乘数的后三位数有关,因此用1乘以13,再除以1000并取余数,用余数乘以13,再除以1000并取余数,依次进行下去,累乘13个13后除以1000取得的余数即为所求。循环语句采用for循环。 2.3 函数实现 (A)求最大数 int a,b=555555,c; /*定义变量,赋初值*/ for(a=100;a<=999;a++) /*FOR循环*/ { if(b%a==0) /*利用IF语句判断b是否可以被a整除*/ c=a; /*将555555的约数赋给c*/ } printf("%d\n",c); /*输出c*/ (B)高次方数的尾数 int i,j=1; /*定义变量,赋初值*/ for(i=1;i<=13;i++) /*FOR循环*/ { j=j*13%1000; /*将j乘以13的乘积的后三位数赋给j*/ } printf("%d\n",j); /*输出j*/ 2.4 开发日志 (A)选定这个题目后,我先分析此题用何种算法完成,确定了使用FOR循环并限定除数围,然后画出程序框图,再一步步编写源代码。调试过程很顺利,只有一个地方忘加了“;”。运行程序后,结果非常满意。 (B)这个题目不难,但是也不简便,我想到只取三位数的方法,并使用FOR循环,然后画出程序框图,再一步步编写源代码。调试过程发现对其中一个变量的初值是1还是13有待解决,分析程序后发现应该用1,然后进一步调试,运行,直至结果正确。

RFID大作业参考格式

学 生 研 究 报 告 课 题 名 称 利用RFID 实现对图书的管理 院 部 名 称 龙蟠学院 专 业 M11电子信息工程 班 级 M11电子信息工程 学 生 姓 名 李梦茹 学 号 1121119031 任 课 教 师 姚 健 东

目录 摘要 (3) 第1章课题背景及研究意义 (4) 1.1 课题背景 (4) 1.2 课题内容 (4) 1.3 研究意义 (4) 第2章系统方案设计 (6) 2.1 RFID技术的定义及其组成 (6) 2.2 RFID技术的原理 (6) 2.2.1 射频识别的基本流程 (6) 2.2.2 RFID的工作原理 (6) 2.2.3 RFID工作的物理学原理 (7) 2.3 RFID技术的特点 (8) 第3章硬件设计 (9) 3.1 登记 (10) 3.2 入库 (10) 3.3 借阅 (11) 第4章软件设计 (13) 第5章总结 (15)

利用RFID技术实现对图书的管理 摘要 本系统实现对图书的管理。文章第一部分阐述了RFID技术的研究领域及其现状。第二部分详细介绍RFID技术及其原理,在此通过对它的定义和结构组成及其特点来介绍RFID技术,RFID技术的原理主要包括它的工作原理和工作的物理学原理。第三部分运用RFID技术依次来实现对图书的登记、入库、借阅等流程监控,构建基于RFID的图书管理系统,在这部分中详细介绍了如何利用RFID 技术来实现图书的登记、入库、借阅等,并且与传统系统比较得之RFID技术的优越性。第四部分进行总结,RFID技术对图书的管理具有很强的便利性,很多国家的图书馆都采用该技术进行图书的管理,随着技术的发达,RFID技术在图书馆领域的应用会更广阔,将会给图书馆带来一场新的技术革命。 关键字: RFID;自动识别技术;图书;登记;入库;借阅

C语言大作业(成绩管理系统)

C语言大作业(成绩管理系统)制作人:皇家战盾 2016年12月31日

信息结构体中包括:学号、姓名、英语成绩、高数成绩、大物成绩、C语言成绩、机械制图成绩、政治成绩、体育成绩、总成绩、平均分。 源程序代码 #include #include struct student { int num; 学号 char name[100]; 姓名 int score1; 英语 int score2; 高数 int score3; 大物 int score4; C语言 int score5; 机械制图 int score6; 政治 int score7; 体育 int score8; 总成绩 int score9; 平均分 }stu[100]; int R; int xuehao; double ping[10]; int gao[10]; void denglu(); 登录函数 void student(); 学生登录界面函数 void teacher(); 教师登录界面函数 void chengji(); void quanbanchengjishuchu(); 调用全班各科成绩、总分、平均分进行输出函数void tianjia(); 教师使用添加学生成绩函数 void xiugai(); 教师使用修改学生成绩函数 void input(); 教师修改成绩将成绩录入文档函数 void shanchu(); 教师删除学生信息及成绩函数 void gerenchengji(); 输出显示学生个人成绩

void zhuce(); 学生登录注册函数 void pingjun(); 成绩计算平均分 void chaxun(); 教师使用按学号查询学生个人成绩 void xuehaopaixu(); 按学号顺序显示个人成绩 void gerengaofen(); 学生使用查询各科最高分 void zuigaofen(); 显示各科最高分分数 void ps1(); 英语成绩排序 void ps2(); 高数成绩排序 void ps3(); 大物成绩排序 void ps4(); C语言成绩排序 void ps5(); 工图成绩排序 void ps6(); 政治成绩排序 void ps7(); 体育成绩排序 void pz(); 总成绩排序 void xueshengpaiming(int number); 学生查看自己在全班排名 main() { int x; system("cls"); chengji(); pingjun(); zuigaofen(); system("cls"); printf("\n*****欢迎使用本成绩管理系统*****\n\n请选择功能:\n1.登录\n2.注册\n您选择的功能编号为:"); scanf("%d",&x); if(x==1){denglu();} else if(x==2){zhuce();} else {printf("请正确选择!");} } void denglu() { int a[100],b[100],c[100],i,y,m,n; char w; FILE * fp;

大作业(论文)书写说明及格式要求

论文书写说明及格式要求 一、书写说明 (一)任务书(由指导教师填写) 任务书的内容:根据本课程论述的产品全生命周期的理论,自拟一个你感兴趣的话题进行阐述。正文字数不少于3000字。 2、开题报告(由学生本人填写) 由学生本人论述选择这一课题的目的和意义,对所著课题的研究方案及计划进度的安排。(100字左右) 3、中文摘要的书写说明:(由学生本人填写) 摘要是用中文来对论文的高度概括,是全文的缩影。是对论文内容不加注释和评论的简短陈述,具有独立性和概括性,即不用阅读论文(设计)全文,就能获得必要的信息,主要是结果和结论。 关键词:是为了文献标引工作从论文中选取出来的,用以表达全文内容信息的单词或术语,每篇论文(设计)一般选取3-8个词作为关键词。 4、目录的书写说明:(由学生填写) 论文要有目录,以反映出论文的纲要。列出目录,可以从中看出论文的内容梗概,论点的安排,整体的布局,各章节的联系,给人以清楚的轮廓。因此,目录应列出通篇论文各组成部分的大小标题,分别层次,逐项标注页码,并包括注明参考文献、附录、图版、索引等附属部分的页码,以便读者查找。 5、参考文献的书写说明:(由学生填写) 参考文献置于正文的末尾。对那些重要的学术性强的,在论证中所引用过的文献,一般都应列出来。 参考文献按在正文中出现的先后次序列表于文后;表上以“参考文献:”(左顶格)或“[参考文献]”(居中)作为标识;参考文献的序号左顶格,并用数字加方括号表示,如[1]、[2]、…,以与正文中的指示序号格式一致。每一参考文献条目的最后均以“.”结束。各类参考文献条目的编排格式及示例如下: (1)专著、论文集、学位论文、报告 [序号]主要责任者.文献题名[文献类型标识].出版地:出版者,出版年.起止页码(任选). [1] 刘国钧,陈绍业,王凤翥.图书馆目录[M].北京:高等教育出版社,1957.15-18. (2)期刊文章 [序号]主要责任者.文献题名[J].刊名,年,卷(期):起止页码. [2] 何龄修.读顾城南明史[J].中国史研究,1998,(3):167-173. (3)论文集中的析出文献 [序号]析出文献主要责任者.析出文献题名[A].原文献主要责任者(任选).原文献题名[C].出版地:出版者,出版年.析出文献起止页码. [3] 钟文发.非线性规划在可燃毒物配置中的应用[A].赵玮.运筹学的理论与应用——中国运筹学会第五届大会论文集[C].西安:西安电子科技大学出版社,1996.468-471. (4)报纸文章 [序号]主要责任者.文献题名[N].报纸名,出版日期(版次). [4] 谢希德.创造学习的新思路[N].人民日报,1998-12-25(10). (5)电子文献 [序号]主要责任者.电子文献题名[电子文献及载体类型标识].电子文献的出处或可获得地址,

c语言大作业

c 语言大作业 《面向对象技术课程大作业》 设计报告书 题目: 指导教师: 姓名: 学号: 日期: 管理科学与工程学院2011-2012 学年第1 学期 一、需求分析: 随着小型超市规模的发展不断扩大,商品数量急剧增加,商品的各种信息量也成倍增长。超市在时时刻刻需要对商品各种信息进行统计分析。而大型的超市管理系统功能过于强大而造成操作繁琐降低了小超市的工作效率。超市管理系统是市场上最流行的超市上常用的系统之一,它主要包含以下几个模块: 登入、原始数据录入、数据的汇总及查询等。从而,实现对进货、库存和销售全面、动态、及时的管理。 超市管理系统是一个多部门、多任务的信息管理系统,包含人事部、采购部、销售部、财务部和总经理。对于不同的部门必须有独立的功能。数据的可靠性是信息管理的必要保证,所以不同部门的员工在执行各自权限功能时对其它部门数据的影响必须降到最低,因此超市管理系统也同样是通过权限来实现数据的更新和行为的操作。用户权限分为: 各部门普通员工权限、各部门经理权限、各部门管理员权限和总经理权限。 计算机作为一种高效的管理工具,对现代企业的管理发挥了及其重要的作用。 商业超市是当今最重要的商业经营形式之一,为了进一步提高商业超市的管理水平和竞争力,管理信息系统在商业超市中的趋势已是大势所趋。随着小超市规模的发 展不断扩大,商品数量急剧增加,有关商品的各种信息也成倍增长。所以,计算机 管理超市的模式,是一种很有必要的管理模式,不但能提高工作效率,还能减少工作人员的工作

量。是一种非常有潜力的市场经营模式。 二、系统的主要功能 功能需求: 1、超市员工管理 2、进货管理 3、销售管理 4、销售额管理 具体如下: (1) 登入模块员工可通过该功能登入本系统,执行其权限范围内的所有功能。 (2) 新进职员登记模块 新入职员工通过该功能,添加该员工信息入员工信息表。 (3) 员工信息修改模块 员工通过该功能,修改其住址、联系电话、银行卡号。(4) 职员离职登记模块 员工通过该功能,添加职员离职信息。(5) 修改员工登入密码模块员工通过该功能,修改登入密码。 (6) 员工考勤登记模块 员工通过该功能,添加考勤记录。 (7) 添加采购信息模块 员工通过该功能,添加采购记录。 (8) 修改商品单价模块

大作业说明(1)资料

Xxx零件加工工艺方案的分析 学生,XXX,XXX (具体过程可参考下面的例子,但包括 包含零件分析、毛坯的确定、工艺路线的拟定(方案对比),每道加工工序定位夹紧方案、设备的确定、切削用量确定,典型工序刀具的选择(两道)) 每题4人,2人一组,每组负责小批量或大批量的工艺方案分析,不能重复。 4.1零件分析 1.零件的作用 拨叉是变速箱的换档机构中的一个主要零件。它拨动滑移齿轮,改变其在齿轮轴上的位置,可以上下移动或左右移动,从而实现不同的速度切换。φ24孔套在变速叉轴上,M8螺纹孔用于变速叉轴螺钉联结,拨叉脚则夹在双联变换齿轮的槽中。变速操纵机构通过拨叉头部的操纵槽带动拨叉与轴一起在变速箱中滑移,拨叉脚拨动双联变换齿轮在花键轴上滑动,从而实现变速。 2.零件材料 零件材料为45钢,为优质碳素结构用钢,硬度不高易切削加工。这种钢的机械性能很好,但是这是一种中碳钢,淬火性能并不好,45号钢可以淬硬至HRC42~46。常将45钢表面渗碳淬火。 3.零件的工艺分析 图4-1零件图 由零件图4-1可知,其材料为45钢。具有较高的强度和较好的切削加工性。属典型的叉杆类零件。为实现换档、变速的功能,其叉轴孔与变速叉轴有配合要求,因此加工精度要

求较高。叉脚两端面在工作中需承受冲击载荷,为增强其耐磨性,该表面要求高频淬火处理,硬度为HRC 不小于50;为保证拨叉换档时叉脚受力均匀,要求叉脚两端面对叉轴孔φ24的垂直度要求为0.05mm ,平面度为0.08mm 。拨叉采用M8紧固螺钉定位。 拨叉头两端面和叉脚两端面均要求切削加工,并在轴向方向上均高于相邻表面,这样既减少了加工面积,又提高了换档时叉脚端面的接触刚度;φ24孔和M8螺纹孔的端面均为平面,钻孔工艺性较好;另外,该零件除主要工作表面(拨叉脚两端面、变速φ24叉轴孔,其余表面加工精度均较低,不需要高精度机床加工,通过铣削、钻床、攻螺纹的粗加工就可以达到加工要求;而主要工作表面虽然加工精度相对较高,但也可以在正常的生产条件下,采用较经济的方法保质保量地加工出来。由此可见,该零件的工艺性较好。主要工作表面为拨叉脚两端面和φ24叉轴孔。由于拨叉在工作时承受一定的力,因此要有足够的强度、刚度和韧性。 4.主要加工表面 看零件图上粗糙度符号,有机加工要求的都要加工。 (1)+0.021 0 247() H φ,表面粗糙度Ra1.6。 (2)M8-6H 螺纹加工,需要钻孔、攻螺纹。 (4)拨叉头两端加工,保尺寸40,表面粗糙度Ra3.2。 (5)拨叉脚两端面,保证尺寸12,表面粗糙度Ra3.2。 (6)拨叉角内表面R25加工。 5.确定零件的生产类型 依设计题目知:产品的年产量为4000台/年,每台产品中该零件数量为1件/台;结合生产实际,备品率和废品率分别取2%和0.5%,零件年产量为: N=4000台/年×1件/台×(1+2%)×(1+0.5%)=4100.4件/年 生产类型为大量生产。 4.2确定毛坯、绘制毛坯简图 1.选择毛坯 拨叉在工作过程中要承受冲击载荷,为增强拨叉的强度和冲击韧度,获得纤维组织,毛坯选用锻件。该拨叉的轮廓尺寸不大,且生产类型属大批生产,为提高生产率和锻件精度,宜采用模锻方法制造毛坯。毛坯的拔模斜度为5°。 2.确定毛坯的尺寸公差和机械加工余量 (1)公差等级由拨叉的功用和技术要求,确定该零件的公差等级为普通级。 (2)锻件重量 按设计图纸,拨叉的质量m ≈0.33kg 。可初步估计机械加工前锻件毛坯的重量为0.44kg (密度取7.8×10-6kg/mm 3)。 (3)锻件形状复杂系数对拨叉零件图进行分析计算,可大致确定锻件外廓包容体的长度、宽度和高度,即l=95,b=65,h=45;该拨叉锻件的形状复杂系数为: /0.44/()t N S m m lbh ρ===0.44kg/(95×65×45×7.8×10-6kg/mm 3)≈0.44/2.17≈ 0.203 由于0.203介于0.16和0.32之间,故该拨叉的形状复杂系数属S3级。 (4)锻件材质系数由于该拨叉材料为45钢,是碳的质量分数小于0.65%的碳素钢,故该锻件的材质系数属M1级。 (5)锻件分模线形状根据该拨叉件的形位特点,选择零件高度方向通过螺纹孔轴心的

C大作业坦克大战

#include #include #include #include #include usingnamespacestd; HANDLEMutex=CreateMutex(NULL,FALSE,NULL);/互/ 斥对象intGameOver=0; intlevel=0; intmap[23][23]; // 坦克种类,Normal 为玩家坦克 #defineNormal0 #defineRed1 #defineBlue2 #defineGreen3 // 方向的宏定义 #defineUp0 #defineDown1 #defineLeft2 #defineRight3 // 地图标记的宏定义

#defineEmpty0 #definePlayer1 #definePlayerBullet2 #defineEnemyBullet3 #defineEnemy4 intKill; intKillRed; intKillGreen; intEnemyExist; voidSetPos(inti,intj)// 设定光标位置 { COORDpos={i,j}; HANDLEOut=GetStdHandle(STD_OUTPUT_HANDLE); SetConsoleCursorPosition(Out,pos); } voidHideCurSor(void)// 隐藏光标 { CONSOLE_CURSOR_INFOinfo={1,0}; HANDLEOut=GetStdHandle(STD_OUTPUT_HANDLE); SetConsoleCursorInfo(Out,&info); } intsharp[4][12]=

C语言程序大作业

大连理工大学C程序设计(大作业)总结报告学生成绩录入处理系统 学生姓名:罗 专业班级: 学号: 联系电话: Email : 完成日期:2015年 5 月29日

一、设计任务 我的程序设计是一个学生成绩录入及处理的程序,该程序包括多种功能,能够满足大多数的学生成绩管理处理。主要能够实现的目的主要有: 第一.学生姓名学号既包括三门成绩等信息的录入,并保存到文件d://score.txt。 第二.对每个学生的成绩进行求平均分及按平均分排序的数字处理。 第三.对输入错误的学生信息加以修改重新排序保存。 第四.增加学生信息,重新排序,加以保存。 第五.按每个学生的平均分进行表格化和图形化处理。 第六.实现某位同学的信息查找,包括姓名,学号,每科成绩及平均分。 以上功能全都可以实现,但是注意录入信息的要求,下面会有注释。 二、程序设计与实现 1.结构框图 下图描述预期实现题目的设计方案或功能设计的组成结构。绘制成框图,如图所示是我设计的成绩信息管理程序设计的结构图示:

2.功能模块设计及其流程图 (1) 数据描述与存储 该学生信息统计系统设计一个全局结构体变量,将学生的姓名,学号,各科成绩及平均分保存在结构体,然后供设计各种程序调用,以完成修改,增加,排序和数据显示的功能。学生成绩数据以二进制存储在d://score.txt文件,可以利用程序随时进行增加和修改,同时它会自动排序。的描述题目所使用的核心数据,如;结构体类型定义及结构体成员含义说明。并说明所使用的数据存储方法,指定文件的路径和文件名,保存数据的格式和读数据的目的。 (2) 结构体定义及介绍 typedef struct rec /*定义一个结构体类型*/ { char name[20]; /*第一个元素为学生姓名,20个字节*/ short number; /*第一个元素为学生学号,2个字节(输入注意不要超出)*/ short score[M]; /*(M为全局3)依次定义三门科目分数:数,英,机*/ float average; /*定义浮点型平均数,保留2位小数,有函数计算赋值*/ }score; score stu[N]; /*(N为全局100)定义全局总数100个学生信息以录入*/ (3)对于该程序的一点说明 1.学号在0~32768之间,请录入前对学号做好数据处理。 2.该系统的成绩满分为一百分制,如有某科成绩不符合应提前处理。 3.录入退出后,同样的数据不需两次输入,可直接运行程序处理及查看。 4.保存退出后请勿删除文件,数据会丢失。 5.柱状图的分辨率在十位数。 (4) 主要函数功能基变量说明

毕业大作业格式要求

北京交通职业技术学 毕业大作业撰写规范 为了完善毕业教育环节,提高我院各专业毕业大作业的质量,实现毕业大作业在内容和格式上的规范化与统一化, 特制订本规范。 一、毕业大作业目的要求: 毕业大作业是培养学生综合运用所学的基础理论、专业知识和基本技能,结合顶岗实习的工作内容,提高分析与解决实际问题的能力以及科技写作或设计能力。 二、毕业大作业内容要求: 毕业大作业应包括以下几方面内容: 1、封面 毕业大作业必须使用学院统一印制的封面,并按要求填写。 2、题目 毕业大作业题目应该简短、明确、有概括性;字数要适当,一般不宜超过20个汉字。如有特殊要求,可加注副标题。 3、摘要(中文) 毕业大作业摘要以浓缩的形式概括全文的内容,中文摘要在200汉字左右。 4、关键词 关键词是表述毕业大作业主题内容信息的单词或术语,关键词数量一般不超过6个。 5、正文 正文一般包括序言、正文主体两部分。序言应说明毕业大作业的意义、目的、主要内容、范围及应解决的问题。正文主体是对毕业大作业内容的详细表述,一般由标题、文字、图、表格和公式等部分组成。正文一般不少于5000字。 6、注释 正文中引用他人的观点及原话、主要数据等必须注明出处,有需要解释的内容,可以加注说明。 7、参考文献 毕业大作业如有参考文献,应按文中引用出现的顺序列全,附于文末。 8、附录(可选) 附录为不宜放在正文中,但有参考价值的内容。 三、毕业大作业注意事项: 1、态度严肃。毕业大作业引用别人的数据、图表、论点、结论时,必须指明

文献(或资料)的出处,即在文中引用处的句末右上角以方括号角注形式注明所引用的文献(或资料)的序号,而该文献(或资料)按序号列入大作业后面的参考文献(或资料)中。 2、思维严谨。结构层次应清晰合理,文字论述应讲究逻辑。 3、语言朴实。毕业大作业一般以第三人称书写。注意学习使用科学术语,行文应简练,语句应朴实。 4、表达规范。毕业大作业中所涉及的名词术语、标点符号、计量单位、技术标准以及设计图、曲线图的表达与标注等,都应符合国家有关部门规定的标准或规范要求。 5、独立完成。写作过程中,可以参考其他资料,也可以与同学探讨研究,但最后必须由本人独立撰写。如有抄袭、代写、雷同等作弊行为,一经发现,所写毕业大作业无效。 四、毕业大作业格式要求: 1、题目 毕业大作业题目为三号黑体字,可以分为1或2行居中打印。 2、副标题为四号楷体,位于题目下一行居中打印。 3、毕业大作业题目下空一行左起空二格打印“摘要:”二字(小四号黑体,字间空一格)。“摘要:”二字后打印中文摘要内容(小四号楷体)。 4、中文关键词置于中文摘要文后,另起一行,中文关键词前应冠以“关键词:”(小四号黑体)左起空二格,后接关键词内容(小四号楷体)。 5、中文关键词下空二行为毕业大作业正文。 (1)标题:一级标题以三号字黑体左对齐打印;二级标题以四号黑体左起空二格打印;三级标题以小四号黑体左起空二格打印。换行打印大作业正文。 (2)正文:采用小四号宋体字打印,行距为固定值20磅。段前段后设置为0.5行。 (3)图:图题中文字体为五号楷体。引用图应在图题的左上角标出文献来源;图号按顺序编号,如“图l”为第一图。如图中含有几个不同部分应将分图号标注在分图的左上角,并在图题下列出各部分内容。 (4)表格:表格按顺序编号,如“表1”为第一表。表应有标题,表内必须按规定的符号注明单位。 (5)公式:公式书写应在文中另起一行。公式后应注明该公式序号。 (6)标点符号:标点符号应遵守《中华人民共和国国家标准标点符号用法》的规定。 (7)数字:数字使用应执行《中华人民共和国国家标准出版物上数字用法》

专科大作业:完整模板doc资料

专科大作业:完整模 板

成人专科毕业大作业毕业大作业 题目名称 年级专业 学生姓名 学号 指导教师 二○××年××月××日 目录(小三号黑体字,居中)

(目录与目录内容之间空一行) 内容摘要 (1) 1 引言(或概述)(作为正文第一章,一级标题小四号加粗宋体字) (2) 2 ××××××(正文第二章标题,一级标题小四号加粗宋体字)………………P 2.1 ××××××(正文第二章第一节标题,二级标题小四号宋体字)…………P 2.1.1××××××(三级标题小四号宋体字)………………………………………P 2.1.2××××××(三级标题小四号宋体字)………………………………………P 2.2 ××××××(正文第二章第二节标题,二级标题小四号宋体字)…………P 2.2.1××××××(三级标题小四号宋体字)………………………………………P 2.2.2××××××(三级标题小四号宋体字)………………………………………P 2.2.3××××××(三级标题小四号宋体字)………………………………………P 2.3××××××(正文第二章第三节标题,二级标题小四号宋体字)…………P 3 ××××××(正文第三章)……………………………………………………P 3.1(正文第三章第一节标题,二级标题小四号宋体字)……………………………P 3.2(正文第三章第一节标题,二级标题小四号宋体字)……………………………P X××××××(正文第X章)………………………………………………………P ……………………………………………………………………………… 注:①目录按三级标题编写(必须与正文标题一致),要求层次清晰。 ②格式模板中的说明(红色或蓝色字体表示),在参阅后请删除。

C语言期末大作业

伊犁师范学院计算机科学系 实验训项目报告 一、小组成员及分工: 姓名:张雁 学号: 二、指导老师:王慧玲 三、说明程序编制要点,以及自己在项目制作中的难 点及解决办法: 编写的要点:编写N个函数分别用来求平均分;总分按降许序排列;按姓名查找学生的成绩;找出各科 最高分的学生姓名,学号等。编写主函数提供不 同的选择途径。 难点:函数之间的调用,姓名的比较和交换。 解决办法:通过参数的传递;用字符串处理函数。 四、说明项目中所涉及的知识点及难点: 知识点:基础知识,结构体,选择结构程序设计,循环结构程序设计,数组,字符数组,常用的字符串处理函数,函数的调用。 难点:函数的调用,循环程序设计。 五、附录源程序: 注:必须有一定的注释,说明函数功能以及主要语句所起的作用 #include "" #include "" #define m 5 void search(); /*声明按姓名查找学生的信息*/

void ave(); /*声明turn out average*/ void paixu(); /* 声明score pai mingci*/ void maxandmin(); /*声明maxandmin score student's number,name and every course score*/ struct student /*声明define a struct*/ { int num; /*student’s number */ char name[10]; int math,english,chinese; /*three course score*/ int no; /* student mingci*/ float sum; float ave; }stu[m]; main() { int i; int q=0,p; for(i=0;i

C语言大作业

学院

目录 1 摘要 (3) 1.1设计题目 (3) 1.2设计内容 (3) 1.3开发工具 (3) 1.4应用平台 (3) 2 详细设计 (3) 2.1程序结构 (3) 2.2主要功能 (10) 2.3函数实现 (10) 2.4开发日志 (17) 3 程序调试及运行 (18) 3.1程序运行结果 (18) 3.2程序使用说明 (19) 3.3程序开发总结 (20) 4 附件(源程序) (20)

1 摘要 1.1 设计题目 A题算法型:折半查找算法演示程序 B题空间桁架结构节点位移求解 1.2 设计内容 A题: 本程序是一个演示折半查找算法的演示程序。当用户输入查找数据表列和要查找的数据时,程序会演示折半法查找该数的详细过程,并且支持多次查找、错误提示等功能。 B题: 空间桁架结构节点位移求解 1.3 开发工具 Code Blocks 12.11(内置MinGW) 1.4 应用平台 Windows 7 64位 2 详细设计 2.1 程序结构 A题: 程序功能模块: 本程序主要包含六大模块:程序说明模块、输入模块、排序模块、折半法查找模块、选择模块和程序

退出模块。 工程文件结构: 本程序的工程含有6个文件,其中main.cpp、print_stars.cpp、judge.cpp、sort.cpp、putout.cpp5个cpp 文件和include.h1个头文件(参见下图),两者共同存在于工程“折半法查找演示程序”中。其中main.cpp 文件包含了程序的主体部分,程序说明模块、输入、排序、折半查找、选择、程序退出模块按线性排列。其中输入、排序模块执行一次,这般查找、选择模块可多次执行,直到程序退出模块执行。 六大模块说明: (1) 程序说明模块: 给使用者营造一个较为友好的界面,同时提供程序开发人员的相关信息以及程序操作的相关说明信息。此部分模块主函数源代码如下: int a[N]; /*存储要查找的数表,用户输入*/ int i,n,num,count; /*count为折半次数计数器,n为数表数据个数,num存储所查数据*/ int top,bottom,mid; char c; /*存储选择函数中的输入的字符y或n*/ int flag=1; /*折半法循环标志变量*/ int loc=-1; /*存储所查找数据位置*/ double k=0; p_s(76);puts("\n"); /*引用p_s函数,打出一行'*'*/(p_s函数位于print_star.cpp文件中,参见下文)

C语言课程设计大作业

郑州大学 课程报告 课程名称:C语言程序设计 专业班级:(15)班 学生姓名:谢* 学号:20127611*** 任课教师:赵** 学期:2012-2013-2 课程报告任务书

开发一个通讯录管理系统,基本信息包括:编号、姓名、性别、出生年月、固定电话、手机号、电子邮件等基本信息(也可以根据自己情况进行扩充)。使之能提供以下基 本功能: (1)通讯录等信息录入功能(注:数据等要求用文件保存)--输入 (2)通讯录信息的浏览功能--输出 (3)查询功能(至少一种查询方式)、排序功能(至少一种排序方式): ①按电话号码进行查询②按姓名查询等③按照年龄排序④按姓名排序等 (4)通讯录条目的删除与修改等 扩展功能:可以按照自己的程度进行扩展。比如(1)简单的权限处理(2)报表打 印功能(3)模糊查询,如姓张的人员等;或者给定电子邮件的部分进行查询等(4) 给定指定年龄范围之内的查询等等。 总之,可以根据自己需求进行分析功能,成绩评定按照难度进行区分。 成绩评定教师: 一. 需求分析 1,具有数据的插入、修改、删除、显示和查询功能的电话簿管理程序。

2,数据包括:人名、工作单位、电话号码和E-MAIL地址。 3,可对记录中的姓名和电话号码进行修改。 4,可增加和删除记录。 5,可显示所有的保存记录。 6,可按人名或电话号码进行查询。 分析 建议采用结构体数组和文件系统实现。结构体成员包括人名、工作单位、电话号码和E-MAIL地址。 根据题目的要求程序应该采用结构体数组和文件系统实现。应该有文件的操作功能;在程序中应该包括输入、显示、删除、查询、添加、修改、保存、加载和退出的功能。 二、概要设计 (1).程序的模块组成及各个函数的功能: 程序的模块组成: 主函数:main(); 输出数据函数:printf(); 读取数据函数:scanf(); 显示记录函数:Display(); 删除记录函数:shanchu(); 查找记录函数:chaxun(); 自定义清屏函数:system(“cls”); 自定义输入函数:input(); 字符输入函数:getchar(); 修改数据函数:xiugai(); 保存数据函数:baocun(); 排序数据函数:paixu(); 各函数的主要功能: 输出数据函数:随时输出数据; 读取数据函数:读取输入的数据信息; 显示菜单函数:显示可供选择的主菜单;

数据库大作业(全·参考答案)

《数据库原理与应用》综合设计任务书 前言 《数据库原理与应用》课程的重点知识模块包括:1)数据库设计、2)用SQL实现建库、建表、查询、更新、和创建视图、3)存储过程和触发器设计。针对这三个应用能力,用一个案例作为背景,布置三次大作业。 在校大学生都能理解“图书管理系统”的应用场合和业务流程。因此,以图书管理系统作为案例来布置作业,可以降低业务分析难度,让学生将主要精力放在知识消化与技术应用上。 本文档包括四个部分。第一部分描述系统的需求,第二部分提出E-R模型设计和关系模型设计的任务;第三部分提出在SQL Server中,用SQL语句来建库、建表、查询、更新数据、创建视图的任务;第四部分,根据应用需求、安全需求和数据完整性要求,提出设计存储过程和触发器的任务。 每个任务之前,都给出了完成任务所需要掌握的关键知识点,学生可以在对这些知识点进行复习的基础上完成任务,每个任务是一次大作业。 第一部分案例的需求描述 本部分描述“图书管理系统”的需求,学生通过阅读本部分内容,了解系统的功能要求、运行环境,对系统所需的数据有总体认识,作为三次作业的基础。 1.2 需求分析

1)功能需求 图1-1:功能需求示意图 教师信息管理:用于教师基本资料的增删改查。 图书信息管理:用于图书基本信息的增删改查,分类统计图书册数和价值。 借书登记:记录借书时间、所借图书、借书人、办理人。 还书登记:记录还书时间、所还图书、还书人、办理人。 催还:查询借阅逾期的借书信息,给借书人发电子邮件,给借书人的部门打电话。 2)运行环境要求 图1-2:运行环境拓扑图 系统采用C/S模式,有两台PC和一台服务器,联成一个局域网。PC上安装图书管理软件的客户端,服务器上安装DBMS,服务器也可由两台PC中的一台来代替。

C程序设计大作业(含源代码).doc

面 向 对 象 程 序 设 计 大 作 业 姓名:叶尔凯西 学院(系):计科系 班级:计科系07-1 班 学号: 027

设计本程序的目的: 关于一些并不太复杂的集体来说,一般需要管理集体中的每个人的基本信息的,本程序 专门为一些在校学生的基本信息的管理而设计的,主要目的是通过本程序来实现简单的记录和 查找学生的基本信息; 程序功能简介: 本程序是通过面向对象的最重要的特点“类”来设计出来的,其功能是实现简单的学生基 本信息管理。包括一些要求用户从键盘输入(记录)学生的基本信息、输出学生的基本信息和用 学生的学号来查找学生信息表中的某个学生的基本信息等功能; 程序功能的详细介绍: 本人设计程序时考虑到的很所内容,其中输入输出学生的基本信息是最基本的功能。下面来给大家介绍程序的核心类的构建: ①在程序中共建立了两种类,分别是person 类和 student类。person作为student 类的基类,其内部是如下设计的: class person { public: void SetPersonAddress(char *AddressFromMain); void SetPersonSex(char *SexFromMain); void ShowPersonSex(); void ShowPersonAddress(); private: char Address[25]; char Sex[2]; }; 可以看到,在上面分别声明了四个成员函数和两个数据成员。四个成员函数的作用是对私有数据成员进行访问(包括输入和输出)。所以当建立了一个 person 类之后 就可以通过它的对象来访问该类的数据成员。 下面分别说明每一个成员函数的具体定义: ( 1)设置(输入)人地址的成员函数: void person::SetPersonAddress(char *AddressFromMain) { strcpy(Address,AddressFromMain); } 通过 strcpy把字符指针的内容送入person 类中的数据成员Address 。 ( 2)设置(输入)人性别的成员函数: void person::SetPersonSex(char *SexFromMain) { strcpy(Sex,SexFromMain); }

个人与团队与教材配套大作业参考复习资料

通用管理能力个人与团队管理课程 大作业参考答案 《个人与团队管理》(第二版)共有十个单元,共计十个大作业(也包含《个人与团队管理形成性考核册》中的大作业内容)。在教学过程中,很多学生反映个人与团队管理课程大作业比较灵活,学生在做大作业时比较困难,希望能够有参考答案,以便对照检查。为了提高教学质量,满足学生需求,我们从学生的大作业中选取了一些供参考,并非标准答案。 目录 第一单元 (2) 第二单元 (3) 第三单元 (4) 第四单元 (5) 第五单元 (7) 第六单元 (8) 第七单元 (9) 第八单元 (10) 第九单元 (11) 第十单元 (12)

重新思考前面写的三个发展目标,并且考虑自己将如何实现这些目标。根据思考结果完成下面提供的行动计划表。 在开始计划之前必须做一些分析,找出可以利用的学习或培训资源。与主管经理一起检查自己的目标,看看这些目标是否与公司的目标一致。

第一部分 当日需要做的事情: 1.对外联系工作,拓展业务。(A) 2.约见重要客户。(A) 3.参加早会,完成各相关部门的通告。(B) 4.案头批阅工作。(B) 5.参加部门会议,完成各部门通告(B) 6.探望住院的员工。(C) 7.到车站接朋友。(C) 今天最主要的工作目的是:对外联系工作能够顺利开展。 第二部分完成计划 贯彻当天已制定的计划,如果可能就执行你的计划。 第三部门回顾 ○有没有达到主要目标:我今天未达到我的主要目标。 未达到原因:客户还没有明确的意向要开展我们的业务。 ○有没有把所有工作做完:我没有将所有的工作全部做完,没能去探望住院的员工。 原因:在我案头批阅工作期间公司突然发生员工纠纷,耽误了时间。 ○我做的使计划完成得很不错的事:约见重要客户的时机选择恰当,使计划完成得很不错。 ○我做的使计划没有完成的事:临时参加了研发项目团队的会议。 ○完成优先级为B的工作是否能够不被打扰:我可以不被打扰的完成优先级为B的工作。 ○是否将工作委派:我把接朋友的工作委托给了他人。 ○工作委派或分配是否奏效:工作委派很奏效,被委派人顺利的接到我的朋友。 ○改进自己的计划和以后工作的建议:充分考虑到可能的突发事件,不要将时间安排的过于紧凑。要善于将工作分配和委托给他们办理。

相关文档
最新文档