当前位置:文档之家› 安徽工业大学java实验报告

安徽工业大学java实验报告

安徽工业大学java实验报告
安徽工业大学java实验报告

JAVA实验报告

实验1:利用JAVA反射技术分析类结构

实验内容:运行程序,指定一个要分析的类名称,如https://www.doczj.com/doc/b712391283.html,ng.Double,输出类中声明的属性、方法、构造函数等。

结果分析:

1.分析程序运行时的输出结果。

输出的结果中显示了被分析类的方法与变量,包括这些方法与变量的修饰符

2.分析与JAVA反射技术相关的几个类的作用:

https://www.doczj.com/doc/b712391283.html,ng.reflect.Constructor;

Constructor 提供关于类的单个构造方法的信息以及对它的访问权限。

https://www.doczj.com/doc/b712391283.html,ng.reflect.Field;

Field 提供有关类或接口的单个字段的信息,以及对它的动态访问权限。反射的字段可能是一个类(静态)字段或实例字段。

https://www.doczj.com/doc/b712391283.html,ng.reflect.Method;

Method 提供关于类或接口上单独某个方法(以及如何访问该方法)的信息。所反映的方法可能是类方法或实例方法(包括抽象方法)。

https://www.doczj.com/doc/b712391283.html,ng.reflect.Modifier;

Modifier 类提供了 static 方法和常量,对类和成员访问修饰符进行解码。修饰符集被表示为整数,用不同的位位置 (bit position) 表示不同的修饰符。

定义一个自己的类,如Employee类,定义几个属性、方法、构造函数,要求成员的属性包含Public、Private、Protected、Static等。运行该程序分析一下你自己定义的类结构。

class Employee{

public String name ;

public String id;

private int age ;

static protected int salary =100;

Employee()

}

private void Employee(String xm,String bh,int nl)

{

name=xm;

id=bh;

age=nl;

}

protected double Employee(int gz)

{

return gz+salary;

}

}分析:

先调用一个无参数的构造函数构造,然后再调用该构造函数private void Employee(String xm,String bh,int nl)构造一个对象,最后调用构造函数计算总的薪水。

实验2:利用JAVA反射技术分析对象结构

实验内容:运行示例程序,分析Integer数组对象的结构;改写程序分析一下自定义的类对象,如Employee类。

源代码:

public abstract class People {

double salary;

String name;

int year,mouth,day;

public abstract double getSalary();

public abstract void setSalary(double salary);

}

class Employee extends People{

Employee(String name,double salary,int year,int mouth,int day){

this.salary = salary;

https://www.doczj.com/doc/b712391283.html, = name;

this.year = year;

this.mouth = mouth;

this.day = day;

}

Employee(){

}

public double getSalary(){

return salary;

public void setSalary(double salary){

this.salary = salary;

}

}

class Manager extends People{

private double bonus;

Manager(String name,double salary,int year,int mouth,int day){

this.salary = salary;

https://www.doczj.com/doc/b712391283.html, = name;

this.year = year;

this.mouth = mouth;

this.day = day;

bonus= 0;

}

public double getSalary(){

return salary+bonus;

}

public void setSalary(double salary){

this.salary = salary;

}

public void setBonus(double bonus){

this.bonus = bonus;

}

}

分析:

代码中Methodl类就相当于一个指向类中方法的指针,Class类通过getMethod方法获取这个Method类,之后Method类的对象可以通过invoke方法来调用这个方法。

实验4:利用TreeSet实现集合元素排序

独立编程实现如下功能:定义一个自己的类,如Employee类,定义几个属性(如name,salary,hiredate等),随机构造10个Employee类对象,添加到三个不同的TreeSet中,要求三个TreeSet输出的Employee对象分别按照姓名,薪水,雇佣日期排序。

源代码:

import java.util.*;

class NameComparator implements Comparator {

public int compare(Employee a, Employee b)

{

String nameA = a.getname();

String nameB = b.getname();

return https://www.doczj.com/doc/b712391283.html,pareTo(nameB);

}

}

class DataComparator implements Comparator { public int compare(Employee a, Employee b)

{

String dateA = a.getdate();

String dateB = b.getdate();

return https://www.doczj.com/doc/b712391283.html,pareTo(dateB);

}

}

class Employee implements Comparable{

int salary=0;

String name;

String date;

Employee(String n,int s,String i){

salary=s;name=n;date=i;

}

public String getname() {

return name;

}

public String getdate(){

return date;

}

@Override

public int compareTo(Object o) {

// TODO Auto-generated method stub

Employee em=(Employee)o;

return (this.salary-em.salary);

}

}

public class sy4{

public static void main(String[] args) {

TreeSetmytree=new TreeSet();

Employee em0,em1,em2,em3,em4,em5,em6,em7,em8,em9;

em0=new Employee("张三",1500,"1231");

em1=new Employee("李四",1000,"1201");

em2=new Employee("王武",1001,"1202");

em3=new Employee("流云",1002,"1203");

em4=new Employee("张杰",1200,"1101");

em5=new Employee("华荣",1300,"1025");

em6=new Employee("郭靖",1100,"1110");

em7=new Employee("黄蓉",1150,"1205");

em8=new Employee("黄蕾",2500,"1120");

em9=new Employee("马凯",1320,"1221");

mytree.add(em0);

mytree.add(em1);

mytree.add(em2);

mytree.add(em3);

mytree.add(em4);

mytree.add(em5);

mytree.add(em6);

mytree.add(em7);

mytree.add(em8);

mytree.add(em9);

System.out.println("按工资排序");

System.out.println();

Iteratores=mytree.iterator();

while(es.hasNext()){

Employee ems=es.next();

System.out.println(" "+https://www.doczj.com/doc/b712391283.html, +" "+ems.date+" "+ems.salary); }

NameComparator comp = new NameComparator();

SortedSet sortByname = new TreeSet(comp); sortByname.add(em0);

sortByname.add(em1);

sortByname.add(em2);

sortByname.add(em3);

sortByname.add(em4);

sortByname.add(em5);

sortByname.add(em6);

sortByname.add(em7);

sortByname.add(em8);

sortByname.add(em9);

System.out.println();

System.out.println("按姓名排序");

Iteratoren=sortByname.iterator();

while(en.hasNext()){

Employee emn=en.next();

System.out.println(" "+https://www.doczj.com/doc/b712391283.html,+" "+emn.date+" "+emn.salary); }

DataComparator comp1 = new DataComparator();

SortedSet sortBydate = new TreeSet(comp1); sortBydate.add(em0);

sortBydate.add(em1);

sortBydate.add(em2);

sortBydate.add(em3);

sortBydate.add(em4);

sortBydate.add(em5);

sortBydate.add(em6);

sortBydate.add(em7);

sortBydate.add(em8);

sortBydate.add(em9);

System.out.println();

System.out.println("按雇佣日期排序");

Iteratorda=sortByname.iterator();

while(da.hasNext()){

Employee dat=da.next();

System.out.println(" "+https://www.doczj.com/doc/b712391283.html,+" "+dat.date+" "+dat.salary);

}

}

}

运行结果:

实验5:多线程同步之团结就是力量实验

问题描述:

四名学生值日,教室里共有500套桌椅需要擦净,四人没有进行明确分工,能者多劳,团结一致,最终将教室里的桌椅擦得干干净净。

程序要求:

编写多线程程序,为每名学生创建单独的线程,以桌椅为操作对象,要尽量做到分工合理,并记录每人负责的桌椅数,擦完500套桌椅后即退出应用程序。

要点:

1、每个学生对象都是同一个线程类对象,如何体现能者多劳?

2、多个学生线程在劳动时要么擦桌子,要么擦椅子,如何实现对共享的数据(500

套桌椅)同步访问,如果学生甲在擦桌子,是否允许学生乙擦椅子?

源程序:

import java.util.Random;

public class Cooperation {

public static void main(String[] args) {

WorkStudent2 ws1 = new WorkStudent2(1, 10);

WorkStudent2 ws2 = new WorkStudent2(2, 20);

WorkStudent2 ws3 = new WorkStudent2(3, 30);

WorkStudent2 ws4 = new WorkStudent2(4, 40);

new Thread(ws1).start();

new Thread(ws2).start();

new Thread(ws3).start();

new Thread(ws4).start();

}

}

class ZhuoYi{

int[] desk={0,0,0,0,0};

int[] chair={0,0,0,0,0};

private int chairCount = 500;

private int deskCount = 500;

public synchronized Boolean distribute(int id,long sleeptime){

int chairs = 1;

int desks = 1;

Random rdm = new Random(System.currentTimeMillis());

if(rdm.nextInt() % 2 ==0){

if(chairCount > 0)

{

chairs = chairs - 1;

while(chairs<0)

{

try

{

wait();

}catch(InterruptedException e)

{

}

}

System.out.println("Student "+id+": wiping desk "+chairCount--);

chair[id]+=1;

chairs = chairs + 1;

notifyAll();

}

}

else

{

if(deskCount > 0)

{

desks = desks - 1;

while(desks<0)

{

try

{

wait();

}catch(InterruptedException e)

{

}

}

System.out.println("Student "+id+": wiping desk "+deskCount--);

desk[id]+=1;

desks = desks + 1;

notifyAll();

}

}

if(chairCount == 0&&deskCount == 0)

return true;

else

return false;

}

}

class WorkStudent2 implements Runnable {

private long sleeptime;

private int id;

static ZhuoYi dc = new ZhuoYi();

public WorkStudent2(int id,long time){

super();

this.id=id;

this.sleeptime=time;

}

public void run(){

while(!dc.distribute(id, sleeptime))

{

try

{

Thread.sleep(sleeptime);

}

catch(Exception e)

{

}

};

System.out.println("Result: Student "+id+" wiped "+dc.desk[id]+" desks and"+dc.chair[id]+" chairs.");

}

}

运行结果(运行结果过长,只截取部分):

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

JA V A程序设计实验报告 学号: 姓名: 班级: 实验、Java课程设计--------学生信息管理系统

一、实验目的 1.掌握Java基本语法 2.理解面向对象编程特点 3.理解Java I/O编程 4.掌握Java图形界面编程 5.掌握Java与不同数据库进行连接 二、预习内容 Java的基本语法知识、类和对象、Java Swing图形界面编程、Java I/O处理以及Java与数据库连接操作 三、实验设备与环境 通过局域网互联,安装Windows 2000/XP操作系统环境的JDK 1.6,my eclipse 或者EditPlus编程工具。并安装MySQL数据库 四、实验内容 编写并调试运行Java程序,进行设计,掌握Java开发的基础。 五、实验任务 设计学生信息管理系统。要求包括 1. 登陆模块:设立超级管理员权限,用户可以根据不同的权限登陆系统,超级管理员可以对学生信息进行增、删、改、查操作。而普通用户只可以查找学生信息。 2. 包括学生添加信息模块、学生信息删除模块、学生信息修改模块和学生信息查询模块 3.对于管理员,可以对管理员进行添加、删除以及修改密码等操作。 六、实验报告(要求独立完成参考程序的代码、编译、调试与运行) 1、程序清单: 1.1程序模块清单 package Pan; import java.awt.event.ItemListener; import javax.swing.*; import https://www.doczj.com/doc/b712391283.html,ponent;

import java.awt.BorderLayout; import java.awt.FlowLayout; import java.awt.event.InputEvent; import java.awt.event.ItemListener; import java.awt.event.KeyEvent; import java.awt.event.ActionListener; import java.awt.event.ActionEvent; import java.util.*; import java.awt.Color; import java.text.DecimalFormat; import java.sql.*; import java.sql.Date; import java.awt.*; import java.util.Vector; public class Res { /** * @param args */ public static void main(String[] args) {

金工实习报告锻工

金工实习报告锻工 篇一:金工实习报告(锻造部分) 第三章锻压 一、锻压概述 (一)目的和要求 1.了解锻造实习的意义、内容、安排、要求和安全技术。 2,了解锻造生产的种类、生产工艺过程、特点和应用,熟悉{场地。 3.了解加热的目的和方法、加热设备、操作方法、碳钢的锻:度范围,以及锻件的冷却方法。 4.熟悉有关锻打操作要领,了解锻造工具。 (二)实习操作 1.加热炉操作。 2。锻造工具的识别。 3.锻打产品示范。 (三)实习报告 1.锻造生产方式或种类有哪些各适合生产什么锻件 答: 自由锻:适合单件或小批量零件,或大型锻件。 模锻:适合大批量小型零件。 胎模锻:适合中批量锻件。 2.锻造生产的锻件有何显著特点

答:具有优良的综合力学性能。 3.锻件加热有哪几种简述其加热原理和特点。 答:(1)、火焰加热:利用燃料在炉内产生的高温液体通过对流辐射把热能传给坯料表面,并由表面向中心使坯料加热。 (2)、电阻炉加热:利用电流通入电炉内的电热体所产生的热量,以辐射及对流的方式来加热金属。 (3)、感应加热:在将感应器通入交变电流产生交变磁场的作用下,金属材料内部将产生交变涡流,由于涡流发热和磁场发热直接将金属加热。 4.材料45、Q235(A3)、Tl0A各属于何种材料并说明其性能、应用场合、锻造加热温度范围、加热火色。 答;(1)、45#属于优质碳素钢(结构钢),各项性能中等,适合制造零件,800~1200℃,红→淡黄。 (2)、Q235是普通碳素结构钢,韧性、塑性优良,适用于建筑行业或对韧性要求较高的零件,800~1280℃,红→黄白。 (3)、T10A优质碳素工具钢,硬度高,适用于做工具,770~1150℃,红→深黄→淡黄。 5.手工锻打时应掌握哪些要领 答:1、锤工:做到“稳、准、狠”; 2、钳工:对工件要夹牢、放平;

数据库实验

安徽工业大学数据库上机实验报告 专业:工业工程 班级:工112 学号: 姓名:

【实验2_1】查询学生基本信息表中的所有信息。 SQL语句如下: SELECT * FROM 学生基本信息表; 【实验2_2】在学生基本信息表中查询学生的学号、姓名、性别和族别信息。SQL语句如下: SELECT 学号, 姓名, 性别, 族别 FROM 学生基本信息表;

【实验2_3】从学生基本信息表中查询学生由哪些民族构成。 学生的族别有多行重复,要快速查询学生的民族构成,实际上就是对相同值的族别只需要显示一行,可使用DISTINCT关键字实现。 SQL语句如下: SELECT DISTINCT 学生基本信息表.族别 FROM 学生基本信息表 【实验2_4】从成绩表中查询学生成绩。 SQL语句如下: SELECT 学号, 成绩 FROM 成绩表; 【实验2_5】从相关表中查询每一位学生的学号、姓名、课程名称、成绩。 SQL语句如下:

SELECT 成绩表.学号, 学生基本信息表.姓名, 课程信息表.课程名称, 成绩表.成绩 FROM 课程信息表, 成绩表, 学生基本信息表 WHERE 学生基本信息表.学号=成绩表.学号and 成绩表.课程编号=课程信息表.课程编号; 【实验2_6】在课程信息表中查找“Delphi程序设计”课程的任课老师。 SQL语句如下: SELECT 课程名称, 任课教师 FROM 课程信息表 WHERE 课程名称="Delphi程序设计"; 【实验2_7】查询少数民族学生的基本情况。 SQL语句如下: SELECT * FROM 学生基本信息表

操作系统实验报告--实验一--进程管理

实验一进程管理 一、目的 进程调度是处理机管理的核心内容。本实验要求编写和调试一个简单的进程调度程序。通过本实验加深理解有关进程控制块、进程队列的概念,并体会和了解进程调度算法的具体实施办法。 二、实验内容及要求 1、设计进程控制块PCB的结构(PCB结构通常包括以下信息:进程名(进程ID)、进程优先数、轮转时间片、进程所占用的CPU时间、进程的状态、当前队列指针等。可根据实验的不同,PCB结构的内容可以作适当的增删)。为了便于处理,程序中的某进程运行时间以时间片为单位计算。各进程的轮转时间数以及进程需运行的时间片数的初始值均由用户给定。 2、系统资源(r1…r w),共有w类,每类数目为r1…r w。随机产生n进程P i(id,s(j,k),t),0<=i<=n,0<=j<=m,0<=k<=dt为总运行时间,在运行过程中,会随机申请新的资源。 3、每个进程可有三个状态(即就绪状态W、运行状态R、等待或阻塞状态B),并假设初始状态为就绪状态。建立进程就绪队列。 4、编制进程调度算法:时间片轮转调度算法 本程序用该算法对n个进程进行调度,进程每执行一次,CPU时间片数加1,进程还需要的时间片数减1。在调度算法中,采用固定时间片(即:每执行一次进程,该进程的执行时间片数为已执行了1个单位),这时,CPU时间片数加1,进程还需要的时间片数减1,并排列到就绪队列的尾上。 三、实验环境 操作系统环境:Windows系统。 编程语言:C#。 四、实验思路和设计 1、程序流程图

2、主要程序代码 //PCB结构体 struct pcb { public int id; //进程ID public int ra; //所需资源A的数量 public int rb; //所需资源B的数量 public int rc; //所需资源C的数量 public int ntime; //所需的时间片个数 public int rtime; //已经运行的时间片个数 public char state; //进程状态,W(等待)、R(运行)、B(阻塞) //public int next; } ArrayList hready = new ArrayList(); ArrayList hblock = new ArrayList(); Random random = new Random(); //ArrayList p = new ArrayList(); int m, n, r, a,a1, b,b1, c,c1, h = 0, i = 1, time1Inteval;//m为要模拟的进程个数,n为初始化进程个数 //r为可随机产生的进程数(r=m-n) //a,b,c分别为A,B,C三类资源的总量 //i为进城计数,i=1…n //h为运行的时间片次数,time1Inteval为时间片大小(毫秒) //对进程进行初始化,建立就绪数组、阻塞数组。 public void input()//对进程进行初始化,建立就绪队列、阻塞队列 { m = int.Parse(textBox4.Text); n = int.Parse(textBox5.Text); a = int.Parse(textBox6.Text); b = int.Parse(textBox7.Text); c = int.Parse(textBox8.Text); a1 = a; b1 = b; c1 = c; r = m - n; time1Inteval = int.Parse(textBox9.Text); timer1.Interval = time1Inteval; for (i = 1; i <= n; i++) { pcb jincheng = new pcb(); jincheng.id = i; jincheng.ra = (random.Next(a) + 1); jincheng.rb = (random.Next(b) + 1); jincheng.rc = (random.Next(c) + 1); jincheng.ntime = (random.Next(1, 5)); jincheng.rtime = 0;

操作系统实验报告java

操作系统实验报告 院系: 专业: 班级: 学号: : 指导老师:

进程调度的模拟与存管理 一、实验目的 在采用多道程序设计的系统中,往往有若干个进程同时处于就绪状态。当就续进程个数大于处理器数时,就必须依照某种策略来决定哪些进程优先占用处理器。实验模拟实现处理机调度,以加深了解处理机调度的工作,并体会优先级和时间片轮转调度算法的具体实施方法。帮助了解在不同的存储管理方式下,应怎样实现主存空间的分配和回收。 二、实验要求 1、可随机输入若干进程,并按优先权排序; 2、从就绪队首选进程运行:优先权-1/要求运行时间-1 要求运行时间=0时,撤销该进程 3、重新排序,进行下轮调度。 4、可随时增加进程; 5、规定道数,设置后备队列和挂起状态。若存中进程少于规定道数,可自 动从后备队列调度一作业进入。被挂起进程入挂起队列,设置解挂功能 用于将指定挂起进程解挂入就绪队列。 6、每次调度后,显示各进程状态。 7、自行假设主存空间大小,预设操作系统所占大小并构造未分分区表; 表目容:起址、长度、状态(未分/空表目) 8、结合以上实验,PCB增加为: {PID,要求运行时间,优先权,状态,所需主存大小,主存起始位置,

PCB指针} 9、采用最先适应算法分配主存空间; 10、进程完成后,回收主存,并与相邻空闲分区合并。 11、采用图形界面; 三、实验容 选择一个调度算法,实现处理机调度。 1、设计一个按优先权调度算法实现处理机调度的程序; 2、设计按时间片轮转实现处理机调度的程序。 3、主存储器空间的分配和回收。在可变分区管理方式下,采用最先适应算法实现主存空间的分配和回收。 四、实验原理 该模拟系统采用java语言实现,要实现的功能有新建进程、进程调度、挂起进程、解挂进程、删除进程,道数和时间片大小可以由用户自己调整,有两种调度策略:按优先权调度和按时间片轮转调度。每个进程可能有5种状态:新建(new)、就绪(ready)、运行(running)、阻塞(waiting)、挂起(suspend)。每个状态都有一个队列用来存放处于该状态的进程,不同的调度策略采用不同的队列实现。当创建进程时,如果存中的进程数还没达到规定道数,则将新建进程插入就绪队列,如果存中进程数已经达到规定道数,则插到后备队列,后备队列中的进程的状态为new。CPU每次调度时都从就绪队列中取进程,在进程执行过程中如果下一个操作时IO操作,则将进程插入到waiting队列。在系统运行过程中可以执行进程挂起操作,但执行的挂起操作时系统自动暂停运行,在弹出窗口选

安徽工业大学金工实习实习报告复习资料

安徽工业大学金工实习实习报告复习资料 一、数控技术基础 1、数控加工程序编制完成后即可进行正式加工。() A、正确 B、错误 2、数控机床可选用不同的数控系统,但数控加工指令都是完全相同的。() A、正确 B、错误 3、数控程序只有通过面板上的键盘才能输入数控系统。() A、正确 B、错误 4、轮廓控制系统仅要控制从一点到另一点的准确定位。() A、正确 B、错误 5、插补运动的实际轨迹始终不可能与理想轨迹完全相同。() A、正确 B、错误 6、开环伺服系统数控机床没有位置检测装置。() A、正确

7、数控机床开机后,一般应先回参考点。() A、正确 B、错误 8、闭环伺服系统数控机床反馈装置可直接测量机床工作台的位移量。() A、正确 B、错误 9、机床坐标系以刀具远离工件表面为正方向。() A、正确 B、错误 10、数控机床的机床坐标原点和机床参考点是重合的。() A、正确 B、错误 11、用于指令动作方式的辅助功能指令代码是()代码 A、F B、G C、T D、M 12、用于指令动作方式的准备功能指令代码是()代码 A、F B、G

D、M 13、一个完整的程序段是由若干个()组成的。 A、字 B、程序段 C、字母 D、数字 14、对于数控机床开环控制系统的伺服电动机,一般采用() A、直流伺服电动机 B、功率步进电动机 C、液压步进马达 D、交流伺服电动机 15、数控机床工作时,当发生任何异常现象需要紧急处理时应启动() A、程序停止功能 B、故障检测功能 C、急停功能 D、暂停功能 16、G00指令移动速度是()指定。 A、机床参数 B、数控程序

安徽工业大学信息检索考试

一、单选题(每题1分,共20题) 1.期刊类参考文献的标准著录格式是____________。(D)正确 A、[序号]作者.题名[D].保存地点:保存单位,年 B、[序号]作者.题名[A].见(英文用In):主编.论文集名[C].出版地:出版者,出版年.起止页码 C、[序号]著者.书名[M].版本(第一版不写).出版地:出版者,出版年.起止页码 D、[序号]作者.题名[J].刊名,出版年份,卷号(期号):起止页码 2.检索语言中,_______是自然语言。(D)正确 A.标题词 B.主题词 C.单元词 D.关键词 3.下列属于布尔逻辑算符的是____________ 。(D)正确 A、与 B、或 C、非 D、以上都是 4.下列属于文献外表特征的是(C)正确 A.分类号 B.主题词 C.文献题名 D.关键词 5.字段代码AU、AB、PY所代表的字段是?(B)正确 A.标题、注释、文摘类型 B.著者、文摘、出版年 C.叙词、分类、语言 6.ISBN号是哪种文献特有的标识?(A)正确 A.图书 B.期刊 C.科技报告 D.专利文献 7.请标出文献:[3]李旭东,宗光华,毕树生,等.生物工程微操作机器人视觉系统的研究[J].北京航空航天大学学报,2002,28(3):249~252 属于哪种文献类型____________。(B)正确 A、图书 B、期刊 C、科技报告 D、报纸 8.以下哪些数据库不属于数值与事实数据库?(D)正确

B.搜数网统计年鉴数据库 C.国研网之国研数据 D.人大报刊复印资料 9.我馆所收藏的由叶迷著的图书《诺亚方舟》(珠海出版社2004 )的索书号是(A)正确 A.I247.57/H1282; B.I247.7/H1282 ; C.H247.57/H1282; D.I247.57/Y1282 10.在线公共目录检索系统(OPAC)属于什么检索系统(A)正确 A.目录检索系统 B.文摘检索系统 C.全文检索系统 11.利用文献末尾所附参考文献进行检索的方法是(C)正确 A.倒查法 B.顺查法 C.引文追溯法 D.抽查法 12.本馆常用外语类、经济类图书的分类号分别是:(A)正确 A.H、F B.H、C C.I、H E.I、F 13.截词符“?”可以用来代替0个或()个字符?(B)正确 A.多个 B.1个 C.2个 D.3个 14.国际上评价期刊最有影响力的一个指标是(A)正确 A.影响因子 B.读者统计数据 C.引文量 D.价格 15.查找安工大图书馆纸本图书和纸本期刊收藏地点,可利用:(A)错误正确答案:D A. CNKI B.重庆维普 C.文献传递

嵌入式操作系统实验报告

中南大学信息科学与工程学院实验报告 姓名:安磊 班级:计科0901 学号: 0909090310

指导老师:宋虹

目录 课程设计内容 ----------------------------------- 3 uC/OS操作系统简介 ------------------------------------ 3 uC/OS操作系统的组成 ------------------------------ 3 uC/OS操作系统功能作用 ---------------------------- 4 uC/OS文件系统的建立 ---------------------------- 6 文件系统设计的原则 ------------------------------6 文件系统的层次结构和功能模块 ---------------------6 文件系统的详细设计 -------------------------------- 8 文件系统核心代码 --------------------------------- 9 课程设计感想 ------------------------------------- 11 附录-------------------------------------------------- 12

课程设计内容 在uC/OS操作系统中增加一个简单的文件系统。 要求如下: (1)熟悉并分析uc/os操作系统 (2)设计并实现一个简单的文件系统 (3)可以是存放在内存的虚拟文件系统,也可以是存放在磁盘的实际文件系统 (4)编写测试代码,测试对文件的相关操作:建立,读写等 课程设计目的 操作系统课程主要讲述的内容是多道操作系统的原理与技术,与其它计算机原理、编译原理、汇编语言、计算机网络、程序设计等专业课程关系十分密切。 本课程设计的目的综合应用学生所学知识,建立系统和完整的计算机系统概念,理解和巩固操作系统基本理论、原理和方法,掌握操作系统开发的基本技能。 I.uC/OS操作系统简介 μC/OS-II是一种可移植的,可植入ROM的,可裁剪的,抢占式的,实时多任务操作系统内核。它被广泛应用于微处理器、微控制器和数字信号处理器。 μC/OS 和μC/OS-II 是专门为计算机的嵌入式应用设计的,绝大部分代码是用C语言编写的。CPU 硬件相关部分是用汇编语言编写的、总量约200行的汇编语言部分被压缩到最低限度,为的是便于移植到任何一种其它的CPU 上。用户只要有标准的ANSI 的C交叉编译器,有汇编器、连接器等软件工具,就可以将μC/OS-II嵌入到开发的产品中。μC/OS-II 具有执行效率高、占用空间小、实时性能优良和可扩展性强等特点,最小内核可编译至2KB 。μC/OS-II 已经移植到了几乎所有知名的CPU 上。 严格地说uC/OS-II只是一个实时操作系统内核,它仅仅包含了任务调度,任务管理,时间管理,内存管理和任务间的通信和同步等基本功能。没有提供输入输出管理,文件系统,网络等额外的服务。但由于uC/OS-II良好的可扩展性和源码开放,这些非必须的功能完全 可以由用户自己根据需要分别实现。 uC/OS-II目标是实现一个基于优先级调度的抢占式的实时内核,并在这个内核之上提供最基本的系统服务,如信号量,邮箱,消息队列,内存管理,中断管理等。 uC/OS操作系统的组成 μC/OS-II可以大致分成核心、任务处理、时间处理、任务同步与通信,CPU的移植等5个部分。如下图:

安徽工业大学生产实习报告

安徽工业大学材料科学与工程学院 金属材料工程系 焊接2010级生产实习报告 姓名: 学号: 指导老师:方俊飞,尹孝辉,洪永昌实习单位:上海宝山钢铁公司、上海宝冶钢构公司 实习日期:2013-9

目录 第一部分总体概论 一、实习目的与要求 二、实习单位 三、安全教育 第二部分实习内容 一、宝钢钢铁材料生产实习 二、宝冶钢结构公司实习 三、专题讲座内容整理 第三部分实习体会

1.总体概论 1.1.实习目的与要求 1.1.1.使学生能全面深入系统地了解和熟悉本专的生产技术知 识; 1.1. 2.通过实习让我们学习和了解生产的全过程以及组织管理 知识; 1.1.3.使学生能亲自体会如何把已学的理论和专业知识运用到 生产实际中去,进一步巩固、深化和拓宽专业知识; 1.1.4.使学生能了解生产会遇到什么样的问题以及怎样解决这 些问题; 1.1.5.认识到团结协作的重要性,增强团队协作能力。 1.2.实习单位简介 1.2.1.宝山钢铁公司 宝山钢铁股份有限公司(简称"宝钢股份")是中国最大、最现代化的钢铁联合企业,位于上海东北翼,是全球最大的长流程钢铁制造基地之一,年产钢能力1450万吨。 。宝钢股份以其诚信、人才、创新、管理、技术诸方面综合优势,奠定了在国际钢铁市场上世界级钢铁联合企业的地位。《世界钢铁业指南》评定宝钢股份在世界钢铁行业的综合竞争力为前三名,认为也是未来最具发展潜力的钢铁企业。 公司全部装备技术建立在当代钢铁冶炼、冷热加工、液压传感、电子控制、计算机和信息通讯等先进技术的基础上,具有大型化、连续化、自动化的特点。通过引进并对其不断进行技术改造,保持着世界最先进的技术水平。 公司采用国际先进的质量管理,主要产品均获得国际权威机构认可。通过BSI英国标准协会ISO9001认证和复审,获美国API会标、日本JIS认可证书,通过了通用、福特、克莱斯勒等世界三大著名汽车厂的QS 9000贯标认证,得到中国、法国、美国、英国、德国、挪威、意大利等七国船级社认可。 公司重视环境保护,追求可持续发展,在中国冶金行业第一家通过 ISO14001 环境贯标认证,堪称世界上最美丽的钢铁企业 我们实习的是宝钢的热轧厂、冷轧厂(观看生产工艺系列片)、焊管厂。

安徽工业大学文献检索E次作业

一、单选题(每题2分,共5题) 1.智立方?知识发现系统是一个知识资源的大数据服务平台,它是哪家数据资源服务商推出的?(B)正确 A. 中国知网 B. 维普资讯 C. 万方数据 D. 读秀学术搜索 E. EBSCO 2.在万方数据平台检索我校刘晓东的论文《DC/DC变换器并联均流技术》的出处:(A)正确 A. 《安徽工业大学学报(自然科学版)》2013年1期 B. 《电子技术应用》2012年12期 C. 《工业控制计算机》 2012年5期 D. 《电子技术应用》2013年2期 3.在万方中查找“基于粗糙集的神经网络建模方法研究”的文献,检索结果最多的是:(D)正确 A. 粗糙集神经网络建模方法 B. 基于粗糙集的神经网络建模方法研究 C. 粗糙集神经网络建模研究 D. 粗糙集神经网络建模 4. 在万方数据资源(网站地址:https://www.doczj.com/doc/b712391283.html,)进入学术期刊,使用“期刊检索”功能,“按学科分类”找到“ 自动化技术与计算机技术”中的“自动化与仪表”,打开该期刊的2014年第8期,选出篇名为“基于ARM-Linux的火电机组在线性能监测系统”的文献的第一作者:(A)正确 A. 方彦军 B.董政呈 C.杨军

D.林涛 5. 在万方数据资源(网站地址:https://www.doczj.com/doc/b712391283.html,)进入学术期刊,使用“学位检索”功能,“学科、专业目录”找到“ 电气工程”中的"电力系统及其自动化",打开2013年博士学位论文,选出篇名为“间歇性能源输出功率预测与储能系统规划”的论文的作者:(B)正确 A. 王守相 B. 张娜 C. 王俊 D. 罗卫红 二、多选题(每题5分,共8题) 1.进入维普期刊资源整合服务平台(https://www.doczj.com/doc/b712391283.html,/)期刊文献检索,利用 “基本检索”功能查找安徽工业大学谢能刚为第一作者2001-2012年发表的期刊论文,正确的检索结果是?(A、C、E)正确 A. 40篇; B. 107篇; C.被EI收录16篇; D.EI收录26篇; E.核心期刊31篇。 2.进入维普期刊资源整合服务平台(https://www.doczj.com/doc/b712391283.html,/)期刊文献检索,利用 “基本检索”功能查找安徽工业大学谢能刚为第一作者2005-2012年发表的期刊论文,正确的检索结果是?(A、C、E)错误正确答案:A、D、E A. 17篇; B. 107篇; C.被EI收录16篇; D.被EI收录6篇; E.核心期刊14篇。

实时操作系统报告

实时操作系统课程实验报告 专业:通信1001 学号:3100601025 姓名:陈治州 完成时间:2013年6月11日

实验简易电饭煲的模拟 一.实验目的: 掌握在基于嵌入式实时操作系统μC/OS-II的应用中,基于多任务的模式的编程方法。锻炼综合应用多任务机制,任务间的通信机制,内存管理等的能力。 二.实验要求: 1.按“S”开机,系统进入待机状态,时间区域显示当前北京时间,默认模式“煮饭”; 2.按“C”选择模式,即在“煮饭”、“煮粥”和“煮面”模式中循环选择; 3.按“B”开始执行模式命令,“开始”状态选中,时间区域开始倒计时,倒计时完成后进入“保温”状态,同时该状态显示选中,时间区域显示保温时间; 4.按“Q”取消当前工作状态,系统进入待机状态,时间区域显示北京时间,模式为当前模式; 5.按“X”退出系统,时间区域不显示。 6.煮饭时长为30,煮粥时长为50,煮面时长为40. 三.实验设计: 1.设计思路: 以老师所给的五个程序为基础,看懂每个实验之后,对borlandc的操作有了大概的认识,重点以第五个实验Task_EX为框架,利用其中界面显示与按键扫描以及做出相应的响应,对应实现此次实验所需要的功能。 本次实验分为界面显示、按键查询与响应、切换功能、时钟显示与倒计时模块,综合在一起实验所需功能。 2.模块划分图: (1)界面显示: Main() Taskstart() Taskstartdispinit() 在TaskStartDispInit()函数中,使用PC_DispStr()函数画出界面。

(2)按键查询与响应: Main() Taskstart() 在TaskStart()函数中,用if (PC_GetKey(&key) == TRUE)判断是否有按键输入。然后根据key 的值,判断输入的按键是哪一个;在响应中用switch语句来执行对应按键的响应。 (3)切换功能: l计数“C”按 键的次数 M=l%3 Switch(m) M=0,1,2对应于煮饭,煮粥,煮面,然后使用PC_DispStr()函数在选择的选项前画上“@”指示,同时,在其余两项钱画上“”以“擦出”之前画下的“@”,注意l自增。 四.主要代码: #include "stdio.h" #include "includes.h" #include "time.h" #include "dos.h" #include "sys/types.h" #include "stdlib.h" #define TASK_STK_SIZE 512 #define N_TASKS 2 OS_STK TaskStk[N_TASKS][TASK_STK_SIZE]; OS_STK TaskStartStk[TASK_STK_SIZE]; INT8U TaskData[N_TASKS];

java超市管理系统实训报告

1.1 课程设计的目的 通过本次课程设计,使学生能够全面、深刻地掌握数据库系统的设计流程。根据在数据库原理课程中所学到的数据库理论知识,结合某个具体的实际需求,最终开发出一个较为实用的数据库系统。 1.2 课程设计的背景和意义 1.2.1课程设计的背景 20世纪90年代后期特别是近几年,我国的超市产业飞速发展,其经营模式更为复杂,旧的管理体制已经无法适应超市的发展,这就迫切的需要引进新的管理技术。 超市的数据和业务越来越庞大,而计算机就是一种高效的管理系统,这就需要我们把超市的管理与计算机结合起来,从而超市管理系统应运而生。依靠现代化的计算机信息处理技术来管理超市,节省了大量的人力、物力,改善了员工的并且能够快速反映出商品的进、销、存等状况和各种反馈信息分析,使管理人员快速对市场的变化做出相应的决策,加快超市经营管理效率。 1.2.2 课程设计的意义 “数据库课程设计”的设计思想旨在强调学生的实际编程能力的培养与创意灵感的发挥。为此,本课程结合学科特点,除了让学生掌握数据库原理的理论知识,还增加了需求功能让学生完成,并鼓励学生的创作出个性的程序,满足客户需求,与市场的实际项目相结合。学生对此热情高,实际收获大,效果好。通过课堂学习和参与相关项目设计,学生对书本支持有了深刻的理解,实践性教学取得了良好效果。 1.3 课程设计环境 操作系统:Windows xp 开发软件:Microsoft Visual Studio 2005 数据库:Microsoft SQL Server 2005 第2章系统需求分析 随着人们生活水平的不断提高,对于物质的需求也越来越高,而超市作为日常生活用品聚集的场所,随着全球各种超市的数目的不断增加,规模不断增大,其管理难度也相应的增加,而为了适应当今信息化发展的时代,一套完整的超市商品管理系统显得尤为重要。

2010年安徽工业大学土木工程认识实习报告

` 一、实习目的和意义 走出校门,进入社会,了解土木,展望未来。经济社会的发展、各种项目的建设都与土木工程有关。认识实习时学习土木工程诸多专业课程的一门必修课程,是接受…… 二、实习过程 (1)8月23上午八点40分左右,马钢棒材厂、高速线材厂参观。 早上校车8点15分准时开车。到马钢时,我们首先聚集在三轧钢线材综合楼的食堂里,等同学们都安静地端坐在各自的位子上。我们请来了高速线材厂的带队负责人和棒材厂的负责人来给我们做些简单的工艺、厂房及生产背景介绍…… 首先介绍的是马钢的线材厂的相关东西。线材厂于1987年建立了全国第一个高速生产线并在5月28日正式投入生产。据说当时在前苏联的援助之下建立成功,在当时的中国,该生产线堪称是世上最快的扎线,最快轧速可达133m/s,虽然当今中国有许多不错的钢铁厂,但是马钢线材厂因其悠久的地位,此刻堪称中国高线的摇篮。虽然马钢坐落在马鞍山这个小城市,但是它却承担了安徽省1/3的经济效益。此线材厂生产的产品也可作为像汽车、飞机上的高强度螺丝的原材料。好的产品自然需要千锤百炼方能重用,在1200度的高温下,经过29道工艺后线材材能成其大器。 第二个是棒材厂的相关介绍。该厂于1998年投入生产,主要生产建筑用的螺纹钢。是我们建筑中材料的一支“后盾力量”。虽然介绍不多,但过多是安全宣传,可见马钢在安全教育中的重视程度。 走出食堂,我们列着队伍来到了线材厂的厂房里。厂房很大很宽敞,首先映入眼帘的就是“黑”,黑代表了其历史,并象征着车间不断生产运作的繁忙景象。拾梯而上,下面的设备一览无余,从铁锭到产品出口,绵延的生产线仿佛看不见尽头似的。橘黄色的大铁锭在蓄势待发,向层层设备中冲去,在粗中轧机设备中和预精轧机组的共同作用下,材料由粗变细。但是此时温度仿佛丝毫不减,那橘黄色还是那么显目,设备不断喷水,蒸汽扶摇而上。虽然变细了,但是还是不够,材料的规格还是不满足条件,在减径定机组的工作下,线材的半径经一部减小,截面更趋于规圆。利用光学的相关原理,在测径仪的监测下,线材最后终于加工好了。下面余部就是在卧式吐丝机下,把线材盘卷起来,以方便运输。此时温度依然不减太多。当线材被运到散卷冷机运输线时,材料被进一步冷却,接着被运输到集卷站。接着是单机运输机,线材在其上进一步冷却,以达到下一步操作的合适温度。打捆机把成卷的线材捆扎在一起,最后交给卸卷站。此时厂房上两股吊车梁支撑着的巨大的电磁铁凭借其强大的吸引力把一捆捆线材搬到安放的位置。此刻所有的操作算是完成了。产出的线材的半径一般在5-20mm,有一部分好的材料也可以用于制作螺丝和螺帽。 走出线材厂,外面的空气就是比车间的空气好,工人们能够长期在里工作,奉献青春和汗水,值得我们敬仰。外面道路宽阔,房屋边布满了粗粗细细的管道,有运输气的有运输水的。当我们踏进棒材厂时,里面显得比线材厂要乱得多,一列列传输带在轴承带动链条下把巨龙式的螺纹钢从里向外陆陆续续地运输过来。此棒材截面在32mm左右,而一般民用

数据库实验报告

《数据库系统概论》实验报告书 专业班级软件 学号16677777 姓名哈哈 指导教师陈业斌 安徽工业大学计算机学院

实验一:数据定义/数据操纵语言 [ 实验日期 ] 2016 年 9 月 24 日 [ 实验目的 ] 熟悉Oracle上机环境;熟练掌握和使用DDL语言,建立、修改和删除数据库表;熟练掌握和使用DML语言,对数据进行增加、修改和删除操作。 [ 实验内容 ] 1.SQL数据定义语句: 例1-1: (建立如附录一所示的四张数据表) 按要求建立教学数据库表结构及其完整性约束关系,并将数据分别插入到教学数据库的四个数据库表中。 例1-2: (修改表结构) 在Student表中将SSEX字段修改为char(2),观察返回结果,分析原因。显示:alter table STUDENT modify (SSEX char(2)) 错误报告 - SQL 错误: ORA-01441: 无法减小列长度, 因为一些值过大 01441. 00000 - "cannot decrease column length because some value is too big" 例1-3: (修改表结构) 在Student表中增加BirthDay(date) 字段。 alter table STUDENT add BirthDay DATE; 例1-4: (修改表结构) 在Student表中删除BirthDay字段。 alter table STUDENT drop column BirthDay; 例1-5: (修改表结构) 在Student表中增加一个默认值约束,约束’性别’的默认值为’男’。alter table STUDENT modify (SSEX default '男'); 2. SQL数据操纵语句: 例2-1: (插入数据) 执行如下语句向student表中插入一条数据。 insert into student(sno,sname,sdept) values('96001','张三','SC'); (1)根据返回信息解释其原因; 显示: 在行: 5 上开始执行命令时出错 - insert into student(sno,sname,sdept) values('96001','张三','SC') 错误报告 - SQL 错误: ORA-01400: 无法将 NULL 插入 ("STU"."STUDENT"."SCLASS") 01400. 00000 - "cannot insert NULL into (%s)" 原因:在定义表结构时已将SCLASS约束为NOT NULL。并且学号是主键,表里已经有学号为96001的学生,违反了主键的唯一性约束条件。 (2)修改上面插入语句,让其能正确地插入一条记录。

JAVA+SQL学生学籍管理系统代码及实验报告

学生学籍管理系统 1课程设计目的、设计内容与需求分析 1.1 课程设计目的 通过本次课程设计的实践操作,能够让学生懂得Java、SQL的各种相关知识的使用,真正的提高学生独立开发设计Java程序,把课堂上的知识运用在实践上,一门编程语言只有在不断实践操作和练习上才会有进步。 1.2软件设计内容 学生学籍管理系统,可用于学校等机构的学生信息管理,查询,更新与维护,使用方便,易用性强,图形界面清晰明了。该软件用java语言编写,用SQLServer2005数据库作为后台的数据库进行信息的存储,用SQL语句完成添加,查询,修改,删除的操作。用ODBC驱动实现前台Java与后台SQL数据库的连接。Java语言跨平台性强,可以在windows,linux,ubuntu等系统下使用,方便简单,安全性好。 SQLServer2005数据库高效安全,两者结合可相互利用各自的优势。系统可供输入的属性有“学号”,“姓名”,“性别”,“班级”,“学院”,“籍贯”。 该系统实现的大致功能: 1.管理员登陆界面。该界面可以输入管理员号,登陆密码。用户通过验证通过后方可进入管理系统。一定程度上保证了信息安全性,防止他人未经允许篡改学生信息。 2.查询学生信息。可以选择由用户选择“显示系统中当前的所有学生信息”。也可以选择按照“某一个学号查询该学号的学生信息”。查询到的信息会在窗口中依次显示出来。 3.添加学生信息。可以按照图形的界面的显示依次输入新学生的“学号”,“姓名”,“性别”,“班级”,“学院”,“籍贯”。完成新纪录的添加。 4.修改学生信息。可以选择按照“学号”或者“姓名”找到该学生的学生信息并输

嵌入式实时操作系统实验报告

嵌入式实时操作系统实验报告 任务间通信机制的建立 系别计算机与电子系 专业班级***** 学生姓名****** 指导教师 ****** 提交日期 2012 年 4 月 1 日

一、实验目的 掌握在基于嵌入式实时操作系统μC/OS-II的应用中,任务使用信号量的一般原理。掌握在基于优先级的可抢占嵌入式实时操作系统的应用中,出现优先级反转现象的原理及解决优先级反转的策略——优先级继承的原理。 二、实验内容 1.建立并熟悉Borland C 编译及调试环境。 2.使用课本配套光盘中第五章的例程运行(例5-4,例5-5,例5-6),观察运行结果,掌握信号量的基本原理及使用方法,理解出现优先级反转现象的根本原因并提出解决方案。 3.试编写一个应用程序,采用计数器型信号量(初值为2),有3个用户任务需要此信号量,它们轮流使用此信号量,在同一时刻只有两个任务能使用信号量,当其中一个任务获得信号量时向屏幕打印“TASK N get the signal”。观察程序运行结果并记录。 4. 试编写一个应用程序实现例5-7的内容,即用优先级继承的方法解决优先级反转的问题,观察程序运行结果并记录。 5.在例5-8基础上修改程序增加一个任务HerTask,它和YouTask一样从邮箱Str_Box里取消息并打印出来,打印信息中增加任务标识,即由哪个任务打印的;MyTask发送消息改为当Times为5的倍数时才发送,HerTask接收消息采用无等待方式,如果邮箱为空,则输出“The mailbox is empty”, 观察程序运行结果并记录。 三、实验原理 1. 信号量 μC/OS-II中的信号量由两部分组成:一个是信号量的计数值,它是一个16位的无符号整数(0 到65,535之间);另一个是由等待该信号量的任务组成的等待任务表。用户要在OS_CFG.H中将OS_SEM_EN开关量常数置成1,这样μC/OS-II 才能支持信号量。

安徽工业大学计算机学院程序设计综合实习报告

安徽工业大学计算机学院程序设计综合实习报告 题目:现代教学管理系统 姓名:刘忻 学号:8 学院:计算机学院 班级:软件123班 指导老师:王森玉 完成日期:2013/5/22

一、问题定义:错误!未定义书签。 二、可行性研究:错误!未定义书签。 I、项目的由来:错误!未定义书签。 II、可选方案:错误!未定义书签。 III、可行性:错误!未定义书签。 1、技术可行性:错误!未定义书签。 2、经济可行性:错误!未定义书签。 3、操作可行性:错误!未定义书签。 4、法律可行性:错误!未定义书签。 IV、结论:错误!未定义书签。 三、需求规格说明错误!未定义书签。 I、目标:错误!未定义书签。 II、数据需求:错误!未定义书签。 1、数据量:错误!未定义书签。 2、数据定义和结构错误!未定义书签。 III、功能需求:错误!未定义书签。 四、总体设计:错误!未定义书签。 I、软件的结构(HIPO图):错误!未定义书签。 五、各模块详细设计错误!未定义书签。 I、编译预处理模块错误!未定义书签。 II、主函数模块错误!未定义书签。 III、browse()函数模块错误!未定义书签。IV、insert()函数模块错误!未定义书签。 V、deletel()函数模块错误!未定义书签。VI、scorein()函数模块错误!未定义书签。VII、c hange()函数模块错误!未定义书签。VIII、load()函数模块错误!未定义书签。IX、save()函数模块错误!未定义书签。 X、mima()函数模块错误!未定义书签。 六、程序源代码错误!未定义书签。 七、程序测试错误!未定义书签。 I、测试抓图:错误!未定义书签。 II、测试内容:错误!未定义书签。 八、总结错误!未定义书签。

数据库概论课程设计安徽工业大学戴小平

《数据库系统概论》课程设计 2017年 06月03 日 安徽工业大学计算机学院 姓 名 李根 专 业 计算机科学与技术 班 级 计141 学 号 149074007 指导教师 戴小平

摘要 随着计算机科学技术的日益发展及信息化技术向各个领域的不断深入,人们的学习生活已越来越趋向于信息化。为跟上时代的要求及人们生活的步伐,药店管理系统随运而生。它的发展不仅给人们带来了很大的便利性,还在很大程度上减轻了其管理人员的工作压力,基于这一事实开发本系统。 本系统主要要实现的是药店管理系统进行药品的管理。本系统的主要功能包括:用户操作和管理员操作。用户操作包括:用户登录,用户注册,用户购买药品,查看药品基本信息等功能。管理员操作包括:管理员登录,添加药品至仓库,修改药品信息,查看入库信息,出库信息,库存信息,以及从仓库出库至药店等功能。 本系统是利用Microsoft Visual Studio 2017开发工具、C#语言和Microsoft SQL Serve数据库来开发的。 关键词:药店;仓库;管理系统;

目录 1绪论 (3) 1.1 概述 (3) 1.1.1 问题的提出 (3) 1.1.2 本课题的意义 (3) 1.2 开发环境与工具介绍 (3) 1.2.1 Microsoft Visual Studio简介 (3) 1.2.2 C# 简介 (3) 1.2.3 Microsoft SQL Server简介 (4) 2 系统需求分析与设计 (4) 2.1 用户需求分析 (4) 2.1.1 用户需求 (4) 2.1.3 系统性能需求 (4) 2.1.4数据分析 (4) 2.2 功能模块图及分模块功能描述 (5) 2.2.1 系统的功能模块图 (5) 2.2.2 系统功能模块简介 (5) 2.3 数据库设计 (5) 2.3.1 系统E-R图 (5) 2.3.2 数据库逻辑结构设计 (6) 3 系统实施 (8) 3.1 建立数据库 (8) 3.2 数据库连接 (10) 3.3 主要模块实施 (10) 3.3.1 登录模块的开发 (10) 3.3.2 管理员主界面 (11) 3.3.3 用户主界面开发 (12) 3.4 系统测试 (12) 3.4.1 软件测试的对象 (12) 4 系统说明 (15) 4.1 开发环境 (15) 4.2 系统安装、配置与发布应用程序的步骤 (15) 总结 (16) 参考文献 (16) 附录:部分源代码 (16) 登录主界面源代码: (16) 用户注册界面代码: (18) 管理员主界面: (20) 购买药品代码: (23) 插入药品信息代码: (26)

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