面向对象程序设计课程作业及复习资料

面向对象程序设计课程作业及复习资料
面向对象程序设计课程作业及复习资料

《面向对象程序设计》课程作业及答案

作业1:

是非题

1. 头文件中一般存放着变量和常量的定义、函数的原型以及类的定义。1. 错

2. 程序的编译是以文件为单位的,因此将程序分到多个文件中可以减少每次对程序修改所带来的编译工作量。4. 对

填空题

下面是一个求数组元素之和的程序。主程序中定义并初始化了一个数组,然后计算该数组各元素的和,并输出结果。函数sum计算数组元素之和。填充程序中不完整的部分。

________A__________

int sum(int [],int);

void main()

{

int ia[5] = {2,3,6,8,10};

B ;

sumOfArray = sum(ia,5);

cout << "Sum of array:" << sumOfArray << endl;

}

int sum(int array[],int len)

{

int iSum = 0;

for(int i = 0; C ; D )

E ;

return iSum;

}

答案:

A #include

B int sumOfArray;

C i < len

D i++

E iSum += array[i];

阅读理解题

写出下列程序的运行结果: //

static int i = 20;

int x;

static int g(int p) {

return i + p;

}

void f(int v)

{

x=g(v);

}

//

#include extern int x;

void f(int);

void main()

{

int i=5;

f(i);

cout << x;

}

回答以下问题:

1. 程序的运行结果是什么样的?

2. 为什么文件中要包含头文件

3. 在函数main()中是否可以直接调用函数g()?为什么?

4. 如果把文件中的两个函数定义的位置换一下,程序是否正确?为什么?

5. 文件和中的变量i的作用域分别是怎样的?在程序中直接标出两个变量各自的作用域。

答案:

1. 程序的运行结果:25

因为程序中需要利用cout对象进行输出,而cout是在C++标准I/O库iostream中定义的类ostream的一个对象。

2 在函数main()中不可以直接调用函数g(),因为g()是静态函数,只在它所在的文

件内可见。

3 如果把文件中的两个函数定义的位置换一下,程序不正确,因为C++规定所有使用

的变量和函数需要先声明,后使用。在函数f中用到了函数g,所以函数f不能出现在函数g的定义或声明之前。

文件中的变量i的作用域从它的定义开始到文件结束。中的变量i的作用域从它的定义开始到main函数结束。

编程题

写一个函数,完成在链表末尾增加一个节点的操作。函数的原型为:

Node * AddNode(Node * & head, int newData);

其中,链表节点的定义如下:

struct Node {

int data; //存放数据

Node * next; //指向链表中的下一个节点

};

函数参数:函数的第一个参数head指向链表的第一个节点,如果链表为空,则head的值为NULL。第二个参数newData为要插入的新节点中存放的数据。

函数返回值:当成功地插入新的节点时,函数返回指向新节点的指针,否则,如果不能申请到内存空间,则返回NULL。

3 / 24

Node * AddNode(Node *& head, int newData)

{

//在这里写出函数的实现

}

答案:

Node * AddNode(Node * &head, int newData)

{

//申请新的节点空间

Node * newNode = new Node;

if (newNode == NULL)

return NULL;

//填充新节点的内容

newNode->data = newData;

newNode->next = NULL;

//插入到链表的结尾

if (head == NULL)

head = newNode;

else

{

//寻找链表的最后一个节点

Node *tail = head;

while(tail->next != NULL)

tail = tail->next;

//将新节点插入到最后

tail->next = newNode;

}

return newNode;

}

作业2:

是非题

1. 在不同作用域中的变量可以同名。对

2. 派生类的成员函数可以直接访问基类的所有成员。2. 错填空题

#include

___________A_____________;

void main()

{

int a[6]={2,4,8,6,9,14};

int x1=____B______; //调用f1函数求出a中前4各元素之和。

int x2=f1(a,6);

cout<

}

int f1(int a[], int n)

{

int i,s=0;

for(i=0;i

return s;

}

答案:

A int f1(int a[], int n);

B f1(a,4)

改错题

1. 下面的函数将浮点型指针参数para所指向的值赋给一个局部指针变量pFloat所指向的空间,然后输出*pFloat的值。

#include

void func(float * para)

{

float * pFloat;

pFloat = para;

5 / 24

cout << pFloat;

}

错误为:______________________________________________________

改正方法为:__________________________________________________

______________________________________________________________

答案

错误为:没有给指针申请空间,就直接赋值

改正的方法为:先为pFloat申请空间,再赋值。

2. 下列程序片段对二维数组的每个元素赋值

unsigned short SomeArray[5][4];

for (int i = 1; i<=5; i++)

for (int j = 1; j<=4; j++)

SomeArray[i][j] = i+j;

错误为:______________________________________________________

改正方法为:__________________________________________________ ______________________________________________________________

答案

错误为:访问数组元素的下标不对

改正的方法为:

将两个for循环的循环初始值改为0,循环结束条件分别改为i<5和j<4。

编程题

写一个函数,找出给定字符串中小写字母字符的个数。函数的原型为:

int CalcAlpha(char *str);

函数参数: str为所要处理的字符串;

函数返回值:所给字符串中小写字母字符的个数

int CalcAlpha(char *str)

{ //在这里写上程序的实现

}

答案:

int CalcAlpha(char *str)

{

//判断字符指针是否为空

if(str == NULL) return 0;

//记录小写字母字符个数的变量

int num=0;

//依次检查各个字符,如果是小写字母,则总数加1

for(int i=0; str[i]!=0x0; i++)

if(str[i])>='a' && str[i]<='z')

num++;

//返回数字字符个数

return num;

}

作业3:

是非题

1. 函数的参数和返回值类型可以是简单数据类型,也可以是指针、引用、数组和类。3. 错

7 / 24

c++面向对象程序设计大作业

《面向对象程序设计》 大作业 题目学生成绩管理系统 学院 专业 班级 姓名 指导教师 2015 年11 月11 日

目录 一大作业的目的 (1) 二大作业的内容............................ . .. (2) 三大作业的要求与数据............... ...... . (3) 四大作业应完成的工作.................. . (4) 五总体设计(包含几大功能模块)........... . (5) 六详细设计(各功能模块的具体实现算法——流程图) (6) 七调试分析(包含各模块的测试用例,及测试结果) (7) 八总结 (8) 十参考资料 (9)

一大作业的目的 《面向对象程序设计》是一门实践性很强的课程,通过大作业不仅可以全方位检验学生知识掌握程度和综合能力,而且还可以进一步加深、巩固所学课程的基本理论知识,理论联系实际,进一步培养自己综合分析问题和解决问题的能力。更好地掌握运用C++语言独立地编写、调试应用程序和进行其它相关设计的技能。 二大作业的内容 对学生信息(包括学号、语文、数学、英语、平均分)进行管理,包括学生成绩的信息输入、输出、查询、删除、排序、统计、退出.将学生的成绩信息进行记录,信息内容包含:(1)学生的学号(2)学生的姓名(3)学生的成绩。假设,现收集到了一个班学生的所有成绩信息,要求用C语言编写一个简单的成绩管理系统,可进行录入、查询、修改和浏览等功能。学习相关开发工具和应用软件,熟悉系统建设过程。 三大作业的要求与数据 1、用C++语言实现系统; 2、对学生信息(包括学号、姓名、语文、数学、英语、平均分)进行管理,包括学生成绩的信息输入、输出、查询、删除、排序、统计、退出. 3、学生信息包括:其内容较多,为了简化讨论,要求设计的管理系统能够完成以下功能: (1) 每一条记录包括一个学生的学号、姓名、3门课成绩 (2)、成绩信息录入功能:(成绩信息用文件保存,可以一次完成若干条记录 的输入。) (3)、成绩信息显示浏览功能:完成全部学生记录的显示。 (4)、查询功能:完成按姓名查找学生记录,并显示。 (5)成绩信息的删除:按学号进行删除某学生的成绩. (6)、排序功能:按学生平均成绩进行排序。 (7)、应提供一个界面来调用各个功能,调用界面和各个功能的操作界面应尽可能清晰美观!

数据库课程设计大作业

《数据库原理》课程设计报告 专业:测控技术与仪器 班级:测控071班 学号:200710402112 200710402115 姓名:杜文龙王京京 题目名称:物资管理系统 完成日期:2009年12月25日 昆明理工大学信息工程与自动化学院 2009年12月

物资管理系统 一、课程设计目的: 1.加深对讲授内容的理解 《数据库原理及应用》中有关数据库技术的基本理论、基本概念、设计与实现的方法和阶段性知识,光靠课堂讲授既枯燥无味又难以记住,但它们都很重要,要想熟练掌握,必须经过大量实践环节加深对它们的理解。 2.通过课程设计,掌握数据库系统设计与开发的方法及步骤 数据库是一门应用性很强的学科,开发一个数据库系统需要集理论、系统和应用三方面为一体,以理论为基础,以系统(DBMS)作支柱,以应用为目的,将三者紧密结合起来。同时结合实际需要开发一个真实的数据库系统,对于较大型的系统可多人一起完成,但无论如何都应完成数据库的需求分析、数据的分析与建模、数据库的建立、数据库的开发与运行等全部过程。在此过程中将所学的知识贯穿起来,达到能够纵观全局,分析、设计具有一定规模的题目要求,基本掌握数据库系统设计与开发的基本思路和方法并且做到对知识的全面掌握和运用。 3.培养学生自学以及主动解决问题的能力 通过本次设计,使同学能够主动查阅与数据库相关资料,掌握一些课堂上老师未曾教授的知识,从而达到培养学生自学以及主动解决问题的能力的目的。 二、课程设计基本要求: 1.课程设计应由学生本人独立完成,严禁抄袭。 2.掌握所学的基础理论知识,数据库的基本概念、基本原理、关系数据库的设 计理论、设计方法等。熟悉数据建模工具Visio与数据库管理系统SQLServer 软件的使用。 3.按时上机调试,认真完成课程设计。 4.认真编写课程设计报告。 三、需求分析 信息管理系统是集计算机技术、网络通讯技术为一体的信息系统工程,它能够使企业运行的数据更加准确、及时、全面、详实,同时对各种信息进一步地加工,使企业领导层对生产、经营的决策依据更充分,更具有合理性和库、科学性,并创建出更多的发展机会;另外也进一步加强企业的科学化、合理化、制度化、规范化管理,为企业的管理水平跨上新台阶,为企业持久、健康、稳定的发展打下基础。 这个物资管理系统是以客户机/服务器模式的信息管理模式的信息管理系统。它的开发过程不仅仅是一个编写应用程序的过程,而是以软件工程的思想为指导,从可行性研究开始,经过系统分析、系统设计、系统实施

大工15春《SQL数据库课程设计》模板及要求(最新)

大工15春《SQL数据库课程设计》模板及要求网络教育学院 《SQL数据库课程设计》 题目:XX系统的设计与实现 学习中心: 专业: 年级:年春/秋季

学号: 学生: 指导教师: 《SQL数据库课程设计》要求 《SQL数据库课程设计》是大连理工大学网络教育学院计算机应用技术专业开展的一项实践教学环节,是理论联系实践的纽带和桥梁,是培养学生综合运用所学知识解决实际问题的有效手段。该课程设计要求如下:1.要求学生以SQL Server 2008或其他版本为后台数据库,以VB、VC 或其他开发工具作为前台开发工具,围绕自己选定的某一个具体的系统完成一个小型数据库应用系统的开发,例如《图书管理系统的设计与实现》《书店管理系统的设计与实现》等。其课程设计具体内容包括项目概况、需求分析、详细设计等,详见课程离线作业中上传的《SQL数据库课程设计模板》。 注意:禁止撰写《学生成绩管理系统》课程设计!! 2.要求学生必须按照《SQL数据库课程设计模板》提供的格式和内容进行课程设计,完成课程设计模板提供的全部课程设计内容,字数要求达到3000字以上。 3.学生在进行课程设计的过程中,可参考辅导教师在导学资料中上传的

文献资料,有问题可通过课程论坛答疑。 4.2015年春季学期学生提交本课程设计形式及截止时间 学生需要以WORD附件形式(附件的大小限制在10M以内)将完成的课程设计以"离线作业"形式上传至课程平台中的"离线作业"模块,通过选择已完成的课程设计,点"上交"即可,如下图所示。 截止时间:2015年9月1日。在此之前,学生可随时提交课程设计,如需修改,可直接上传新文件,平台会自动覆盖原有文件。 5.课程设计批阅 老师会在离线作业关闭后集中批阅课程设计,在离线作业截止时间前不进行任何形式的批阅。 注意: 本课程设计应该独立完成,不准抄袭他人或者请人代做,如有雷同作业,

面向对象程序设计课程设计

《面向对象程序设计》课程设计 课程代码:*****(采用现行5位数字的课程代码) 课程名称:面向对象程序设计课程设计 设计周数:1周 学分:0.5学分 课程类别:必修课 一、课程设计的目的与任务 面向对象程序设计课程设计是计算机科学与技术、网络工程、信息管理与信息系统等专业集中实践性环节之一,是学习完《面向对象程序设计》课程后进行的一次全面的综合练习。通过课程设计,学生可以将本课程所学知识点融会贯通,举一反三,加深实践与理解,提高学生综合运用所学知识的能力;另一方面,在参与一系列子项目的实践过程中,能使学生获得相关项目管理和团队合作等众多方面的实践经验。其目的在于加深对面向对象程序设计理论和基本知识的理解,通过对所选项目的分析、程序算法的设计、运行与调试过程的分析,使学生掌握基本的信息系统分析方法、设计方法和上机操作的各种技巧,对培养学生的逻辑思维能力、团队合作精神、创新能力、动手操作能力各方面素质有提供了良好的实践平台,为后续课程的学习打下一定的基础。 二、本课程设计的基本理论 本课程设计使用面向对象程序设计的方法解决实际问题,涵概了课程的所有重要知识点,如类与对象、继承与组合、虚函数与多态性等。 三、课程设计的形式与基本要求 形式:召开课程设计动员会,根据学生的学习水平和特长进行分组,每组选择指定课程设计的题目和内容。学生在规定的时间内,经过小组的协同工作和指导教师的辅导,完成所选课题的设计,最后由指导教师进行验收及评定。 基本要求:要求学生做好预习,认真分析设计过程中涉及到的算法,并确定所选课题的功能模块,详细描述各模块的具体内容;用流程图描述实现算法,根据算法进行代码的编写,最后进行反复上机调试修改,直到输出正确结果为止。 认真写好课程设计报告,根据每组学生的分工,各自写出对解决问题的详细分析、模块功能、调试结果,最后将课程设计报告上交给指导教师。 四、课程设计的内容 选题一:员工管理信息系统 (1)建立职工信息数据,包括职工编号、姓名、性别、工资、出生时间、部门、参加工作时间和年龄(必须计算得到)。

2016年电大面向对象程序设计技术-作业题

2015秋季学期计算机科学与技术本科 《面向对象程序设计技术》作业题 (在电大在线该课程讨论区跟帖提交,注明姓名和学号以记录成绩)选择题 1.可以在本类及派生类的成员函数中进行访问的访问控制修饰符是(B) A.private B.protected C.public 2.在IDE中将编程项目采用多文件结构下,类的定义一般放在(A) A.头文件 B.程序文件 C.主程序文件 3.内联成员函数在类外定义时要将其和类定义一起放在(A) A.头文件 B.程序文件 C.主程序文件 4.下面哪个内存区域是C++中的运行时动态内存分配区域?( D ) A.代码区 B.栈区 C.数据区 D.堆区 5.对象作为函数参数使用时,一般使用(A)形式 A.引用 B.指针 C.对象拷贝

6.同类的多个不同对象的数据成员值各有不同,但不同对象可以共享类的成员函数代码, 实际调用成员函数时,是通过(B )来区分不同对象的。 A.显式给出不同对象不同地址 B.隐含的this指针 C.引用 7.下面哪一种情况不会自动调用拷贝构造函数。(E) A.用一个对象初始化另一个对象时 B.当一个对象作为值传递给一个函数时 C.当一个对象作为值从一个函数返回之前,该对象被拷贝到栈区 D.函数调用结束后,栈区中的返回对象拷贝给主调程序的对象 E.建立指向对象的指针并初始化指针值时 8.下列哪些对象的数据成员类型可以不用初始化表的方式进行初始化(D) A.常量数据成员 B.引用数据成员 C.类中对象成员 D.一般数据成员 9.下列哪一种类设计一般无需在类中设计静态数据成员以使建立的多个对象共享静态数 据数据成员。( D ) A.一个链表类的头指针和尾指针 B.一个学生类中用于保存建立了多少个学生对象的计数器 C.银行帐号类中的年利率 D.一般只用于建立一个对象的类 10.一个类中的公有(public)性质的静态数据成员,以下哪一种访问方式是错误的(D) A.对象名.静态数据成员名 B.指向对象的指针—>静态数据成员名 C.类名::静态数据成员名 D.类名.静态数据成员名 11.下列哪一个运算符不能够被类所重载(E) A.“.”成员访问运算符 B.“*”成员指针访问运算符 C.“::”域运算符 D.“?:”条件运算符 E.“=”赋值运算符

汽车修理管理系统 课程设计 数据库大作业(有源文件)

数据库大作业 《数据库原理与设计》课程设计汽车修理管理系统 学号: 姓名: 年级层次: 教学中心:

汽车修理管理系统 一. 概述 1.项目背景 在计算机不断发展的今天,计算机已经运用到各个领域,计算机的作用使由手工的操作到计算机的操作是一个大的飞跃,代替的复杂的容易出错的人工操作,节省了大量的时间,提高了正确性,提高了数据的可靠性。因此每个公司使用计算机建立自己的业务是迫在眉睫,汽车修理厂根据业务发展的需要,决定建立一个数据库管理系统,以代替单一的人工管理。这样使人工操作的管理方便,简单。 2.编写目的 编写的目的是使汽车修理厂由单一的人工管理到计算机管理的飞跃,使汽车修理厂的管理的效率得到很大的提高,使人工管理的出错的机会大大减少,实现数据的共享,便于查询自己的数据信息,使汽车修理厂的业务的流程时间大大减少,从而可以提高该汽车修理厂的竞争性,在社会有立足之地。 3.软件定义 该软件为第一版,既汽车修理管理系统1.0 版。 4.开发环境 数据库: SQL SERVER 2000 开发和编译环境: Visual C++6.0。 二.需求分析 1.通过分析得知,该修理厂共使用5种单据,4种账册和3种主要报表。 ⑴五种单据如表1所示: 表中D1由送修人填写。修理派工员据此开出修理单D2,分派给指定的修理工执行。如果在修理中需要更换零件,一律由修理工填写零件领用单D3向仓库领用。修理结束后,修理工将D2交回给派工员,然后转财务部门结账并开修车发票D5。D4在零件入库时由仓库管理员验收并且填写。图6显示了这些单据的格式内容。 编号名称填写人 D1 修车登记单送修人 D2 汽车修理单修理派工员和修理工 D3 零件领用单修理工 D4 零件入库单仓库管理员 D5 修车发票财务人员 表1 当前系统单据一览表

SQL数据库课程设计,火车票

SQL上机实验项目设计列车信息查询数据库 学号:24110121 姓名:王若龙

1、实验项目名称:数据模型的建立过程与方法 2、实验项目编号:ab0822420305 3、实验性质:必做 4、实验类型:设计 5、实验目的:熟练掌握数据模型的设计、建立的过程与方法。 6、实验内容: 设计一个数据库,实现列车车次信息和车站信息的基本管理,为列车运行时刻信息的录入、修改、查询与统计等功能提供数据库支撑。 要求: (1)设计该数据库E-R图 (2)将E-R模型转换为关系模型,并规范化 (3)用SQL语句定义并建立数据库表结构 (4)提供以下SQL语句,并加以说明。 查询某车站火车到站出站信息。 查询某列火车沿途经过站点信息 查询从某站点上车,到达某站点,共有哪些列车可供乘坐。 统计某段时间经过某站点的列车共有多少。

(1)设计E-R 图 (2)将E-R 模型转换为关系模型,并规范化 车站信息(车站号,车站名) 列车信息(车次,始发站,终点站,出发时间,到达时间) 乘务人员(车次,姓名,职务) 经由信息(车次,车站名,到站时间,出站时间) (3)用SQL 语句定义并建立数据库表结构 车站信息表(station ),采用命令行创建方式。 字段名 代码 类型 约束 车站号 sno char (5) 主键 车站名 sname char (20) 列车信息表(train ),采用命令行创建方式。 字段名 代码 类型 约束 车次 tno char (5) 主键 始发站 sf char(20) Not null 终点站 zd char(20) Not null 出发时间 cf time 到达时间 dd time

c面向对象课程设计报告

课程设计报告 课程名称面向对象程序设计 课题名称学生成绩管理系统 专业计算机科学与技术 班级计算机1001 学号2010030101 姓名 指导教师李珍辉陈淑红李杰军 2011年12 月28 日

湖南工程学院 课程设计任务书 课程名称面向对象程序设计 课题学生成绩管理系统 专业班级计算机1001 学生姓名 学号2010030101 指导老师李珍辉陈淑红李杰军 审批 任务书下达日期2011 年11 月15 日 任务完成日期2011 年12 月28 日

一、设计内容与设计要求 1.课程设计目的: 面向对象程序设计课程设计是集中实践性环节之一,是学习完《面向对象程序设计》课程后进行的一次全面的综合练习。要求学生达到熟练掌握C++语言的基本知识和技能;基本掌握面向对象程序设计的思想和方法;能够利用所学的基本知识和技能,解决简单的面向对象程序设计问题,从而提高动手编程解决实际问题的能力。 2.课题题目 1)公司库存管理系统 2)高校学籍管理系统 3)高校工资管理系统 4)高校人事管理系统 5)通讯录程序设计 6)学生成绩管理系统 7) 图书管理系统 8)文本编辑器的设计与实现 9)学生考勤管理系统 10)公司人员管理系统 3.设计要求: ⑴设计课题题目:每位同学根据自己学号除以10所得的余数加1选择相 应题号的课题。随意换题者不记成绩。 ⑵根据自己对应的课题完成以下主要工作:①完成系统需求分析:包括 系统设计目的与意义;系统功能需求(系统流程图);输入输出的要求。②完 成系统总体设计:包括系统功能分析;系统功能模块划分与设计(系统功能模 块图)。③完成系统详细设计:包括数据库需求分析;数据库概念结构设计(E -R图);数据库逻辑结构设计;类层次图;界面设计与各功能模块实现。④系 统调试:调试出现的主要问题,编译语法错误及修改,重点是运行逻辑问题修 改和调整。⑤使用说明书及编程体会:说明如何使用你编写的程序,详细列出 每一步的操作步骤。⑥关键源程序(带注释)

面向对象程序设计(答案)

学号:姓名: 第三章面向对象程序设计作业 一、判断题 1、一个Java源程序可有多个类,但只仅有一个public类,而且程序名与public类名相同。对 2、如果类A和类B在同一个包中,则除了私有成员外,类A可以访问类B中所有的成员。对 3、接口中的成员变量全部为常量,方法为抽象方法。对 4、抽象类可以有构造方法,可以直接实例化。错 5、对static方法的调用可以不需要类实例。对 6、包含抽象方法的类一定是抽象类。对 7、方法中的形参可以和方法所属类的属性同名。对 8、接口无构造器,不能有实例,也不能定义常量。错 9、类的实例对象的生命周括实例对象的创建、使用、废弃、垃圾的回收。对 10、Java应用程序的入口main方法只有一种定义法。对 二、选择题 1、下列答案正确的是(A ) A) 在同一个Java源文件中可以包含多个类,只能有一个被声明为public B) 在同一个Java源文件中只能包含一个类,并被声明为public C) 在同一个Java源文件中可以包含多个类,都可以被声明为public D) 在同一个Java源文件中可以包含多个类,只能有一个被声明为default 2、Java实现动态多态性是通过( B )实现的。 A) 重载B) 覆盖 C) 接口D) 抽象类 3、下列哪一个是正确的方法重载描述( A ) A) 重载方法的参数类型必须不同 B) 重载方法的参数名称必须不同 C) 返回值类型必须不同 D) 修饰词必须不同 4、final关键字不可以用来修饰( D ) A) 类B) 成员方法 C) 域D) 接口 5、接口的所有成员方法都具有( B )属性 A) private, final B) public, abstract C) static, protected D) static 6、Java的封装性是通过(A )实现的 A) 访问控制B) 设计内部类 C) 静态域和静态方法D) 包 7、下列接口或类不属于.*包的是( D ) A) Collection B)Vector C) Map D) Integer 8、下述哪一组方法,是一个类中方法重载的正确写法( A ) A) int addValue( int a, int b ){return a+b;}

数据库课程设计工厂管理系统大作业

摘要 姓名:颜超丽学号:200915553013027 此文运用了数据字典、数据流图等方法对工厂管理系统进行了需求分析,运用E-R图进行了概念结构设计,在逻辑结构设计中将E-R图转化为关系模型,在物理结构设计中确定该数据库的存储结构,最后通过SQL语言实现数据库的设计。在这过程中,还详细地分析了各个子系统的属性、实体间的联系以及子系统间的关系。在这基础上,通过金仓数据库软件,运用SQL语言将所建工厂管理系统数据库顺利实现。 关键字:数据字典,E-R图,SQL语言 目录 一、系统概述 (1) 二、需求分析 (1) 1信息分析 (1) 2数据流图 (2) 3数据字典 (2) 三、概念结构设计 (4) 1实体列表 (4) 2分E-R图 (4) 3全局E-R图 (5) 四、物理结构设计 (5) 1关系模式存取方式选择 (5) 2确定数据库的存储结构 (5)

3评价物理结构 (5) 五、逻辑结构设计 (6) 六、数据库的实施 (7) 七、设计总结........ (8) 八、文献 (9)

工厂管理系统库 一、系统概述 工厂管理信息化是工厂管理系统应用信息技术及其产品的过程,是信息技术应用于工厂管理的过程。工厂信息化的实施,自下而上而言,必须以管理人员使用信息技术水平的逐步提高为基础;自上而下而言,必须与工厂的制度创新、组织创新和管理创新结合。 工厂管理系统算是比较简单一种信息系统。它主要应用于工厂仓库管理、职工管理、车间管理和零件管理。其中车间对职工和零件来说是很重要的。 工厂管理信息化建设工作具有长期性和内容的多变性;正因为这样,车间管理信息系统也不是一个简单的、静止的、封闭的系统,而是一个开放的,随着时间的推移会逐步变化和发展的系统。 二、需求分析 1、信息分析 根据工厂方面取得的信息资料,得出系统的信息需求和处理要求,得到设计所需的需求信息。这些信息是是选择了对数据库设计直接有用的信息。 A.工厂系统: a.车间:一个工厂有很多个车间,每个车间有车间号、车间主任名、地址、 电话。 b.工人:一个车间有多个工人,每个工人有职工号、姓名、年龄、性别和 工种。 c.产品:一个车间生产多钟产品,产品有产品号,价格。 d.零件:一个车间有多个零件,一个零件也可以由多个车间制造。零件有 零件号、重量和价格。 e.仓库:产品与零件存入仓库中,厂内有多个仓库,仓库有仓库号、仓库 保管员、姓名、电话。 B.系统联系: a.生产:一个车间有多个零件,一个零件也可以由多个车间制造。 b.组成:一个产品由多个零件组成,一种零件也可装配多中产品内。 c.保管:产品与零件存入仓库中,厂内有多个仓库。

Sql_server数据库课程设计_图书馆管理系统

序言 (1) 一、图书馆管理系统E-R 图 (2) 二、图书馆管理系统功能实现示意图 (3) 三、图书馆管理系统功能图例 (4) 3.1 读者借阅图书 (4) 3.2 读者归还图书 (4) 3.3 读者续借图书 (5) 3.4 读者查询借阅图书情况 (5) 3.5 读者检索图书信息 (6) 四、图书馆管理系统附加功能 (7) 4.1 往学生表中插入列"系部",其值等于学号中代表系部的位的 值,再插入列"专业号",其值等于学号中代表专业的位的值 . 7 4.2 查询每个学生对书本的借阅数量 (9) 4.3 查询各个专业的学生借阅书本的数量 (11) 五、图书馆管理系统数据库、数据表源代码......... 错误!未定义书签。 5.1 图书馆管理系统"数据库"源代码 ................ 错误!未定义书签。 5.2 图书馆管理系统"数据表"源代码 ................ 错误!未定义书签。 六、图书馆管理系统存储过程源代码..................... 错误!未定义书签。 6.1 读者借阅图书存储过程................................ 错误!未定义书签。 6.2 读者还书存储过程........................................ 错误!未定义书签。 6.3读者续借图书存储过程................................. 错误!未定义书签。 6.4 读者查询借阅图书情况存储过程................ 错误!未定义书签。 6.5 读者检索的图书信息存储过程.................... 错误!未定义书签。 七、图书馆管理系统触发器源代码......................... 错误!未定义书签。 7.1 借书要求(书本没有库存,则无法进行借书操作)错误!未定 义书签。 7.2 借书要求(读者最多借阅量).................... 错误!未定义书签。 7.3 续借次数要求................................................ 错误!未定义书签。 7.4 读者还书信息插入RDeleted表................... 错误!未定义书签。

《面向对象程序设计》实验指导书(实验二)

实验二类与对象㈡——对象初始化、对象数据与指针 一、实验目的 1.理解构造函数、析构函数的意义及作用,掌握构造函数、析构函数的定义及调用时间,熟悉构造函数的种类; 2.理解this指针及使用方法,熟悉对象数组、对象指针、对象引用的定义及使用方法,熟悉对象作为函数参数的使用方法; 3.熟悉类与对象的应用及编程。 二、实验学时 课内实验:2课时课外练习:2课时 三本实验涉及的新知识 ㈠构造函数与析构函数 在C++中,提供了两个特殊的成员函数,即构造函数和析构函数。 构造函数用于对象的初始化,即在定义一个类对象时,计算机在给对象分配相应的存储单元的同时,为对象的数据成员赋初值。 析构执行的是与构造函数相反的操作,用于撤销对象的同时释放对象所占用的内存空间。 1.构造函数 ⑴构造函数的定义 格式: 类名(形参表) { 构造函数体} ⑵构造函数的调用 构造函数的调用是在定义对象时调用的。 格式:类名对象名(实参表); 类名对象名=构造函数名(实参表); ⑶说明 ①构造函数必须与类同名。 ②构造函数没有返回值,但不能在构造函数前加void类型符(其他没有返回值的成员函数必须加类型符void)。 ③在实际应用中,在定义类时通常应定义一至多个构造函数(重载),以对各数据成员进行初始化;如果不给出构造函数,系统将自定义一个构造函数。 ④构造函数可以可以带参数,也可不带任何参数(称无参构选函数),还可以使用缺省参数。 ⑤不能象普通成员函数一样单独调用。 2.析构函数 ⑴析构函数的定义 格式: ~类名(void) { 析构函数体} ⑵析构函数的调用 析构函数是在撤销对象时自动调用的。 ⑶说明

sql server数据库课程设计论文

宁夏大学物理电气信息学院综合性实验 实验报告 课程名称数据库应用 实验学期 2011 至 2012 学年第二学期学生所在系物理电气信息学院电气系 年级 09级专业班级电子信息工程(1)班 学生姓名学号 任课教师 实验成绩 任课教师制 2012 年 6 月 10 日

实验题目小型超市商品进销存管理系统 一、实验目的 1、掌握计算机管理信息系统设计的一般方法,主要包括系统分析、系统设计的组织和实施。 2、关系型数据库管理系统SQL语言编辑能力,并能独立完成一般小系统的结构设计、调试运行等工作。 3、提高学生实践使用SQL语言的能力,把所学知识运用到具体对象,并能求出解决方案的能力。 二、实验环境 本次实验主要选用数据库软件设计语言SQL Server 2008版本进行该系统设计。 三、实验内容 1、需求分析 本软件对超市的采购、销售、仓库、资金、帐务等实际运作流程均实现了动态的计算管理,使得超市经营者能够迅速的掌控该超市的实际运作状况、合理做出超市的战略决策。软件提供的商品入库流水账、商品销售流水账、商品台账、会计账及各种报表在提高超市工作效率、减少人为的差错、最大限度堵塞漏洞的基础上很好的减轻了采购、销售、仓库、财务等环节工作人员的劳动强度,全面体现了现代小中型企业管理理论所倡导的工作高效、环境轻松的氛围。并且本系统的开发,为超市的工作效率带来了一个质的飞跃,为此主要表现有以下几个方面: 第一,本系统的运行可以代替人工进行许多繁杂的劳动; 第二,本系统的运行可以节省许多资源; 第三,本系统的运行可以大大的提高企业的工作效率; 第四,本系统可以使敏感文档更加安全,等等。 本产品的开发所需的设备在现有条件下,只需要少量的投入资金就可以实现。因此在经济上是可行的。 2、数据库设计 (1)系统要求实现:基本资料、进货管理、销售管理、库存管理、财务管理、自动编制记帐凭证等管理功能。系统总设计图如下所示:

面向对象程序设计课程设计报告同学通讯录管理程序

目录 1.设计题目 (1) 2.设计目的和内容 (1) 2.1设计目的 (1) 2.2设计内容 (1) 3.基本功能描述 (1) 4.设计思路 (1) 5.软件设计 (2) 5.1设计步骤 (2) 5.2界面设计 (3) 5.3关键功能的实现 (3) 5.3.1添加记录 (3) 5.3.2删除记录 (4) 5.3.3选中记录 (4) 5.3.4确认修改 (4) 5.3.5保存记录 (4) 5.3.6退出 (4) 6.结论与心得体会 (4) 7.参考文献 (4) 8.附录 (5) 8.1调试报告及测试结果 (5)

8.2关键源代码 (10) 8.2.1 Student类 (10) 8.2.2全局 (10) 8.2.3List Control初始化 (10) 8.2.4添加记录 (11) 8.2.5删除记录 (11) 8.2.6选中记录 (12) 8.2.7修改记录 (12) 8.2.8保存记录 (13) 8.2.9退出程序 (13)

1.设计题目 同学通讯录管理程序 2.设计目的和内容 2.1设计目的 1)学习Visual C++的MFC开发程序的步骤。. 2)综合运用所学的类、继承和多态的知识。 3)进一步掌握程序的调试方法。 2.2设计内容 1)利用MFC的向导,创建基于对话框的应用程序,添加按钮、编辑框等控件; 2)设计通讯录的数据结构(如:以数组或者动态链表)和相应的类; 3)完成对通讯录中记录的增加、修改、删除和显示; 4)将通讯录存入文本文件。 3.基本功能描述 可以实现学生信息(姓名、学号、系别、邮箱、电话)的添加、显示、选中修改、删除选中和保存并退出程序的功能。 4.设计思路 1)创建基于对话框的MFC应用程序,添加控件:5个Edit Control、6个Button、1 个List Control; 2)在5个Edit Control分别输入相应信息,点击“添加记录”Button可在List Control 中显示相应信息,同时清空五个Edit Control以便下一个学生信息的输入; 3)点中List Control选中已有一组学生信息,点击“删除记录”Button可删除该组 信息; 4)点中List Control选中已有一组学生信息,点击“选择该列”Button将该列信息 返回到5个Edit Control。修改完成后点击“确认修改”Button,对List Control 中选中列完成修改; 5)点击“确认保存”将信息保存到文本文档; 6)点击“退出”退出程序。 7)可在D盘查看保存的信息。

面向对象程序设计大作业(C++)

面向对象分析/设计课程大作业 银行业务处理系统 13级软件学院测试班 1367004029 曾丹 1.需求分析 随着社会经济的发展,信息化程度的不断深入,银行的传统业务己愈来愈不能满足银行客户的需要。 现今,人们的金融意识、科技意识己经有了很大的提高,在紧张忙碌的生活中,己越来越来不习惯每月奔忙于各银行营业柜台之问去排队缴各种各样的费用了;同时,各种经营单位如电信、移动、供电、煤气、自来水、证券等等一是为了提高服务质量、方便客户,二是为了减轻自己日趋繁重的工作量,纷纷委托银行为其开展代收代付业务:同时,随着我国加入世贸组织的日益临近,我国的银行业将面临更加激烈的同业竞争,如何提供更多的金融产品和更优质的服务,如

何吸引更多的客户,如何利用计算机技术加强银行帐户信息管理、进行银行业务再造,提高银行的工作效率和业务竟争能力是摆在各家银行面前的一个迫切需要解诀的问题。 近几年来,各商业银行加快了与社会各业的合作,利用自身的网点优势和业务特点,为其提供各种高效、快捷的代收代付业务,也就是中间代理业务,目前以与广大人民群众生活密切相关的各项缴费业务如水电费、电话费、手机费等代收业务为主,这些业务开展方式多种多样,但一般都离不开计算机的高效管理支持。 随着代理业务不断发展,业务品种越来越多,各项业务做法互有差异,这就对银行的电子化水平和相应的管理水平提出了更高的要求。如何利用电子化的手段构建一个高效统一的、通用灵活的系统来管理各种各样的业务,是每个商业银行所要研究的课题。支持决策系统的,需要在数据库的基础上,进行联机分析处理,每次处理的数据量大,响应时间长。 特别是银行每天要处理大量的存取款事件,做好存取款是银行工作重要的环节,然而要有效处理必须要有良好的程序和数据管理系统来建立一个良好的软件系统来实现快速、有效、准确、安全的处理银行事物。 主要用于银行的储蓄卡管理系统,它可以帮助我们有效、准确、并且高效实现的完成存取事件。此系统操作方便效率、安全性高,只要客户开户并设定好密码就可以轻松的实现存取款。 系统实现的主要有储蓄卡开户管理、存取款管理、用户查询历史数据显示、注销等功能。 储蓄卡开户管理模块:卡号、姓名、开户金额、身份证号、地址、电话、密码、确认密码和保存组成。(开户金额必须是数字,密码和确认密码必须一样是六位数字) *注销模块:一旦注销该卡号就不存在且余额提醒你取出。 通过该银行账户管理系统地运行,使办公人员可以轻松快捷的完成对账户管理的任务,提高账目管理效率,使银行的账目管理工作系统化、规范化、自动化。 该银行帐目管理信息系统,优点是设计过程思路清晰、模块划分简洁,设计各阶段分工明确。经过实践证明,该划分是合理的,极大得提高了本系统的实现。

SQLserver2008数据库课程设计范例——学生成绩管理系统报告

数据库技术与应用 课程设计说明书 题目:学生成绩管理系统 院系: 专业班级: 学号: 学生姓名: 指导教师: 2014年 12 月 22 日 一概述 1.1目的与要求

随着科技的发展,基本上所有的具有一定数量数据的机构都开始使用计算机数据库来做管理。几乎所有学校也都已经在使用计算机管理数据的机制,大大减少了学校学生成绩管理的工作量。该课程设计要求设计一个学生成绩的数据库管理系统,数据库中要求包含学生的基本信息,学科基本信息,以及学生所学课程的考试成绩。要方便学生进行成绩查询,通过该课程设计,应该达到把数据库理论知识更加的巩固加深,加强动手能力与实践能力,学以致用,与现实生活中的应用充分的结合起来。 1.2设计环境 ① Microsoft SQL Server 2000 ② Microsoft Visual C++ 6.0 二需求分析 2.1 系统功能要求设计 此系统实现如下系统功能: (1)使得学生的成绩管理工作更加清晰、条理化、自动化。 (2)通过用户名和密码登录系统,查询课程基本资料,学生所选课程成绩,修改用户密码等功能。容易地完成学生信息的查询操作。 (3) 设计人机友好界面,功能安排合理,操作使用方便,并且进一步考虑系统在安全性,完 整性,并发控制,备份和恢复等方面的功能要求。 2.2 系统模块设计 成绩管理系统大体可以分成二大模块如,一是学生的基本信息模块,里面应该包含学生的各方面的基本信息;再者便是课程管理模块,在该模块中应该包含有对学生成绩信息的查询和处理,如平均成绩、最好成绩、最差成绩以及不及格学生的统计等功能模块;再其次还有教师、课程等相关信息的模块;可以得到系统流程图: 登陆失败 用户 验证

《面向对象程序设计cpp》课程设计指导书

《面向对象程序设计》课程设计指导书

一、课程设计目的 通过本课程设计,培养上机动手能力,使学生巩固《面向对象程序设计》课程学习的内容,掌握工程软件设计的基本方法,强化上机动手能力,闯过编程关。 二、课程设计题目 0、人事管理系统 1、物业管理系统 2、客房管理系统 3、学生管理系统 4、民航订票系统 5、商场销售管理系统 6、通讯录 7、图书馆管理系统 8、商场(工厂)库存管理系统 9、“一二九”合唱评委打分系统 学生课设选题根据学号的尾数确定。(例学号为17号的学生做7号题目) 三、课程设计任务 1、任务:在两周内独立正确完成至少1道题目。 2、学生完成课设后,向指导老师提出答辩申请。答辩时要检查的内容为: (1) 课程设计纸质文档; (2) 课程设计源代码及其运行结果; (3) 老师提出相关问题,学生对问题进行作答。 3、时间: 指导:第十六,十七周。 答辩时间:第十七周 四、课程设计考核方式 课程设计成绩评定的依据有设计文档资料、具体实现设计方案的程序及课程设计考勤登记表,其中平时成绩占总成绩的30%。

优(90分以上):按要求完成,有完整的符合标准的文档,文档有条理、文笔通顺,格式正确,其中有总体设计思想的论述,有正确的流程图,程序完全实现设计方案,设计方案先进,软件可靠性好,能很好的回答老师所提出的问题; 良(80 - 90分):按要求完成,有完整的符合标准的文档,文档有条理、文笔通顺,格式正确;有完全实现设计方案的软件,设计方案较先进,能较好的回答老师所提出的问题; 中(70 - 80分):按要求完成,有完整的符合标准的文档,有基本实现设计方案的软件,设计方案正确,能基本回答老师所提出的问题; 及格(60 - 70分):按要求完成,有完整的符合标准的文档,有基本实现设计方案的软件,但不能完全运行,设计方案基本正确,不能完全回答老师所提出的问题; 不及格(60分以下):不能完成程序,没有完整的符合标准的文档,软件没有基本实现设计方案,设计方案不正确,不能回答老师所提出的问题。 五、提交的资料 1、软件 软件需提供源程序,并能正常运行。 注:对于程序中未能实现的部分需要加以说明。 对于程序中所参考的部分代码需要加以声明,并说明出处。 2、文档 (1)设计文档的格式尽量按照《中华人民共和国国家标准UDC 681. 3计算机软件产品开发文件编制指南GB 8567-88》的标准书写。 (2)内容(以下仅提供参考) 1、需求分析; 2、类设计及说明; 3、定义的函数主要功能说明; 4、主要算法说明:举例说明1、2个比较有特点的算法; 5、系统总框图; 6、存在的问题与不足及对策;

面向对象程序设计作业参考答案

习题一 5、分析下面程序运行的结果。 # using namespace std; int main() { cout<<”This”<<”is”; cout<<”a”<<”C++”; cout<<”program.”< using namespace std; int main() { int a,b,c; a = 10; b = 23; c = a + b; cout<<'a + b ="; cout< using namespace std; int main() { int a, b; a = b = 0; int c = a + b; cout<<”a + b =”<

9、输入以下程序,进行编译,观察编译情况,如果有错误,请修改程序,在进行编译,直到没有错误,然后进行连接和运行,分析运行结果。 修改后的程序如下: #include using namespace std; int add(int x,int y); int main() { int a = 0, b = 0; int c = add(a,b); cout<<" a + b ="<

大数据库课程设计——图书管理系统

数据库系统原理课程设计 课题名称:图书信息管理系统 姓名: 班级: 学号: 指导老师: 2014年 01月 02日

目录 1.绪论------------------------------------------------------------ 3 1.1背景介绍------------------------------------------------------ 3 1.2开发背景的选用及介绍------------------------------------------ 3 2.需求分析-------------------------------------------------------- 4 2.1系统分析------------------------------------------------------ 4 2.2系统目标------------------------------------------------------ 4 2.3总体需求------------------------------------------------------ 4 3.概念设计阶段---------------------------------------------------- 5 3.1实体E-R图---------------------------------------------------- 5 3.2数据流程图---------------------------------------------------- 8 4.逻辑结构设计阶段------------------------------------------------ 8 4.1E-R图转换为关系模型 ------------------------------------------ 8 4.2数据字典------------------------------------------------------ 9 5.物理结构设计阶段---------------------------------------------- 10 5.1物理设计阶段的目标和任务------------------------------------- 10 5.2数据存储方面------------------------------------------------- 10 6.数据库实施与维护----------------------------------------------- 10 6.1创建数据库,数据表------------------------------------------- 10 6.2创建视图----------------------------------------------------- 12 6.3创建索引----------------------------------------------------- 13 6.4创建触发器--------------------------------------------------- 13 6.5数据表的初始化----------------------------------------------- 14 6.6初始表的显示------------------------------------------------- 16 7.数据库界面实现------------------------------------------------ 19 7.1系统总的功能模块图------------------------------------------- 19 7.2系统的实现--------------------------------------------------- 19 8.心得体会------------------------------------------------------- 25

相关文档
最新文档