课程设计

时间:2024.4.30

《管理信息系统》课程设计

        ——期末实验考核

英文名称:Management Information SystemMIS

适用对象:公共事业管理、市场营销、财务管理等本科专业

学    时:4学时

管理信息系统作为一门将计算机技术、数据通讯技术和管理科学综合起来的新兴边缘学科,具有很强的实践性。学好管理信息系统这门课程,不仅要学习和了解管理信息系统的基本概念、理论体系和方法工具,而且要结合开发管理信息系统的实践,深刻领会在系统开发全过程中的理论实质,增强信息资源的开发意识,培养学生分析、设计、研制信息系统的能力。

一、目的

通过管理信息系统实验,使学生深刻领会系统规划、系统分析、系统设计和系统实施过程中体现的管理信息系统的基本概念和理论体系,掌握系统开发的原则和方法,并结合实际构造信息系统的逻辑模型和物理模型,培养学生具有开发研制管理信息系统的能力。

二、课程设计内容及要求
1、本课程设计主要涉及书面材料的撰写,内容包括管理信息系统前期的系统调查,系统分析,系统设计,系统实施等主体环节。

2、课程设计由学生拟定或选择一个题目来完成。

3课程设计最终成果以Word文档形式排版并打印上交。同时需将电子文档发送到唯一指定信箱:fangxinglin@126.com,邮件主题以小组学生名单为主题。

三、实验内容及学时安排(4学时)

四、课程设计报告内容撰写要求 

1.系统分析部分

1)系统概述、可行性分析

2)业务流程概述

3)数据流程图

*4)数据字典

2.系统设计部分

1)功能结构图设计

2)代码设计

*3)系统运行环境

4)数据库设计

3.系统实施部分

       1)计算机系统实施(即一套合理的计算机软、硬件配置清单)

       *2)网络系统实施

注意:(*为可选项)

课程设计报告撰写的基本要求是报告不少于3000字。以小组为单位提交一份书面报告,小组人数最多4人,单独一个人完成的可另加分!需在提交的书面报告封面注明设计选题、班级、姓名、学号。

五、参考题目 

注意:以下题目仅供参考,可以另选题目
1.学生成绩管理系统

2.学生信息管理系统

3.小型旅馆(酒店)管理系统

4.学生宿舍管理系统

5.教务信息管理系统

6.工资管理系统

7.超市进销存系统

8.企业设备管理系统

9.人力资源管理系统

10.物业收费管理系统

11.住宅小区物业管理信息系统

12.仓库管理系统

13.医院管理信息系统

14.员工培训管理系统

15.企业策划管理信息系统

16.材料采购管理信息系统

17.(院)系团委工作支持系统

18.图书馆管理(租赁)信息系统
19.XX(选择某一学生社团)管理信息系统

20.客户管理系统

21.旅游资源管理系统

22.旅行社管理系统


第二篇:课程设计(小题)


1 函数重载 定义重载函数max3用于计算三个数的最大值(参数类型分别为int和double)。 #include<iostream>

using namespace std;

int max3(int x, int y, int z)

{

}

double max3(double x, double y, double z)

{

}

void main()

{

} int a, b, c; cout << "Please input three integer:"; cin >> a >> b >> c; cout << "The Max of three is " << max3(a, b, c) << endl; double a1, b1, c1; cout << "Please input three real number:"; cin >> a1 >> b1 >> c1; cout << "The Max of three is " << max3(a1, b1, c1) << endl; return ((x > y ? x : y) > (x > z ? x : z) ? (x > y ? x : y) : (x > z ? x : z)); return ((x > y ? x : y) > (x > z ? x : z) ? (x > y ? x : y) : (x > z ? x : z));

2 类的组合

定义point类,数据成员包括x,y,成员函数包括构造函数,拷贝构造函数和析构函数,以及setx,getx,sety,gety四个属性函数。定义line类,端点由两个point类的对象组成,包括构造函数,析构函数以及计算线段长度的函数getlength。在main函数中,定义line的对象,并输出其长度。

#include<iostream>

#include<cmath>

using namespace std;

class point

{

private:

double x, y; point(){} point(double x, double y) :x(x), y(y) {} void setx(double xx) { } double getx(){ return x; } x = xx; public:

}; void sety(double yy) { } double gety(){ return y; } point(point & p) { } ~point(){} x = p.x; y = p.y; y = yy;

class line

{

private:

};

void main()

{

} point p1(2, 3); point p2(5, 6); line l1(p1,p2); cout << "The length of the line is " << l1.getlength()<<endl; point a, b; line(point aa,point bb) :a(aa), b(bb) {} double getlength() { } ~line(){} double length; length = sqrt(pow((a.getx() - b.getx()), 2) + pow((a.gety() - b.gety()), 2)); return length; public:

3 对象数组和函数

定义student类,数据成员包括姓名name和成绩score,成员函数包括构造函数,拷贝构造函数和析构函数。定义函数void highestscore(student s[]),输出分数最高的学生姓名和分数。在main函数中定义student s[N],调用highestscore函数,输出分数最高的学生姓名和分数。

#include<iostream>

#include<iomanip>

#include<string>

const int N = 2;

using namespace std;

class student {

private:

string name; double score; student(){} student(string n, double s) :name(n), score(s) {} student(student &s) { } /*void setname(string nn) { } string getname(){ return name; } void setscore(double ss) { } double getscore(){ return score; }*/ void highestscore(student s[]) { } ~student(){} friend ostream & operator <<(ostream & os, student s) { os << s.name << " " << s.score << endl; int k = 0; double max; max = s[0].score; for (int i = 1; i < N; i++) { } cout << "The name is " << s[k].name << endl; cout << "Highestscore is " << s[k].score << endl; if (max < s[i].score) { } max = s[i].score; k = i; score = ss; name = nn; name = s.name; score = s.score; public:

}; } return os; friend istream & operator >>(istream & is, student &s) { } is >> s.name >> s.score; return is;

void main()

{

} student s[N]; for (int i = 0; i < N; i++) { } s[N].highestscore(s); cin >> s[i];

4 静态数据成员

设计一个书类,能够保存书名、定价,所有书的本数和总价。(将书名和定价设计为普通数据成员;将书的本数和总价设计为静态数据成员)

class book{

private:

double priece;

string name;

static int num;

static double total;

};

int book::num;

double book::total;

5 动态内存分配

定义point类,数据成员包括x,y,成员函数包括构造函数,拷贝构造函数和析构函数,以及setx,getx,sety,gety四个属性函数。在main函数中,用new和delete分配和释放N个point的数组。(N是const常量,N=10)

#include<iostream>

const int N = 10;

using namespace std;

class point

{

private:

int x, y; point(){} point(int x, int y) :x(x), y(y) public:

}; {} point(point & p) { } void setx(int xx) { } int getx(){ return x; } void sety(int yy) { } int gety(){ return y; } ~point(){} y = yy; x = xx; x = p.x; y = p.y;

void main()

{

} point *p = new point[N]; delete[] p;

6 类的继承

定义一个point类,包含私有数据成员x,y,成员函数包括无参构造函数,带参构造函数,set和get属性函数。定义circle类,从point类公有派生,增加数据成员半径r,成员函数包括无参构造函数,带参构造函数,计算面积函数getarea。在main函数中定义一个circle的对象,并计算其面积。

#include<iostream>

using namespace std;

class point

{

private:

double x, y; point(){} point(double x, double y) :x(x), y(y) {} void setx(double xx) { } double getx(){ return x; } void sety(double yy) x = xx; public:

}; { } double gety(){ return y; } ~point(){} y = yy;

class circle :public point

{

private:

};

void main()

{

} circle c1(2, 3, 4.5); cout << "The area of circle is " << c1.getarea() << endl; double r; circle(){} circle(double x, double y, double r) :point(x, y), r(r) {} double getarea() { } return 3.14*r*r; public:

7 虚基类

定义vehicle类,数据成员包括私有的weight,公有的构造函数,析构函数和输出函数dispaly;从vehicle类公有派生car类,增加数据成员载人数personnum,公有的构造函数,析构函数和输出display;从vehicle类公有派生truck类,增加数据成员载货量laod,公有的构造函数,析构函数和输出函数display;从car类和truck类共同公有派生出pickup类,包括公有的构造函数和输出函数。在main函数中,定义pickup类对象,并输出其基本信息。 #include<iostream>

using namespace std;

class vehicle

{

private:

double weight; vehicle(double w) :weight(w) {} void display() { } ~vehicle(){} cout << "the weight of vehicle is " << weight << endl; public:

};

class car :virtual public vehicle {

private:

};

class truck :virtual public vehicle {

private:

};

class pickup :public car, public truck {

public:

};

void main() pickup(double w1, int p, double w2, double l, double w) :car(w1, p), truck(w2, l), {} void display() { } ~pickup(){} vehicle::display(); car::display(); truck::display(); vehicle(w) double load; truck(double ww, double l) :vehicle(ww), load(l) {} void display() { } ~truck(){} //vehicle::display(); cout << "The load of the truck is " << load << endl; public: int personnum; car(double ww, int p) :vehicle(ww), personnum(p) {} void display() { } ~car(){} //vehicle::display(); cout << "The number of person is " << personnum << endl; public:

{

} pickup p1(211, 2, 200, 170,100); p1.display();

8 运算符重载,友元函数和this指针

定义一个计数器类counter,具备自增,自减功能(前后缀);输入输出>>,<<功能。在main函数里测试该类。

#include<iostream>

using namespace std;

class counter

{

private:

}; double num; counter(){} counter(double n) :num(n) {} counter operator++() { } counter operator--() { } counter operator++(int) { } counter operator--(int) { } friend ostream & operator << (ostream & os, counter c); friend istream & operator >> (istream & is, counter &c); counter nn; nn.num = this->num; num--; return nn; counter nn; nn.num = this->num; num++; return nn; --num; return *this; ++num; return *this; public:

ostream & operator << (ostream & os, counter c)

{

}

istream & operator >> (istream & is, counter &c)

{

}

void main()

{

} counter c1,c2; cin >> c1; c2 = c1.operator++(0); cout << "c1=" << c1; cout << "c2=" << c2; is >> c.num; return is; os << c.num << endl; return os;

9 虚函数和抽象类

定义一个抽象类shape,包括公有的计算面积area函数,计算体积volume函数,输出基本信息函数printinfo(三个函数均为纯虚函数)。从shape公有派生point类,增加私有数据成员x,y坐标,以及构造函数,析构函数。从point公有派生circle类,增加私有数据成员半径r,以及构造函数,析构函数。从circle公有派生cylinder类,增加私有数据成员高度h,以及构造函数,析构函数。(在定义三个派生类的过程中,自己考虑需要重定义哪个虚函数)。在main函数中,定义shape类的指针,指向派生类的对象,输出三类对象的基本信息,面积,体积;(将shape指针改为引用再尝试)。 #include<iostream>

using namespace std;

class shape

{

public:

};

class point :public shape

{

private:

int x, y; point(int x, int y) :x(x), y(y) {} void printinfo() { public: virtual double area() = 0; virtual double volume() = 0; virtual void printinfo() = 0;

}; } cout << "x=" << x << ",y=" << y << endl; ~point(){}

class circle :public point {

private:

};

class cylinder :public circle {

private:

double h; cylinder(int x, int y, double r, double h) :circle(x, y, r), h(h) {} double area() { } double volume() { } void printinfo() { } circle::printinfo(); cout << "h=" << h << endl; //cout << "volume is " << volume() << endl; return circle::area()*h; return circle::area(); public: double r; circle(int x, int y, double r) :point(x, y), r(r) {} double area() { } void printinfo() { } ~circle(){} point::printinfo(); cout << "r=" << r << endl; //cout << "circle area is " << area() << endl; return 3.14*r*r; public:

}; ~cylinder(){}

void main()

{

} cylinder c1(2, 3, 4, 5); shape *s; s = &c1; (*s).printinfo(); cout << "circle area is " << s->area() << endl; cout << "volume is " << (*s).volume() << endl;

10 模板

设计一个堆栈的类模板Stack,在模板中用类型参数T表示栈中存放的数据,用非类型参数MAXSIZE代表栈的大小。

#include<iostream>

//const int MAXSIZE = 5;

using namespace std;

template<typename T,int MAXSIZE>

class stack

{

private:

};

void main() T a[MAXSIZE]; int top; stack() :top(0) {} void push(int x) { } T pop() { } if (top == 0) cout << "the stack is empty" << endl; top--; else return a[top]; if (top == MAXSIZE) cout << "the stack is full" << endl; a[top] = x; else top++; public:

{

} stack<int,5> s; s.push(1); cout << s.pop() << endl;;

11 文件读写

定义学生类数组,有N个人(N=5),包括姓名和语数外三名课的成绩,通过重载<<和>>运算符实现学生数组的文件读写。(姓名用string name;) #include<iostream>

#include<fstream>

#include<string>

#include<iomanip>

const int N = 3;

using namespace std;

class student

{

private:

};

void main()

{

student s[N]; fstream file; file.open("d:\\student.txt", ios_base::out); if (file.is_open()) { for (int i = 0; i < N; i++) char name[10]; double Chinese, Math, English; student(){} student(char n[], double c, double m, double e) :Chinese(c), Math(m), English(e) { } friend ostream & operator << (ostream & os, student s) { } friend istream & operator >> (istream & is, student &s) { } is >> s.name >> s.Chinese >> s.Math >> s.English; return is; os << s.name << " " << s.Chinese << " " << s.Math << " " << s.English << endl; return os; strcpy_s(name, n); public:

} } { } file.close(); cin >> s[i]; file << s[i]; else cout << "file can't be opened!" << endl; student s1[N]; fstream file1("d:\\student.txt", ios_base::in); if (file1.is_open()) { } else cout << "file can't be opened!" << endl; for (int i = 0; i < N; i++) { } file1.close(); file1>> s1[i]; cout << s1[i];

更多相关推荐:
建筑结构课程设计设计总结

工程结构设计心得课程设计对学生而言是其对所学课程内容掌握情况的一次自我验证,从而有着极其重要的意义。通过课程设计能提高学生对所学知识的综合应用能力,能全面检查并掌握所学内容;《建筑结构》从课程性质上讲是一门专业…

课程设计心得体会

心得体会通过这次课程设计,让我更加深刻了解课本知识,和以往对知识的疏忽得以补充,在设计过程中遇到一些模糊的公式和专业用语,比如说经济刮板运输机及皮带运输的选择,在选择选择刮板皮带运输选型时,在使用手册时,有的数…

课程设计个人小结

个人小结三周的课程设计结束了,我和同学们一起度过了这段忙碌而充实的时光。这次的课程设计深刻的反映出实践是检验真理的唯一标准这句话的真谛。课程设计是我们专业课程知识综合应用的实践训练,是我们迈向社会,从事职业工作…

信息工程学院课程设计总结

通过近两周的奋斗,课程设计接近了尾声。经过两周的奋战我的课程设计终于完成了。在没有做课程设计以前觉得课程设计只是对信号与系统这门课程所学知识的单纯总结,但是通过这次做课程设计发现自己的看法有点太片面。课程设计不…

课程设计心得体会(通用)

课程设计心得体会通用通过此次课程设计使我更加扎实的掌握了有关方面的知识在设计过程中虽然遇到了一些问题但经过一次又一次的思考一遍又一遍的检查终于找出了原因所在也暴露出了前期我在这方面的知识欠缺和经验不足实践出真知...

课程设计总结模板

两周的课程设计结束了,在这次的课程设计中不仅检验了我所学习的知识,也培养了我如何去把握一件事情,如何去做一件事情,又如何完成一件事情。在设计过程中,与同学分工设计,和同学们相互探讨,相互学习,相互监督。学会了合…

万能课程设计心得体会2个

1两周的课程设计结束了,在这次的课程设计中不仅检验了我所学习的知识,也培养了我如何去把握一件事情,如何去做一件事情,又如何完成一件事情。在设计过程中,与同学分工设计,和同学们相互探讨,相互学习,相互监督。学会了…

asp net 课程设计小结

课程设计小结又过去了一周这次aspnet的课程设计中学习到了很多通过这次的课程设计检验和巩固了我平时所学的知识让我知道了平时学习中的不足教会了我如何去完整地完成简单的系统在设计的过程之中遇见问题是一定的有时候就...

数据结构课程设计总结

课程设计说明书课程名:《数据结构课程设计》题目:一元多项式运算系统20##年1月一、课程认识数据结构课程主要是研究非数值计算的程序设计问题中所出现的计算机操作对象以及它们之间的关系和操作的学科。数据结构是介于数…

课程设计心得

嵌入式系统开发课程设计题目基于6410ARM的嵌入式WEB服务器的移植院系信息工程学院专业班级11计科特色班学生姓名邵飞飞学号1142157115设计地点13号楼605指导教师王华本起止时间20xx年4月21日...

课程设计心得感想体会29篇

课程设计心得感想体会在做实验前一定要将课本上的知识吃透因为这是做实验的基础否则在老师讲解时就会听不懂这将使你在做实验时的难度加大浪费做实验的宝贵时间比如做应变片的实验你要清楚电桥的各种接法如果你不清楚在做实验时...

课程设计心得

课程设计心得篇一课程设计心得本学期实时测量技术实验以电子设计大赛的形式老师命题学生可以选择老师的题目也可以自己命题并且组队操作其他的事情包括设计总体方案硬件电路软件设计焊接调试等工作趣味性强同时也可以学到很多东...

课程设计设计总结(40篇)