点餐系统实验报告

点餐系统实验报告
点餐系统实验报告

《高级语言程序设计课程设计》报告模板吉林大学珠海学院

高级语言程序设计

课程设计

系别:计算机学院

专业名称:计算机科学与技术

学生姓名:

学号:

指导教师:

完成日期:2018年 6月 12日

目录

1.题目1..................................................................................................................................................................

1.1 问题描述.................................................................................................................................................

1.2 解题思路.................................................................................................................................................

1.3 程序设计.................................................................................................................................................

1.4 测试结果.................................................................................................................................................

2.题目2 (2)

2.1 问题描述 (2)

2.2 解题思路 (2)

2.3 程序设计 (2)

2.4 测试结果.................................................................................................................................................

3.题目3 (3)

3.1 问题描述 (3)

3.2 解题思路 (4)

3.3 程序设计 (4)

3.4 测试结果 (4)

4. 题目4 (5)

4.1 问题描述 (5)

4.2 解题思路 (6)

4.3 程序设计 (6)

4.4 测试结果 (6)

5. 结论与心得 (17)

6. 参考文献 (17)

1.题目1

1.1 问题描述

编写程序,输入两个整数,计算它们的商和余数,并输出。

运行程序:输入9和2两个整数,结果图如下图所示:

1.2 解题思路

问题分析:该题需要对用户输入的两个数字进行除法运算并输出结果

解题思路:首先依题目要求引导用户输入数字,然后进行除法运算并输出结果

1.3 程序设计

具体目标:利用已定义的除法运算对用户输入的两个数字进行处理

1.4 测试结果

int a,b;

cout<<"请输入两个整数,用空格分隔开,按回车键结束:"<

cin>>a>>b;

cout<<"输出结果:"<

cout<<"num1="<

cout<

测试结果:

2.题目2

2.1 问题描述

编写程序,实现对四个整数由大到小排序,并输出。

效果如图:

2.2 解题思路

问题分析:该题需要对用户输入的四个整数进行由大到小的排序并输出解题思路:引导用户输入数字,并用冒泡排序法进行排序,然后输出

2.3 程序设计

具体目标:对用户输入的数字进行冒泡排序

2.4 测试结果

int i,j;

int a[4];

cout<<"请输入4个整数,用空格键分开,按回车键结束:"<

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

{

cin>>a[i];

}

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

{

for(j=1;j

{

if(a[i]>a[j])

{

int temp=0;

temp=a[i];

a[i]=a[j];

a[j]=temp;

}

}

}

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

{

cout<

}

测试结果:

3.题目3

3.1 问题描述

编写程序,输出1-200之间可以被n整除的所有整数,n由用户输入。要求每一行显示5个数,并且程序最后输出一共有多少个整数能被n整除。

效果图:

3.2 解题思路

问题分析:该题需要用户指定一个整数,计算1-200以内能被该数字整除的整数并输出

解题思路:规定1-200的计算范围,对用户输入的数字挨个进行除法运算,对能整除的数字进行计数并输出

3.3 程序设计

具体目标;引导用户输入数字,因为题目规定的范围比较小,所以在规定的上下界范围内用穷举的方法对每个数字进行除法运算,对符合要求的数字进行计数,计算完成后以每行5个的形式输出所有符合要求的数字

3.4 测试结果

int a,b,count=0;

cout<<"请输入一个整数:"<

cin>>a;

cout<<"1-200之间能被"<

for(b=1;b<=200;b++)

{

if(b%a==0)

{

cout<

count++;

}

if(count%5==0)

cout<

}

cout<

cout<<"一共有"<

测试结果:

4. 题目4

4.1 问题描述

金拱门快餐点餐、结算系统

题目描述:金拱门快餐店主要出售汉堡、小吃、饮料和甜品等类型的快餐食品,每种类型的食品有不同的产品,例如饮料类食品有可乐、咖啡、茶饮料等。现在让你担任吉珠金拱门连锁门店的经理,负责销售产品的选定和套餐的设计,你需要使用C/C++的console模式开发一个软件,包含所有销售产品的信息(包括单品和套餐信息),通过一个菜单系统实现顾客的点餐和结算过程,通过管理员权限统计当前结算周期的销售信息(如各产品的销售量、销售额等)

功能需求:

(1)根据面向对象的设计思想,设计一个抽象类作为基类,封装所有具体产品的共有属性和运算。根据你的产品列表,从基类派生出各具体类,包括单品和套餐产品。

(2)设计一个菜单类,应该包含但不限定下述多层菜单选项

i.顾客点餐子菜单:商品列表,顾客可一次购买多种产品

ii.结算子菜单:顾客点餐完毕自动转入结算界面,现实顾客点餐内容及总金额。要求可以返回点餐菜单进行修改。

iii.管理员子菜单:密码管理,销售统计,退出系统。

(3)设计一个订单类,封装每一个售出的订单信息,以供数据统计使用。

(4)使用外部文件存取数据,方便数据的输入输出。

4.2 解题思路

问题分析:该题需要我们创建一个产品的抽象类,还要派生出各具体类,设置一个用户操作界面,实现顾客点餐子菜单结算子菜单管理员子菜单解题思路:首先用class创建一个产品类,使用virtual关键字声明纯虚函数,实现产品的抽象类,然后派生出各种具体产品的类(汉堡类,小吃类,饮料类,甜品类,套餐类等),通过switch关键字实现用户的操作界面,用fopen打开文件存储产品的信息,(fputs存储函数)

4.3 程序设计

具体目标:创建一个抽象产品类,具体产品继承了抽象产品类,抽象类中有价格,数量,总价格,产品信息等成语,实现顾客点餐子菜单:商品列表,顾客可一次购买多种产品,结算子菜单:顾客点餐完毕自动转入结算界面,现实顾客点餐内容及总金额。要求可以返回点餐菜单进行修改。管理员子菜单:密码管理,销售统计,退出系统,使用外部文件存取数据,方便数据的输入输出

4.4 测试结果

#include

#include

#include

#include//对文件操作的库函数

#include //输入输出头文件包含getch putch等不回显函数

using namespace std;

class cp//产品的抽象类

{

public:

virtual double jisuanzongjiage()=0;//计算总价格函数

virtual void shurushuliang()=0;//输入数量函数

virtual void shezhijiage(double x)=0;//设置产品价格函数

double zongshuliang;//销售的总数量

char name[20];//产品名称

double shuliang;//数量

double jiage;//价格

protected: //封装产品的总价格

double zongjiage; //总价格

};

class hanbao:public cp//汉堡类

{

public:

void shezhijiage(double x)

{

jiage=x;

}

double jisuanzongjiage()

{

zongjiage=jiage*shuliang;

return zongjiage;

}

void shurushuliang()

{

cout<<"请输入点餐数量"<

cin>>shuliang;

}

};

class xiaochi:public cp//小吃类

{

public:

void shezhijiage(double x)

{

jiage=x;

}

double jisuanzongjiage()

{

zongjiage=jiage*shuliang;

return zongjiage;

}

void shurushuliang()

{

cout<<"请输入点餐数量"<

cin>>shuliang;

}

class yinliao:public cp//饮料类

{

public:

void shezhijiage(double x)

{

jiage=x;

}

double jisuanzongjiage()

{

zongjiage=jiage*shuliang;

return zongjiage;

}

void shurushuliang()

{

cout<<"请输入点餐数量"<

cin>>shuliang;

}

};

class tianpin:public cp//甜品类

{

public:

void shezhijiage(double x)

{

jiage=x;

}

double jisuanzongjiage()

{

zongjiage=jiage*shuliang;

return zongjiage;

}

void shurushuliang()

{

cout<<"请输入点餐数量"<

cin>>shuliang;

}

};

class taocan:public cp//套餐类

{

public:

void shezhijiage(double x)

{

jiage=x;

}

double jisuanzongjiage()

{

zongjiage=jiage*shuliang;

return zongjiage;

}

void shurushuliang()

{

cout<<"请输入点餐数量"<

cin>>shuliang;

}

};

class dingdan//订单类

{

public:

char dd[100];

};

int main()

{

FILE*chanpin;//创建保存每种产品信息的文件

while(1)

{

chanpin=fopen("产品.txt","w");

if(chanpin!=NULL)

{

cout<<"金拱门产品信息文件创建成功"<

break;

}

}

hanbao hb[5];//汉堡类的具体对象(每种汉堡)

strcpy(hb[1].name,"双层牛肉堡");//设置每种汉堡的名字strcpy(hb[2].name,"巨无霸");

strcpy(hb[3].name,"原味鸡腿堡");

strcpy(hb[4].name,"深海鳕鱼堡");

hb[1].shezhijiage(20);//设置他们的价格

hb[2].shezhijiage(25);

hb[3].shezhijiage(19);

hb[4].shezhijiage(19);

fputs("汉堡:",chanpin);//用外部文件存储汉堡类的信息fputs("\n",chanpin);

fputs(hb[1].name,chanpin);

fputs(" 价格:20",chanpin);

fputs("\n",chanpin);

fputs(" 价格:25",chanpin);

fputs("\n",chanpin);

fputs(hb[3].name,chanpin);

fputs(" 价格:19",chanpin);

fputs("\n",chanpin);

fputs(hb[4].name,chanpin);

fputs(" 价格:19",chanpin);

fputs("\n",chanpin);

fputs("\n",chanpin);

xiaochi xc[5];//小吃类的具体对象(每种小吃)

strcpy(xc[1].name,"中薯条");

strcpy(xc[2].name,"大薯条");

strcpy(xc[3].name,"炸鸡米花");

strcpy(xc[4].name,"烤鸡腿");

xc[1].shezhijiage(7);//设置他们的价格

xc[2].shezhijiage(10);

xc[3].shezhijiage(11);

xc[4].shezhijiage(9);

fputs("小吃:",chanpin);//用外部文件存储小吃类的信息fputs("\n",chanpin);

fputs(xc[1].name,chanpin);

fputs(" 价格:7",chanpin);

fputs("\n",chanpin);

fputs(xc[2].name,chanpin);

fputs(" 价格:10",chanpin);

fputs("\n",chanpin);

fputs(xc[3].name,chanpin);

fputs(" 价格:11",chanpin);

fputs("\n",chanpin);

fputs(xc[4].name,chanpin);

fputs(" 价格:9",chanpin);

fputs("\n",chanpin);

fputs("\n",chanpin);

yinliao yl[5];//饮料类的具体对象(每种饮料)

strcpy(yl[1].name,"可乐");

strcpy(yl[2].name,"咖啡");

strcpy(yl[3].name,"茶饮料");

strcpy(yl[4].name,"水果茶");

yl[1].shezhijiage(9);//设置他们的价格

yl[2].shezhijiage(15);

yl[3].shezhijiage(12);

yl[4].shezhijiage(16);

fputs("饮料:",chanpin);//用外部文件存储饮料类的信息fputs("\n",chanpin);

fputs(" 价格:9",chanpin);

fputs("\n",chanpin);

fputs(yl[2].name,chanpin);

fputs(" 价格:15",chanpin);

fputs("\n",chanpin);

fputs(yl[3].name,chanpin);

fputs(" 价格:12",chanpin);

fputs("\n",chanpin);

fputs(yl[4].name,chanpin);

fputs(" 价格:16",chanpin);

fputs("\n",chanpin);

fputs("\n",chanpin);

tianpin tp[5];//甜品类的具体对象(每种甜品) strcpy(tp[1].name,"抹茶甜筒");

strcpy(tp[2].name,"巧克力雪糕");

strcpy(tp[3].name,"草莓新地");

strcpy(tp[4].name,"奥利奥麦旋风");

tp[1].shezhijiage(4);//设置他们的价格

tp[2].shezhijiage(7);

tp[3].shezhijiage(8);

tp[4].shezhijiage(9);

fputs("甜品:",chanpin);

fputs("\n",chanpin);

fputs(tp[1].name,chanpin);

fputs(" 价格:4",chanpin);

fputs("\n",chanpin);

fputs(tp[2].name,chanpin);

fputs(" 价格:7",chanpin);

fputs("\n",chanpin);

fputs(tp[3].name,chanpin);

fputs(" 价格:8",chanpin);

fputs("\n",chanpin);

fputs(tp[4].name,chanpin);

fputs(" 价格:9",chanpin);

fputs("\n",chanpin);

fputs("\n",chanpin);

taocan tc[5];//套餐类的具体对象(每种套餐) strcpy(tc[1].name,"原味板烧鸡腿堡配中薯套餐"); strcpy(tc[2].name,"麦辣鸡腿堡鸡翅套餐"); strcpy(tc[3].name,"亲子套餐");

strcpy(tc[4].name,"深海鳕鱼堡加中薯套餐");

tc[1].shezhijiage(35);//设置他们的价格

tc[2].shezhijiage(36);

tc[3].shezhijiage(45);

tc[4].shezhijiage(39);

fputs("套餐:",chanpin);

fputs("\n",chanpin);

fputs(tc[1].name,chanpin);

fputs(" 价格:35",chanpin);

fputs("\n",chanpin);

fputs(tc[2].name,chanpin);

fputs(" 价格:36",chanpin);

fputs("\n",chanpin);

fputs(tc[3].name,chanpin);

fputs(" 价格:45",chanpin);

fputs("\n",chanpin);

fputs(tc[4].name,chanpin);

fputs(" 价格:39",chanpin);

fputs("\n",chanpin);

fputs("\n",chanpin);

for(int i=1;i<=4;i++)//设置每个产品一开始销售的数量为0;{

hb[i].zongshuliang=0;

xc[i].zongshuliang=0;

yl[i].zongshuliang=0;

tp[i].zongshuliang=0;

tc[i].zongshuliang=0;

}

while(1)

{

bool y=false;

int a;

cout<<"0.退出"<

cout<<"1.点餐"<

cout<<"2.查询汉堡类别的销售数量"<

cout<<"3.查询小吃类别的销售数量"<

cout<<"4.查询饮料类别的销售数量"<

cout<<"5.查询甜品类别的销售数量"<

cout<<"6.查询套餐类别的销售数量"<

cout<<"请输入操作号码"<

cin>>a;

switch(a)

{

case 0:

{

y=true;

}break;

case 1:

{

while(1)

{

double sum=0;

int aa=0,bb=0,cc=0,dd=0,ee=0;

system("cls");//清屏函数

cout<<"---汉堡---"<

cout<<"0.不需要"<

cout<<"1.双层牛肉堡"<

cout<<"2.巨无霸"<

cout<<"3.原味鸡腿堡"<

cout<<"4.深海鳕鱼堡"<

cout<<"请输入你要点餐的号码"<>aa;

if(aa==1||aa==2||aa==3||aa==4)

{

hb[aa].shurushuliang();

sum=sum+hb[aa].jisuanzongjiage();

}

system("cls");

cout<<"---小吃---"<

cout<<"0.不需要"<

cout<<"1.中薯条"<

cout<<"2.大薯条"<

cout<<"3.炸鸡米花"<

cout<<"4.烤鸡腿"<

cout<<"请输入你要点餐的号码"<>bb;

if(bb==1||bb==2||bb==3||bb==4)

{

xc[bb].shurushuliang();

sum=sum+xc[bb].jisuanzongjiage();

}

system("cls");

cout<<"---饮料---"<

cout<<"0.不需要"<

cout<<"1.可乐"<

cout<<"2.咖啡"<

cout<<"3.茶饮料"<

cout<<"4.水果茶"<

cout<<"请输入你要点餐的号码"<>cc;

if(cc==1||cc==2||cc==3||cc==4)

{

yl[cc].shurushuliang();

sum=sum+yl[cc].jisuanzongjiage();

}

system("cls");

cout<<"---甜品---"<

cout<<"0.不需要"<

cout<<"1.抹茶甜筒"<

cout<<"2.巧克力雪糕"<

cout<<"3.草莓新地"<

cout<<"4.奥利奥麦旋风"<

cout<<"请输入你要点餐的号码"<

cin>>dd;

if(dd==1||dd==2||dd==3||dd==4)

{

tp[dd].shurushuliang();

sum=sum+tp[dd].jisuanzongjiage();

}

system("cls");

cout<<"---套餐---"<

cout<<"0.不需要"<

cout<<"1.原味板烧鸡腿堡配中薯套餐"<

cout<<"2.麦辣鸡腿堡鸡翅套餐"<

cout<<"3.亲子套餐"<

cout<<"4.深海鳕鱼堡加中薯套餐"<

cout<<"请输入你要点餐的号码"<

cin>>ee;

if(ee==1||ee==2||ee==3||ee==4)

{

tc[ee].shurushuliang();

sum=sum+tc[ee].jisuanzongjiage();

}

system("cls");

cout<<"你点餐的内容为"<

if(aa!=0)cout<

if(bb!=0)cout<

if(cc!=0)cout<

if(dd!=0)cout<

if(ee!=0)cout<

cout<<"总价格为"<

cout<<"你需要重新点餐吗?,输入1是重新点餐,0是不需要

重新点餐"<

int xx;

cin>>xx;

if(xx==0)

{

hb[aa].zongshuliang=hb[aa].zongshuliang=hb[aa].shuliang;

xc[bb].zongshuliang=xc[bb].zongshuliang=xc[bb].shuliang;

yl[cc].zongshuliang=yl[cc].zongshuliang=yl[cc].shuliang;

tp[dd].zongshuliang=tp[dd].zongshuliang=tp[dd].shuliang;

tc[ee].zongshuliang=tc[ee].zongshuliang=tc[ee].shuliang;

break;

}

}

}break;

case 2:

{

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

{

cout<

}

}break;

case 3:

{

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

{

cout<

}

}break;

case 4:

{

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

{

cout<

}

}break;

case 5:

{

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

{

cout<

}

}break;

case 6:

{

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

{

cout<

}

}break;

}

if(y)break;

getch();

system("cls");

}

return 0;

}

测试结果:

5.结论与心得

在此次的程序设计实验中,A组题相对较容易解决,而B组题整个题目设计到解决思路都较A组题更为复杂,在实际解决过程中,我和同班的另一位选择B 组同道题的同学进行了合作,一起讨论问题的解决方案,在关键的地方也寻求了同专业师兄的帮助,对该类程序的设计方法终于有了较为模糊的概念。因时间关系尚未实现的一些想法是:对点餐系统包含的餐品以菜单的形式全部列举出来,并提供编号供用户自行选择,该想法我将会在之后尝试进行。经过此次课程,我深刻体会到了程序设计是需要实际操作的一门课程,需要长期的实践来累积应对各种问题的经验,以此可以互相借鉴,触类旁通。

6.参考文献

《高级语言程序设计课程设计》成绩评定表

管理信息系统实验报告

实验一认识计算机硬件和网络结构 一、实验题目 认识计算机硬件和网络结构。 二、实验课时 2课时。 三、实验目的 认识计算机的主要构成部件、功能、型号、在计算机机箱内的位置、网络结构等。 四、实验内容和要求 1、利用多媒体演示计算机的主要组成部件:机箱、主板、CPU、内存条、硬盘、软驱、光驱、插槽、BUS总线、串行接口、并行接口、USB接口等; 2、打开机箱,实物展示并讲解个部件的功能及其连接; 3、机箱、主板、CPU、CPU风扇、内存条、显卡、网卡等分别如下所示。 机箱主板

内存条显卡网卡无线网卡 CPU CPU风扇硬盘 机箱背面并行接口串行接口USB接口 4、观察每个部件在机箱的位置,并掌握每个部件的功能和基本知识。 5、观察实验室网络结构图。 6、结合某网吧的例子更好地理解网络结构。 Parallel port Serial port USB port Keyboard and mouse ports

7、独立完成上述内容,并提交书面实验报告。 五、实验体会 通过本次实验,我了解了计算机的各种硬件和网络结构。知道了各种硬件的形状、功能、特征等。还知道了网络结构的流程、大体构造。这使我对计算机有了初步的认识,为以后更进一步的学习打下了坚实的基础。也为我以后的学习和生活提供了方便。 1、cpu——中央处理器,是一台计算机的运算核心和控制核心。 2、硬盘——是电脑的主要存储媒介之一。 3、主板——又叫主机板、系统板或母板,安装在机箱内,是微机最基本也是最重要的部件之一。 4、机箱——作为电脑配件的一部分,它起的主要作用是放置和固定各电脑配件,起到一个承托和保护作 用。 5、内存条——是连接CPU和其他设备的通道,起到缓冲和数据交换作用。

操作系统实验报告

课程设计实验报告 课程名称:操作系统原理 姓名: 学号: 2012年06月18日

青岛工学院信息工程系实验报告 实验一进程创建 1.实验目的 了解在linux系统c语言下的编译环境。 熟练地进行程序的编译,执行。 2.实验环境配置 Linux系统下 3.实验内容(源代码) #include int main() { int p1,p2; while((p1=fork())==-1); if(p1==0) { putchar('b'); return 0; } else { putchar('a'); while((p2=fork())==-1); if(p2==0) { putchar('c'); return 0; } } } 4.实验结果分析 运行结果可能是:baca、baac、aacb等

实验二管道通信1.实验目的 了解什么是管道 熟悉Unix/Linux操作系统支持管道通信 2.实验内容(源代码) #include #include #include #include int pid1,pid2; main() { int fd[3]; char OutPipe[100],InPipe[100]; pipe(fd); while((pid1=fork())==-1); if(pid1==0) { wait(0); printf("p1\n"); lockf(fd[0],1,0); printf("p1:"); read(fd[0],InPipe,50); printf("%s\n",InPipe); lockf(fd[0],0,0); exit(0); } else { while((pid2=fork())==-1); if(pid2==0) { wait(0); printf("p2\n"); lockf(fd[0],1,0); printf("p2:"); read(fd[0],InPipe,50); printf("%s\n",InPipe); lockf(fd[0],0,0);

氢氧燃料电池性能测试实验报告

氢氧燃料电池性能测试 实验报告 Company Document number:WTUT-WT88Y-W8BBGB-BWYTT-19998

氢氧燃料电池性能测 试实验报告 学号: 姓名:冯铖炼 指导老师:索艳格 一、实验目的 1.了解燃料电池工作原理 2.通过记录电池的放电特性,熟悉燃料电池极化特性 3.研究燃料电池功率和放电电流、燃料浓度的关系 4.熟悉电子负载、直流电源的操作 二、工作原理 氢氧燃料电池以氢气作燃料为还原剂,氧气作氧化剂氢氧燃料电池,通过燃料的燃烧反应,将化学能转变为电能的电池,与原电池的工作原理相同。 氢氧燃料电池工作时,向氢电极供应氢气,同时向氧电极供应氧气。氢、氧气在电极上的催化剂作用下,通过电解质生成水。这时在氢电极上有多余的电子而带负电,在氧电极上由于缺少电子而带正电。接通电路后,这一类似于燃烧的反应过程就能连续进行。

工作时向负极供给燃料(氢),向正极供给氧化剂(氧气)。氢在负极上的催化剂的作用下分解成正离子H+和电子e-。氢离子进入电解液中,而电子则沿外部电路移向正极。用电的负载就接在外部电路中。在正极上,氧气同电解液中的氢离子吸收抵达正极上的电子形成水。这正是水的电解反应的逆过程。 氢氧燃料电池不需要将还原剂和氧化剂全部储藏在电池内的装置氢氧燃料电池的反应物都在电池外部它只是提供一个反应的容器 氢气和氧气都可以由电池外提供燃料电池是一种化学电池,它利用物质发生化学反应时释出的能量,直接将其变换为电能。从这一点看,它和其他化学电池如锌锰干电池、铅蓄电池等是类似的。但是,它工作时需要连续地向其供给反应物质——燃料和氧化剂,这又和其他普通化学电池不大一样。由于它是把燃料通过化学反应释出的能量变为电能输出,所以被称为燃料电池。 具体地说,燃料电池是利用水的电解的逆反应的"发电机"。它由正极、负极和夹在正负极中间的电解质板所组成。最初,电解质板是利用电解质渗入多孔的板而形成,2013年正发展为直接使用固体的电解质。 工作时向负极供给燃料(氢),向正极供给氧化剂(空气,起作用的成分为氧气)。氢在负极分解成正离子H+和电子e-。当氢离子进入电解液中,而电子就沿外部电路移向正极。用电的负载就接在外部电路中。在正极上,空气中的氧同电解液中的氢离子吸收抵达正极上的电子形成水。这正是水的电解反应的逆过程。此过程水可以得到重复利用,发电原理与可夜间使用的太阳能电池有异曲同工之妙。 燃料电池的电极材料一般为惰性电极,具有很强的催化活性,如铂电极、活性碳电极等。 利用这个原理,燃料电池便可在工作时源源不断地向外部输电,所以也可称它为一种"发电机"。 一般来讲,书写燃料电池的化学反应方程式,需要高度注意电解质的酸碱性。在正、负极上发生的电极反应不是孤立的,它往往与电解质溶液紧密联系。如氢—氧燃料电池有酸式和碱式两种: 若电解质溶液是碱、盐溶液则

管理信息系统实验报告97692

《管理信息系统》实验报告 实验项目:教务处排课系统分析 实验学时:18 学时 姓名: 学号: ________________ 专业班级: 实验时间: _______ 实验成绩: __________________________

东北财经大学 《管理信息系统》实验报告实验项目名称:

沟通能力,养成对问题全面分析、思考和严谨认真的态度,增强创新意识五、教师评语 签名: 日期: 管理系统实验报告

实验小组成员: 实验对象:教务处排课信息系统 实验对象背景介绍:教务管理系统是一个庞大而复杂的系统,它包括:学生学籍管理系统、排课 系统、教师管理系统、学生成绩系统、系统设置、班级信息系统、教学培养计划管理系统、教学资源管理系统、招生系统教务信息发布系统和事务处理系统。随着科学技术的进步与相应的管理信息系统的升级,教务系统管理平台充分利用互联网络B/S 管理信息模式,以网络为平台,为各个学校教务系统的管理提供一个平台,帮助学校管理教务系统,用一个帐号解决学校教务教学管理,并且学校可以自由选择学校需要的教务管理系统,灵活地定制符合学校自己实际情况的教务系统。教务管理系统内部子系统多样庞杂, 今天我们主要讨论的研究对象是排课管理信息系统。 排课管理系统是每个学校必不可少的内容,它的优劣直接学校教学工作质量和学校的正常教学活动秩序。随着现在生源数量的不断增长以及各行业竞争日益激烈,为了满足中国社会主义事业发展对高素质人才的需求,各大高校都在尽自己努力,以本校现状及需求作为基础,以科技发展进步作为依托,发展完善一个功能完整,操作简单快捷,高效率,与本校其他教务管理系统良好适应的排课系统与之配套,使教师等教学资源利用达到最大化,为学生提供优良的教育环境。因此,东北财经大学作为一个知名的财经类高校, 要达到适应教育现状及 提高自身教育层次的目标,完善教务排课管理系统显得尤为重要。 系统功能简述排课管理系统需要合理调配各个班级专业所需的专业课程选修必修课程,相应教师,教师及上课班级,尽可能全面的考虑到教师的身体状况,工作条件,家庭状况甚至与学校距离,教师及学生时间,各种课程按重要程度以及学生兴奋点和接受能力合理排序,教师的容量用途,学校集体活动或教师会议等多方面因素,以计算机安排为主,手工调整为辅的方式做出各个院系各个专业各个班级的课程安排。 排课管理系统的目标不仅是对于原有系统进行改进提高,还使课程管理科学化系统化准确化,减少手工录入的误差可能性,方便操作者的随时添加、查询、修改,是统计表格格式规范化统一化,提高工作效率,降低人工成本,提高处理数据能力与速度,提高教学质量,优化学校教务管理系统,为学校的进一步发展提供技术支持与可能性。 系统分析(1)系统分析任务:根据系统设计任务书所确定的范围,并在充分认识原有系统的基础上进行详细的调查分析,通过问题识别、可行性分析、详细调查、系统化分析,进而确定新系统的基本目标和逻辑功能结构,最后完成新系统的逻辑方案设计。 (2)可行性分析和详细调查概述:由于实验的限制,假定建立排课管理信息系统在管理上、技术上、经 济上都是可行的。而详细调查采用一定的调查方法发现了现行系统有以下优缺点: 现有系统优缺点分析 1. 选课分为预选、正选、补退选,一定程度上完善了选课系统。 2. 在选课中,按年级差异区分次序,一定程度上缓解短时间内系统压力,保证了高年级学生顺利完成课业。 3. 学生面临选课时,具有多重选择性,使学生有机会挑选感兴趣的课程,更加人性化设置。 4. 正选是以随机抽选的形式来的话,会更具有公平性。 5?学生可以自主跨专业选择自己喜欢的课,使选课更具有自主性。 6?在登录选课系统时,需要学生输入个人账号信息,保证了学生信息隐私,具有一定的安全性。

性能测试工具LoadRunner实验报告

性能测试工具LoadRunner实验报告 一、概要介绍 1.1 软件性能介绍 1.1.1 软件性能的理解 性能是一种指标,表明软件系统或构件对于其及时性要求的符合程度;同时也是产品的特性,可以用时间来进行度量。 表现为:对用户操作的响应时间;系统可扩展性;并发能力;持续稳定运行等。1.1.2 软件性能的主要技术指标 响应时间:响应时间=呈现时间+系统响应时间 吞吐量:单位时间内系统处理的客户请求数量。(请求数/秒,页面数/秒,访问人数/秒) 并发用户数:业务并发用户数; [注意]系统用户数:系统的用户总数;同时在线用户人数:使用系统过程中同时在线人数达到的最高峰值。 1.2 LoadRunner介绍 LoadRunner是Mercury Interactive的一款性能测试工具,也是目前应用最为广泛的性能测试工具之一。该工具通过模拟上千万用户实施并发负载,实时性能监控的系统行为和性能方式来确认和查找问题。 1.2.1 LoadRunner工具组成 虚拟用户脚本生成器:捕获最终用户业务流程和创建自动性能测试脚本,即我们在以后说的产生测试脚本; 压力产生器:通过运行虚拟用户产生实际的负载; 用户代理:协调不同负载机上虚拟用户,产生步调一致的虚拟用户; 压力调度:根据用户对场景的设置,设置不同脚本的虚拟用户数量;

监视系统:监控主要的性能计数器; 压力结果分析工具:本身不能代替分析人员,但是可以辅助测试结果的分析。 1.2.2 LoadRunner工具原理 代理(Proxy)是客户端和服务器端之间的中介人,LoadRunner就是通过代理方式截获客户端和服务器之间交互的数据流。 1)虚拟用户脚本生成器通过代理方式接收客户端发送的数据包,记录并将其转发给服务器端;接收到从服务器端返回的数据流,记录并返回给客户端。 这样服务器端和客户端都以为在一个真实运行环境中,虚拟脚本生成器能通过这种方式截获数据流;虚拟用户脚本生成器在截获数据流后对其进行了协议层上的处理,最终用脚本函数将数据流交互过程体现为我们容易看懂的脚本语句。 2)压力生成器则是根据脚本内容,产生实际的负载,扮演产生负载的角色。 3)用户代理是运行在负载机上的进程,该进程与产生负载压力的进程或是线程协作,接受调度系统的命令,调度产生负载压力的进程或线程。 4)压力调度是根据用户的场景要求,设置各种不同脚本的虚拟用户数量,设置同步点等。 5)监控系统则可以对数据库、应用服务器、服务器的主要性能计数器进行监控。 6)压力结果分析工具是辅助测试结果分析。 二、LoadRunner测试过程 2.1 计划测试 定义性能测试要求,例如并发用户的数量、典型业务流程和所需响应时间等。 2.2 创建Vuser脚本 将最终用户活动捕获(录制、编写)到脚本中,并对脚本进行修改,调试等。协议类型:取决于服务器端和客户端之间的通信协议;

计算机操作系统实训资料

计算机操作系统实验(训)指导书 学院:电子信息工程学院 班级:13计算机科学与技术本01班 学号: 姓名: 指导教师: 西安思源学院 电子信息工程学院

前言 操作系统是计算机科学与技术专业的一门重要的专业课,是一门实践性很强的技术课程。掌握操作系统原理、熟悉操作系统的使用是各层次计算机软硬件开发人员必不可少的基本技能。操作系统课程讲授理论原理比较容易,而如何指导学生进行实践则相对较难,导致学生不能深刻地理解操作系统的本质,也不能在实际中应用所学的操作系统理论知识及操作系统所提供的功能来解决实际问题。 本实验课程在操作系统原理课程教学中占有重要地位,目的是让学生及时掌握和巩固所学的基本原理和基础理论,加深理解。提高学生自适应能力,为将来使用和设计各类新的操作系统打下基础。 一般来说,学习操作系统分为以下几个层次: 1.学习并掌握操作系统的基本概念及原理,了解操作系统的实现机制。 2.掌握常用操作系统的使用、操作和维护,成为合格的系统管理员。 目前最常用的操作系统主要有UNIX、Linux、Windows等等。 3.通过分析操作系统源代码,掌握修改、编写操作系统的能力。开放源代码的操作系统Linux的出现为我们提供了机遇。 操作系统本身的构造十分复杂,如何在有效的时间内,使学生既能了解其实现原理又能对原理部分进行有效的实践,是操作系统教学一直在探索的内容。本实验课程以Windows和Linux操作系统为主要平台,从基本原理出发,通过几个实验,使学生能对操作系统的基本原理有更深入的了解,为将来从事操作系统方面的研究工作打下一定的基础。

目录 实验一Windows的用户界面 (4) 实验二Windows2003的任务与进程管理器 (6) 实验三Linux使用环境 (10) 实验四Linux进程管理、内存管理、设备管理 (13) 实验五Windows2003内存管理 (16) 实验六目录和文件管理 (19) 实验七用户与组群管理 (21)

操作系统实验报告心得体会

操作系统实验报告心得体会 每一次课程设计度让我学到了在平时课堂不可能学到的东西。所以我对每一次课程设计的机会都非常珍惜。不一定我的课程设计能够完成得有多么完美,但是我总是很投入的去研究去学习。所以在这两周的课设中,熬了2个通宵,生物钟也严重错乱了。但是每完成一个任务我都兴奋不已。一开始任务是任务,到后面任务就成了自己的作品了。总体而言我的课设算是达到了老师的基本要求。总结一下有以下体会。 1、网络真的很强大,用在学习上将是一个非常高效的助手。几乎所有的资料都能够在网上找到。从linux虚拟机的安装,到linux的各种基本命令操作,再到gtk的图形函数,最后到文件系统的详细解析。这些都能在网上找到。也因为这样,整个课程设计下来,我浏览的相关网页已经超过了100个(不完全统计)。当然网上的东西很乱很杂,自己要能够学会筛选。 不能决定对或错的,有个很简单的方法就是去尝试。就拿第二个实验来说,编译内核有很多项小操作,这些小操作错了一项就可能会导致编译的失败,而这又是非常要花时间的,我用的虚拟机,编译一次接近3小时。所以要非常的谨慎,尽量少出差错,节省时间。多找个几个参照资料,相互比较,

慢慢研究,最后才能事半功倍。 2、同学间的讨论,这是很重要的。老师毕竟比较忙。对于课程设计最大的讨论伴侣应该是同学了。能和学长学姐讨论当然再好不过了,没有这个机会的话,和自己班上同学讨论也是能够受益匪浅的。大家都在研究同样的问题,讨论起来,更能够把思路理清楚,相互帮助,可以大大提高效率。 3、敢于攻坚,越是难的问题,越是要有挑战的心理。这样就能够达到废寝忘食的境界。当然这也是不提倡熬夜的,毕竟有了精力才能够打持久战。但是做课设一定要有状态,能够在吃饭,睡觉,上厕所都想着要解决的问题,这样你不成功都难。 4、最好在做课设的过程中能够有记录的习惯,这样在写实验报告时能够比较完整的回忆起中间遇到的各种问题。比如当时我遇到我以前从未遇到的段错误的问题,让我都不知道从何下手。在经过大量的资料查阅之后,我对段错误有了一定的了解,并且能够用相应的办法来解决。 在编程中以下几类做法容易导致段错误,基本是是错误地使用指针引起的 1)访问系统数据区,尤其是往系统保护的内存地址写数据,最常见就是给一个指针以0地址 2)内存越界(数组越界,变量类型不一致等) 访问到不属于你的内存区域

PC性能评测实验报告

计算机体系结构课程实验报告 PC性能测试实验报告 学号: 姓名:张俊阳 班级:计科1302 题目1:PC性能测试软件 请在网上搜索并下载一个PC机性能评测软件(比如:可在百度上输入“PC 性能benchmark”,进行搜索并下载,安装),并对你自己的电脑和机房电脑的性能进行测试。并加以比较。 实验过程及结果: 我的电脑:

机房电脑:

综上分析:分析pcbenchmark所得数据为电脑的current performance与其potential performance的比值,值大表明计算机目前运行良好,性能好,由测试结果数据可得比较出机房的电脑当前运行的性能更好。分析鲁大师性能测试结果:我的电脑得分148588机房电脑得分71298,通过分析我们可以得出CPU占总得分的比重最大,表明了其对计算机性能的影响是最大的,其次显卡性能和内存性能也很关键,另外机房的电脑显卡性能较弱,所以拉低了整体得分,我的电脑各项得分均超过机房电脑,可以得出我的电脑性能更好的结论。 题目2:toy benchmark的编写并测试 可用C语言编写一个程序(10-100行语句),该程序包括两个部分,一个部分主要执行整数操作,另一个部分主要执行浮点操作,两个部分执行的频率(频率整数,频率浮点)可调整。请在你的计算机或者在机房计算机上,以(,),(,),(,)的频率运行你编写的程序,并算出三种情况下的加权平均运行时间。 实验过程及结果: #include<> #include<> int main() {

int x, y, a; double b; clock_t start, end; printf("请输入整数运算与浮点数运算次数(单位亿次)\n"); scanf("%d%d", &x, &y); /*控制运行频率*/ start = clock(); for (int i = 0; i

决策支持系统DSS实验报告

学生实验报告书 实验课程名称决策支持系统 开课学院 指导教师姓名 学生姓名 学生专业班级

实验报告填写说明 1.设计性、综合性实验必须填写实验报告,验证、演示性实验可不写实验报告; 2.老师在指导学生实验时,必须按实验大纲的要求,逐项完成各项实验; 3.每项实验依据其实验内容的多少,可安排在一个或多个时间段内完成,但每项实验只须填写一份实验报告;4.教师在每份实验报告后均须给出实验成绩,及简短的评语以说明评分的依据; 5.课程实验的所有实验项目结束后,学生应将每项实验按实验先后次序及封面一起装订成册,交实验指导老师;6.实验指导老师综合学生各项实验的成绩,给出相关课程实验环节的总评分,并记入课程总成绩中。

推的基本假设是未来系过去和现在连续发展的结果。趋势外推法的基本理论是:决定事物过去发展的因素,在很大程度上也决定该事物未来的发展,其变化,不会太大;事物发展过程一般都是渐进式的变化,而不是跳跃式的变化掌握事物的发展规律,依据这种规律推导,就可以预测出它的未来趋势和状态。 a)二次曲线模型预测法。在市场上,某些产品的销售并不一定按同一趋势发展, 有可能出现先上升而后下降的趋势;也有可能出现先下降,当下降到一定程度 后又迅速上升的趋势。二次曲线模型在图形上正好表现出了上述的两种趋势, 利用历史资料,拟合成二次曲线模型,这一模型的应用已经成为市场预测中的 一种普遍方法。 b)在一定时期内,有些产品的销售量往往表现为随着时间的变化按同一增长率不 断增加或不断减少。指数曲线预测法正是针对这种产品的销售变化趋势,利用 其时间序列资料,拟合成指数曲线,建立模型并进行预测的一种方法。 5)季节周期法。 许多产品的市场需求往往有季节性。例如,服装、空调和冷饮等。对于这类产品市场需求的预测,需要考虑季节波动的因素。同季平均法是分析、预测季节波动一种最常用、最简单的方法,主要适用于受季节波动和不规则波动影响、而无明显的趋势变动规律的产品市场需求预测。 2 功能分析 市场预测支持系统的软件结构,应充分考虑市场需求预测所涉及到的市场环境复杂、预测种类繁多及不确定影响因素多等特点,许多影响因素的作用很难用定量的方法确定,需要发挥人的主观能动性和判断力。 市场预测支持系统的功能结构包括几个子系统,如图2-1所示。 图2- 1 市场预测支持系统的功能结构 3 逻辑结构分析 根据产品市场需求预测的一般过程和预测支持系统的功能结构,系统的市场需求预测过程逻辑结构可由预测产品及其相关资料数据调入、预测模型选择、最佳预测模型确定及预测值的分析、修正等模块组成,如图3-1所示。

操作系统实验报告

操作系统实验报告 实验名称: 系统的引导 所在班级: 指导老师: 老师 实验日期: 2014年3 月29 日

一、实验目的 ◆熟悉hit-oslab实验环境; ◆建立对操作系统引导过程的深入认识; ◆掌握操作系统的基本开发过程; ◆能对操作系统代码进行简单的控制,揭开操作系统的神秘面纱。 二、实验容 1. 阅读《Linux核完全注释》的第6章引导启动程序,对计算机和Linux 0.11的引导过程进行初步的了解。 2. 按照下面的要求改写0.11的引导程序bootsect.s。 3. 有兴趣同学可以做做进入保护模式前的设置程序setup.s。 4. 修改build.c,以便可以使用make BootImage命令 5. 改写bootsect.s主要完成如下功能: bootsect.s能在屏幕上打印一段提示信息XXX is booting...,其中XXX是你给自己的操作系统起的名字,例如LZJos、Sunix等。 6. 改写setup.s主要完成如下功能: bootsect.s能完成setup.s的载入,并跳转到setup.s开始地址执行。而setup.s 向屏幕输出一行"Now we are in SETUP"。setup.s能获取至少一个基本的硬件参数(如存参数、显卡参数、硬盘参数等),将其存放在存的特定地址,并输出到屏幕上。setup.s不再加载Linux核,保持上述信息显示在屏幕上即可。 三、实验环境

本实验使用的系统是windows系统或者是Linux系统,需要的材料是osexp。 四、实验步骤 1. 修改bootsect.s中的提示信息及相关代码; 到osexp\Linux-0.11\boot目录下会看到图1所示的三个文件夹,使用UtraEdit 打开该文件。将文档中的98行的mov cx,#24修改为mov cx,#80。同时修改文档中的第246行为图2所示的情形。 图1图2 图3 2. 在目录linux-0.11\boot下,分别用命令as86 -0 -a -o bootsect.obootsect.s和 ld86 -0 -s -obootsectbootsect.o编译和bootsect.s,生成bootsect文件; 在\osexp目录下点击MinGW32.bat依此输入下面的命令: cd linux-0.11 cd boot as86 -0 -a -o bootsect.obootsect.s ld86 -0 -s -o bootsectbootsect.o

流量计性能测定实验报告doc

流量计性能测定实验报告 篇一:孔板流量计性能测定实验数据记录及处理篇二:实验3 流量计性能测定实验 实验3 流量计性能测定实验 一、实验目的 ⒈了解几种常用流量计的构造、工作原理和主要特点。 ⒉掌握流量计的标定方法(例如标准流量计法)。 ⒊了解节流式流量计流量系数C随雷诺数Re的变化规律,流量系数C的确定方法。 ⒋学习合理选择坐标系的方法。 二、实验内容 ⒈通过实验室实物和图像,了解孔板、1/4园喷嘴、文丘里及涡轮流量计的构造及工作原理。 ⒉测定节流式流量计(孔板或1/4园喷嘴或文丘里)的流量标定曲线。 ⒊测定节流式流量计的雷诺数Re和流量系数C的关系。 三、实验原理 流体通过节流式流量计时在流量计上、下游两取压口之间产生压强差,它与流量的关系为: 式中: 被测流体(水)的体积流量,m3/s; 流量系数,无因次;

流量计节流孔截面积,m2; 流量计上、下游两取压口之间的压强差,Pa ; 被测流体(水)的密度,kg/m3 。 用涡轮流量计和转子流量计作为标准流量计来测量流量VS。每一 个流量在压差计上都有一对应的读数,将压差计读数△P和流量Vs绘制成一条曲线,即流量标定曲线。同时用上式整理数据可进一步得到C—Re关系曲线。 四、实验装置 该实验与流体阻力测定实验、离心泵性能测定实验共用图1所示的实验装置流程图。 ⒈本实验共有六套装置,流程为:A→B(C→D)→E→F→G→I 。 ⒉以精度0.5级的涡轮流量计作为标准流量计,测取被测流量计流量(小于2m3/h流量时,用转子流量计测取)。 ⒊压差测量:用第一路差压变送器直接读取。 图1 流动过程综合实验流程图 ⑴—离心泵;⑵—大流量调节阀;⑶—小流量调节阀; ⑷—被标定流量计;⑸—转子流量计;⑹—倒U管;⑺⑻⑽—数显仪表;⑼—涡轮流量计;⑾—真空表;⑿—流量计平衡阀;⒁—光滑管平衡阀;⒃—粗糙管平衡阀;⒀—回流阀;⒂—压力表;⒄—水箱;⒅—排水阀;⒆—闸阀;⒇—

人事管理系统实验报告

摘要 人事管理是企业管理中的一个重要内容,随着时代的进步,企业也逐渐变得庞大起来。如何管理好企业内部员工的信息,成为企业管理中的一个大问题。在这种情况下,开发一个人事管理系统就显得非常必要。本系统结合公司实际的人事、制度,经过实际的需求分析,采用功能强大的Visual Basic6.0作为开发工具而开发出来的单机版人事管人事理系统。整个系统从符合操作简便、界面友好、灵活、实用、安全的要求出发,本企业人事管理系统具有如下功能:员工基本信息的录入、修改、查询、删除模块,员工假条信息录入、修改、查询、删除模块,员工工资信息的录入,计算,查询,以及系统用户的设置以及系统的维护功能。为企业人事管理提供信息咨询,信息检索,信息存取等服务,基本上能够满足现代企业对人事管理的需要。本文系运用规范研究方法进行的专题研究。全文分六个部分:第一部分,是本课题的来源和课题研究的目的和意义;第二部分,是开发工具的选择,本系统主要运用的是Visual Basic 6.0作为系统前台应用程序开发工具,Access作为后台数据库;第三部分,是系统的需求分析,主要是人事管理系统的需求分析;第四部分,是系统分析与实现,包括系统功能模块的设计和数据库的设计;第五部分,是代码的设计与实现,系统事件运行的主要代码;第六部分,是系统的实现,最后,是软件的测试 关键词:人事管理系统设计SQL Server 2005数据库Visual Basic 6.0 维护测试

第一章绪论 1.1 引言 随着计算机技术的飞速发展,计算机在企业管理中应用的普及,利用计算机实现企业人事管理势在必行。人力资源管理是结合公司实际的人事、制度,经过实际的需求分析,采用功能强大的Visual Basic6.0作为开发工具而开发出来的单机版人事管人事理系统。整个系统从符合操作简便、界面友好、灵活、实用、安全的要求出发,本企业人事管理系统具有如下功能:员工基本信息的录入、修改、查询、删除模块,员工假条信息录入、修改、查询、删除模块,员工工资信息的录入,计算,查询,以及系统用户的设置以及系统的维护功能。为企业人事管理提供信息咨询,信息检索,信息存取等服务,基本上能够满足现代企业对人事管理的需要。 1.2 项目背景 本课题基于我国企业管理信息化建设现状,结合在实际工作中所遇到的问题和收获,对企业人事管理系统在设计开发等方面进行研究,重点研究系统开发中所采用的软硬件平台规范、数据库结构设计、开发工具的选择与使用,目的是从技术手段的角度阐述如何实现企业从传统经营管理模式向信息化管理模式转变的过程,以及人事管理系统在企业管理信息化中所起到的重要作用。本课题的开发主要是要花费相当多的人力和时间,虽然开发出来的软件可能离具体产生效益还有一定的距离。但是,出于通过毕业设计来丰富自己的专业知识,并从长远利益来考虑,本课题的设计开发还是具有相当大的经济可行性的。 1.3 实现意义 现代信息技术的发展,在改变着我们的生活方式的同时,也改变着我们的工作方式,使传统意义上的人事管理的形式和内涵都在发生着根本性的变化。在过去,一支笔和一张绘图桌,可能就是进行办公的全部工具。今天,电脑、扫描仪和打印机等,已基本取代了旧的办公用具。如今,人事管理己完全可以通过电脑进行,并在计算机辅助下准确快速地完成许多复杂的工作。这些都大大地缩短管理的时间。而今天,人事管理的内容己经转变为对更为广泛的系统价值的追求。信息管理,如今已是一个热门话题,它已为许

需求分析实验报告

需求分析实验报告 沙漠绿洲书店是福州大学附近最大的民营书店。长期以来,城市沙漠书店为福大学子乃至整个城市读者提供了不少的便利。在2005年,该书店扩大了书店的面积,大大提高了库存量,使得读者可以购买到更多的书籍。但是,原来的图书销售已经渐渐无法适应市场的发展,因为图书销售的顾客群慢慢固定。为了进一步扩大市场,书店决定开发一套新的销售系统,以自动化的方式进行图书的销售以及管理。书店决定开通网上书店,面向全国进行网上售书,进一步扩大消费人群,同时,保留以往的电话售书的方式,为不在该市的消费者提供便利。

在图书管理方面,由于图书的数量年年增长,出现了许多新的消费热点,读者对图书的选择性有了一些变化。原来的系统已经无法体现这些变化,也无法满足企业制定销售战略。 在书店内部,由于面积的扩大,使得原来的导购小姐无法满足书店的需要,同时,书店也有意尝试通过在书店的不同位置放置可供读者自己查询的电脑来满足读者的需要。 在书店的规划方面,原来的系统只能够描述销售及库存的情况,对于整个书店的财务,会计等方面并没有涉及,这对于书店进一步扩大规模是不利的。宁因此,书店决定开发一套新的图书销售系统。 书店的新战略规划:书店的战略规划是要建立更多的客户群以扩大书店的发展规模,进而扩大市场。 一个战略是为外地用户扩大电话定购能力,另一个战略是要通过Internet 增加直接客户市场销路。新系统是一个能为企业的快速增长进行计划并准备加强支持客户交互作用的系统。 战略系统计划项目产生了技术结构计划,应用程序结构计划和实施的时间帧。 1,技术结构计划: 1,把商业应用软件转移到客户-服务器结构来,为数据库和电信功能保留了主机,以允许其容量增加及快速发展。 2,向在Internet 上经营商业转移,首先要有一个Web 站点,然后要有链 接到内部系统和数据库的一些客户和供应商的事务处理支持。 3,预期最后向内联网解决方案发展 2,应用程序结构计划; 1,财务/会计:带客户-服务器的软件包解决方案 2 ,人力资源:一个软件包解决方案,最大限度地使员工访问人力资源表,过程和利益信息。 3,客户支持系统:设计一个订单处理和执行系统,综合三方面的订单 处理需求:通过WEB 邮购,电话定购和直接客户市场销售。 4,库存管理系统:设计一个商品销售和库存系统,可以部分提供给客户以便查询 5,零售店系统:把商店管理系统与库存管理系统集成起来 3,实施应用结构计划的时间帧 1,首先,实施客户支持系统。 2,在客户支持系统启动后立即开始实施库存管理系统。 3,把零售店系统与库存管理系统集成起来 4,更新人力资源系统和财务/会计系统 1,系统分析 根据书店的要求,可以确定系统相关者:

操作系统实验报告

操作系统实验报告 Document number:NOCG-YUNOO-BUYTT-UU986-1986UT

许昌学院 《操作系统》实验报告书学号: 姓名:闫金科 班级:14物联网工程 成绩: 2016年02月

实验一Linux的安装与配置 一、实验目的 1.熟悉Linux系统的基本概念,比如Linux发行版、宏内核、微内核等。 2.掌握Linux系统的安装和配置过程,初步掌握Linux系统的启动和退出方 法。 3.熟悉Linux系统的文件系统结构,了解Linux常用文件夹的作用。 二、实验内容 1.从网络上下载VMware软件和两个不同Linux发行版镜像文件。 2.安装VMware虚拟机软件。 3.在VMware中利用第一个镜像文件完成第一个Linux的安装,期间完成网络 信息、用户信息、文件系统和硬盘分区等配置。 4.在VMware中利用第二个镜像文件完成第二个Linux的安装,并通过LILO或 者GRUB解决两个操作系统选择启动的问题。 5.启动Linux系统,打开文件浏览器查看Linux系统的文件结构,并列举出 Linux常用目录的作用。 三、实验过程及结果 1、启动VMware,点击新建Linux虚拟机,如图所示: 2、点击下一步,选择经典型,点击下一步在选择客户机页面选择 Linux,版本选择RedHatEnterpriseLinux5,如图所示: 3、点击下一步创建虚拟机名称以及所要安装的位置,如图所示: 4、点击下一步,磁盘容量填一个合适大小,此处选择默认值大小 10GB,如图所示: 5、点击完成,点击编辑虚拟机设置,选择硬件选项中的CD-ROM (IDE...)选项,在右侧连接中选择“使用ISO镜像(I)”选项,点 击“浏览”,找到Linux的镜像文件,如图所示:

管理信息系统实验报告答案要点

实验

3、分组讨论并确定小组管理信息系统的题目,并给出题目的具体功能和要求。心得体 会:(可以从以下几个方面来总结:你在上机过程中遇到了哪些难题?你是怎么克服的?你的收获有哪些?你有什么没有解决的问题等) 实验

书E 选脚 ■1. 订盼蔚豆 建立学生表 则剩余不够的部分还须向其他书商订购,同时 在订购信息中添加该教材在另一个书商中订购的信息。 1、请画出上述内容的 E-R 图。 2、把E-R 图转换成合理的关系模式: 学 生(学号,姓名,性别,院系,年龄) 教 材(书号,书名,出版社,出版日期, 书商(商号,电话,联系人,商名) 山膿E 軀 nanie = ^Buy_Booksdb , j filename - J E: \Buy_Bcoksdb* mdf', size = 5j maxsize - 20, f llegrovrth = 1 ) log on ( rtajne-' Buy^Bookslog 1、 f ilenajue~, E:\Buy_Bcakslog. ldf'. size=2_, maxsize! 8, fllegrawth-1 ] Go 口. ■号, 3、在SQL Serve r (或Access )中建立数据库和表(截图) 建立数据库: create database Buy Books on primary 主键为学号 主编) 主键为书号 主键为商号 ' —i r - ! 見意「腿 性别 商号 1 ---------- 戟条人

CREATE TABLE St udent ( Sno char 9- primary key. Sname char (20 i unique, Ssex char (2), Sage smallint. Sdept char (2Q 1 ) f -f 建立教材表 CREATE TABLE Books ( Eno char 9) primary key Btitle char (40), Bauthor char ^20), Bpress char 40 Bdate datetime ): 建立书商表 -CREATE TABLE SSellcr BSno char 9[ priinaty key, BSnane char 201 . Tel char 30;. Person char (201 feedback char '40 1 鼻 /*书号* /車书名*/ 八作者于/ /廉也版社康/ " 由版日期柑

操作系统实验报告

操作系统实验报告 银行家算法 班级:计算机()班 姓名:李君益 学号:(号) 提交日期: 指导老师: 林穗 一、设计题目 加深了解有关资源申请、避免死锁等概念,并体会和了解死锁和避免死锁的具体实施方法。 要求编写和调试一个系统动态分配资源的简单模拟程序,观察死锁产生的条件,并采用银行家算法,有效的防止和避免死锁的发生。 二、设计要求

内容: 编制银行家算法通用程序,并检测思考题中所给状态的安全性。 要求: (1)下列状态是否安全?(三个进程共享个同类资源) 进程已分配资源数最大需求数 (状态) (状态) (2)考虑下列系统状态 分配矩阵最大需求矩阵可用资源矩阵 问系统是否安全?若安全就给出所有的安全序列。若进程请求(),可否立即分配? 三、设计分析 一.关于操作系统的死锁 .死锁的产生 计算机系统中有许多独占资源,他们在任一时刻只能被一个进程使用,如磁带机,绘图仪等独占型外围设备,或进程表,临界区等软件资源。两个进程同时向一台打印机输出将导致一片混乱,两个进程同时进入临界区将导致数据库错误乃至程序崩溃。正因为这些原因,所有操作系统都具有授权一个进程独立访问某一辞源的能力。一个进程需要使用独占型资源必须通过以下的次序: ●申请资源 ●使用资源 ●归还资源 若申请施资源不可用,则申请进程进入等待状态。对于不同的独占资源,进程等待的方式是有差别的,如申请打印机资源、临界区资源时,申请失败将一位这阻塞申请进程;而申请打开文件文件资源时,申请失败将返回一个错误码,由申请进程等待一段时间之后重试。只得指出的是,不同的操作系统对于同一种资源采取的等待方式也是有差异的。 在许多应用中,一个进程需要独占访问多个资源,而操作系统允许多个进程并发执行共享系统资源时,此时可能会出现进程永远被阻塞的现象。这种现象称为“死锁”。 2.死锁的定义 一组进程处于死锁状态是指:如果在一个进程集合中的每个进程都在等待只能由该集合中的其他一个进程才能引发的时间,则称一组进程或系统此时发生了死锁。 .死锁的防止 .死锁产生的条件: ●互斥条件

软件测试实验报告LoadRunner的使用

南昌大学软件学院 实验报告 实验名称 LoadRunner的使用 实验地点 实验日期 指导教师 学生班级 学生姓名 学生学号 提交日期 LoadRunner简介: LoadRunner 是一种适用于各种体系架构的自动负载测试工具,它能预测系统行为并优化系统性能。LoadRunner 的测试对象是整个企业的系统,它通过模拟实际用户的操作行为和实行实时性能监测,来帮助您更快的查找和发现问题。此外,LoadRunner 能支持广范的协议和技术,为您的特殊环境提供特殊的解决方案。LoadRunner是目前应用最为广泛的性能测试工具之一。 一、实验目的

1. 熟练LoadRunner的工具组成和工具原理。 2. 熟练使用LoadRunner进行Web系统测试和压力负载测试。 3. 掌握LoadRunner测试流程。 二、实验设备 PC机:清华同方电脑 操作系统:windows 7 实用工具:WPS Office,LoadRunner8.0工具,IE9 三、实验内容 (1)、熟悉LoadRunner的工具组成和工具原理 1.LoadRunner工具组成 虚拟用户脚本生成器:捕获最终用户业务流程和创建自动性能测试脚本,即我们在以后说的产生测试脚本; 压力产生器:通过运行虚拟用户产生实际的负载; 用户代理:协调不同负载机上虚拟用户,产生步调一致的虚拟用户;压力调度:根据用户对场景的设置,设置不同脚本的虚拟用户数量;监视系统:监控主要的性能计数器; 压力结果分析工具:本身不能代替分析人员,但是可以辅助测试结果的分析。 2.LoadRunner工具原理 代理(Proxy)是客户端和服务器端之间的中介人,LoadRunner 就是通过代理方式截获客户端和服务器之间交互的数据流。 ①虚拟用户脚本生成器通过代理方式接收客户端发送的数据包,

c#学生信息管理系统实验报告

摘要 本文描述的是基于Windows环境的学生信息管理系统,主要功能模块包括:学生信查询,学生信息管理,学生成绩录入,主要工具Microsoft Visual Studio 2005 设计窗体, SQL server2005建立数据库,实现学校信息管理的各个功能。 本程序提供了管理员权限和用户权限,其中管理员可以对信息进行管理,而用户只可以对信息进行查询,以确保程序的安全性。 本篇报告介绍一个学生信息管理系统的从分析到设计最后到开发的全过程为,给出了学生信息管理系统的设计和技术实现的过程,特别在细节上分析功能和函数的实现思想。涉及到学生信息管理的基本功能在本报告中都有相应的描述。 一、需求分析 1系统目标 1 学生信息、课程信息、成绩信息的增加、删除、修改、查询 2 分别设置管理员权限和用户权限 2功能需求分析 本系统的功能需求分析如下: (1)学生信息查询:学生可以根据学号、姓名等进行模糊查询. (2)学生信息管理:主要是用于学生信息更新、插入、删除; (3)学生成绩录入:用于学生成绩管理,录入学生成绩,也可以更新;3性能需求分析 (1)登录、用户界面需求:简洁、易懂、易用、友好的用户界面。 (2)安全保密性需求:只有凭借用户名和密码登陆系统,才能进行信息的管 理等。 二总体设计 1设计概述 根据需求把整个系统分化成不同的模块,每个模块完成一个特定的子功能。

把这些模块结合起来组成一个整体。逐一实现各个功能。2系统数据库的设计 1.所用到的数据库中的表信息: adminmsg(管理员表) 列名字段类型长度主/ 外键对应中文名 Userid int4编号Username Nvarchar50姓名Password Nvarchar50密码user(用户表) 列名字段类型长度主/ 外键对应中文名 Userid int4编号Username Nvarchar50姓名Password Nvarchar50密码Studentmsg(学生信息表) 列名字段类型长度主/ 外键对应中文名 Studentid int4Y 学号Studentname Nvarchar 50 姓名Sex Byte 1 性别department Nvarchar 50 所在系speciality Nvarchar50专业Coursemsg(课程信息表) 列名字段类型长度主/ 外键对应中文名 courseid int4Y 课程号coursename Nvarchar 50 课程名称required Nvarchar 10 性质credit int 4 学分Scoremsg(成绩表) 列名字段类型长度主/ 外键对应中文名 Studentno int4Y 学号courseid int 4 Y 课程号score int 4 成绩

相关文档
最新文档