员 工 信 息 管 理 系 统(含附源代码)33
员工信息安全培训
2021/8/2
33
谢谢!
2021/8/2
34
3.信用卡录入:防止客户资料外泄;杜绝员工录入资料错误。
4.信用卡营销:防止客户资料外泄。
5.银行卡外呼工作:防止客户资料外泄。
6.业务档案数字加工:会计档案的保密,信息泄露。
2021/8/2
28
3. 信息安全与工作
3.1 工作中要接触的信息安全
3.2 培养良好的安全习惯
2021/8/2
29
3.2培养良好的信息安全习惯
2021/8/2
24
2.2.3 信息安全管理体系认证
公司信息安全管理体系组织结构
管理者代表
汇报
任命委托
代表汇报
领导
信息安全应急组
信息安全经理
汇报
领导
汇报
信息安全执行组
汇报
领导
管理者代表:丁志鹏
信息安全经理:战月欠
信息安全审核组
2021/8/2
25
主要内容
1. 信息安全
2. 信息安全管理和信息安全管理体系
规范:建立规范的管理体系并严格执行。
2021/8/2
23
2.2.3 信息安全管理体系认证
公司信息安全管理体系目标
大面积内网中断时间每年累计不超过100分钟
大规模病毒爆发每年不超过4次
重要信息设备丢失每年不超过1起
机密和绝密信息泄漏事件每年不超过2次
客户针对信息安全事件的投诉每年不超过2次
全员参与信息安全意识活动的比例每年不低于80%
3. 信息安全与工作
2021/8/2
11
2 信息安全管理与信息安全管理体系
电工理论知识习题库(含参考答案)
电工理论知识习题库(含参考答案)一、单选题(共60题,每题1分,共60分)1、计算机中最常用的字符信息编码是( )。
A、余 3 码B、BCD 码C、ASCII 码D、循环码正确答案:C2、( ) 及电容器接地前应逐相充分放电。
A、电缆B、变压器C、避雷器D、导线正确答案:A3、提高供电线路的功率因数后,其结果是( )。
A、节省了电能消耗B、减少了用电设备的有功功率,提高了电源设备的容量C、提高了电源设备的利用率并减小了输电线路中的功率损耗D、减少了用电设备中无用的无功功率正确答案:C4、对油污污染不敏感的液压泵是( )。
A、双联式叶片泵B、齿轮泵C、双级式叶片泵D、凸轮转子泵正确答案:B5、在控制系统中,主要用于产生输入信号的元件称为( )。
A、反馈元件B、比较元件C、给定元件D、放大元件正确答案:C6、三相交流异步电动机采用 Y-Δ降压起动时的起动转矩是直接起动时的( )倍。
A、0.866B、1/3C、1/9D、3正确答案:B7、大容量汽轮发电机组一般采用( )法进行并网操作。
A、手动准同期B、其他C、自同期D、自动准同期正确答案:D8、线路或设备的绝缘电阻的测量是用( )进行测量。
A、万用表的电阻挡B、毫安表C、接地摇表D、兆欧表正确答案:D9、十进制整数-1256 在十六位计算机系统中用二进制表示是( )。
A、0001 0010 0101 0110B、1001 0010 0101 0110C、1111 1011 0001 1000D、0000 0100 1110 1000正确答案:C10、绕线式异步电动机转子串电阻启动时,启动电流减小,启动转矩增大的原因是( )。
A、转子电路的有功电流变大B、转子电路的转差率变小C、转子电路的转差率变大D、转子电路的无功电流变大正确答案:A11、低压电器按其动作方式可分为自动切换电器和( )电器。
A、非接触切换B、非机械C、非电动D、非自动切换正确答案:D12、试运行是指在不改变示教模式的前提下执行模拟再现动作的功能,机器人动作速度超过示教最高速度时,以( )。
信息网络安全核心技术
– No.3: CMU 0.369
– No.4: CLIPS-IMAG Lab 0.349 – No.5: Microsoft Cambridge 0.343 (微软剑桥研究院)
技术成果5:实时多关键词扫描
单CPU P4 1G PC机上,对1000个以上的关键词、最短词长超过4 个字节、每秒处理500M左右的数据流(带宽)。比目前国际上最快 的算法平均快 150%-400%以上
技术成果6:一体化邮件检测技术
技术特点
直接检测(Direct)方案把分层处理的问题,集中到,一起处理, 近可能的减少处理的轮数。
直接检测的方案把检测的关键词变化为多种格式,从而模拟 多轮处理的效果
直接检测基本上可以在一次亚线性时间内完成内容检测。
特色算法 短关键词的多串匹配技术 长关键词的多串匹配技术 在压缩情况下的串匹配技术 模糊串匹配技术 在异常编码下的串匹配技术
信息网络的根本----信息服务质量
信息价值的体现:
信息的新鲜程度(及时性) 信息的准确程度 信息的全面性 掌握信息的权利(信息=资本/权益/责任)
信息的价值是信息网络不安全的根源----
通过一定手段非法得到或阻止及时地、合法 地得到正确的、完整的信息
安全信息网络
具有防范非法手段获得或破坏正常信 息获取能力的信息网络。
技术成果1:因特网技侦平台
Internet
实时获取因特网数据包
协议还原/信息扫描与过滤
安全审计/控管
需求输入/信息获取
成 果
2
网 络 信 息 预 报 警
最终用户(End Users)(包括政府领导、司法/安全/军队部门人员、网管人员、 专业信息消费者等等)
网络与信息安全管理员(4级)题库(附参考答案)
网络与信息安全管理员(4级)题库(附参考答案)一、单选题(共65题,每题1分,共65分)1、在数据库管理系统中,数据对象的存取权限DR表示()。
A、更新数据B、读数据C、删除关系D、删除关系里面的记录正确答案:C2、根据《信息安全等级保护管理办法》的规定,涉密信息系统按照所处理信息的最高密级,分为三个等级,其中不包括()。
A、商密B、秘密C、机密D、绝密正确答案:A3、()是在使用不同协议的网络区域间做协议转换。
A、应用网关B、接入网关C、安全网关D、中继网关正确答案:A4、()应当建立互联网上网服务营业场所经营单位的经营活动信用监管制度,建立健全信用约束机制,并及时公布行政处罚信息。
A、公安网监部门B、工商行政管理部门C、文化行政部门D、电信管理部门正确答案:C5、IPv6的地址长度是O。
A、64bitB、32bitC、128bitD、256bit正确答案:C6、互联网上网服务营业场所落实相关的()措施,是对落实安全管理制度的进一步深化,是互联网上网服务营业场所的网络安全管理和保护网络安全必要的技术保障。
A、经营管理技术B、系统冗余技术C、信息安全管理技术D、服务器备份技术正确答案:C7、()负责全国互联网论坛社区服务的监督管理执法工作。
A、国家互联网信息办公室B、省互联网信息办公室C、直辖市互联网信息办公室D、自治区互联网信息办公室正确答案:A8、违反国家规定,对计算机信息系统中存储、处理或者传输的数据和应用程序进行删除、修改、增加的操作,后果严重的,构成()。
A、非法侵入计算机信息系统罪B、破坏计算机信息系统罪C、删除、修改、增加计算机信息系统数据和应用程序罪D、扰乱无线电通讯管理秩序罪正确答案:B9、红外传输的优点不包括()。
A、能贯穿墙壁B、频率分配简单C、抗干扰D、安全正确答案:A10、条件允许的情况下,恶意软件分析平台中0。
A、宿主机与虚拟机使用同构平台。
B、宿主机与虚拟机使用同构平台。
习题课(软件工件-信息系统分析)
解:(1)系统的数据源点、终点、处理功能及存储
源点:
病人:提供生理信号信息; 系统随时接收每个病人的生理信号(脉搏、体温、血 压、心电图等) 护士:要求病情报告信息; 护士可以要求系统印出某个指定病人的病情报告。 时钟:提供日期和时间信息的“时钟”。 系统应“定时记录病人情况以形成患者日志” 。
画出下列伪码程序的程序流程图和盒图: START 解:(1)程序流程图 IF p THEN 开始 WHILE q DO F T f p END DO q循环 g ELSE WHILEq BLOCK n f g n q循环 END BLOCK END IF 停止 STOP
24
本节练习
1
p
4 2
q
3
模块p、t、 u更新同一 个数据库
表1 模块接口描述
接口编号 1 2 3 4 输入 飞机类型 飞机零件清单 功能代码 飞机零件清单 控制 输出 状态标志 耦合类型 数据
r
5
s
6
5 6
零件编号 零件编号
零件制造商 零件名称
数据 数据
22
t
u
图1 一个程序的模块互连图
模块p、t、u之间为公共环境耦合
终点:
护士:接收警告信息和病情报告。
10
解:(1)系统的数据源点、终点、处理功能及存储
处理:
接收信号; 分析信号; 产生警告信息信息; 定时取样生理信号; 更新日志; 产生病情报告。
存储:
患者安全范围:医生规定的病人的生理信号安全范围; 患者日志:定时记录病人情况以形成患者日志。
员工信息管理系统含附源代码.doc
西安郵電學院高级语言课程设计报告题目:员工信息管理系统系部名称:电子与信息工程专业名称:电子科学与技术班级:科技 0701班内序号:03学生姓名:刘力源指导教师:黄茹时间:2008年6月9日至2008年6月20日实验题目: 员工信息管理系统一、实验目的1.熟悉c语言的编译连接和运行过程。
2.掌握c语言的数据类型,熟悉整型、实型、字符型变量的定义方式及如何给它们赋值。
3.掌握if语句及switch语句的运用方法及嵌套应用方法。
4.掌握实现循环结构的三种语句while、 do-while.、for 的使用。
5.掌握函数的定义方法和调用方法。
6.能够采用模块化思想调试程序。
二.实验内容1.编写程序并进行调试运行。
2.输入员工资料,并保存于文件。
每个员工包含信息:工作证号、姓名、性别、年龄、担任职务,工资等信息。
3.对已存入的员工信息进行更新操作,包括添加一个员工信息、删除某个员工信息和修改某个员工信息。
4.通过输入姓名、工作证号,年龄的方式查询员工信息。
5.最后输出学生信息,供需要时打印。
二、需求分析1.该程序可用于对员工的雇佣情况基本信息的存储、更新、查询、输出等操作,以实现对员工的管理。
2.其中更新功能包括:添加信息、删除信息、修改信息,可根据需要添加一个或多个员工信息,也可对个别员工信息进行适当的删除或修改,以便随时更新员工信息。
3.程序中设计的查询功能可根据需要从若干数据中查询某个员工信息,并且可根据三种不同的方法查询:按工作证号查询,按年龄查询和按姓名查询。
以满足不同的需要。
四、概要设计1.模块功能说明对各个模块进行功能的描述(1).输入模块:录入需要管理的学生信息并将信息保存于文件中,以方便日后进行打印、读取、更新等操作。
(2).添加模块:可添加一个或多个员工信息,并将所添加员工信息保存,方便查找。
(3).删除模块:可对辞职或被解雇的员工信息做删除处理。
(4).修改模块:可根据需要对多个员工信息进行修改,也可随时对个别项进行修改。
资料信息管理系统
摘要资料管理系统是典型的信息管理系统,其主要开发包括后台数据库的建立和维护,以及前端应用程序的开发两个方面。
对于前者要求建立起数据库一致性和完整性强,数据安全性好的库.而后者则要求应用程序功能完备,易使用等特点。
因此,本人结合资料管理系统的要求,对Visual Foxpro数据库管理系统,VFP 语言原理,VFP数据库技术进行了较深的学习和应用。
主要完成对资料管理系统的要求分析,功能模块划分,并由此设计了数据库结构和应用程序。
系统运行结果证明,本人所设计的资料管理系统可满足借阅者、资料室资料工作人员和高级管理三方面要求。
系统开发采用Microsoft公司的Visual Foxpro 6。
0,利用其强大的可视化界面功能及对数据库的支持,先构造一个原型,逐步增加功能,最终满足需求。
系统中大量采用SQL查询语句,界面友好,功能较强。
不足的地方是当数据访问量大时,将致使性能的下降,且不利于数据的有效共享,在以后改进的中应考虑采用SQL SERVER作为数据库,解决访问速度及数据共享的问题.该系统性能力求易于使用,具有较高的扩展性和可维护性。
关键字:关系数据库Visual Foxpro 6.0 SQL 资料管理系统,系统开发,信息系统目录第一章绪论———---—--———-———-—---——--——-—--—--———--—-—————--—---—-—--————--——-—-——-—-—-———-—-—3第二章系统分析--——-——-———--------—-——-—-—-———-———-—--—-------—---——-———-—---——--————-——--—42。
1系统的初步调查-————----—-—--———-—-———-----—--—---—--—-—-—-——-——-—--———-—-——-——-——52。
2系统的可行性分析—-———-——————-------—————-—--———-—-——-——-----—-—--———-—-———-———-—52.3系统开发步骤---—————--—-——-——-———---——————-----——--—-———--——--——--—-—-———-———-——-—62.4对本系统的分析-——---——-—-—--—--——--———--—-—--—-------—----————--———-—-——---—-———6第三章系统设计—-——----—--——--————--—-———--—-—------——-———-—-——-—-——--————-—---—---—--——-—-73。
[工学]学生信息管理系统完整源码
学生信息管理系统完整源代码注:本系统采用C/S结构,运用Java GUI知识编写,数据库为SQL SERVER 2005,没有采用典型的三级框架结构,所以代码有冗余,仅供参考。
一、数据表及数据源首先创建数据库,包含数据表如下:数据库创建完成后,新建一个名为SIMS的数据源,不会建数据源的同学可以在去搜索创建数据源的详细步骤,这里的数据名称一定要为SIMS,否则在以后程序连接数据库的语句中会出现错误。
二、操作演示三、代码部分创建Java工程,创建名称为SIMS的包,一下Java类均包含在一个包内。
1.登录界面package SIMS;import javax.swing.*;import java.awt.*;import java.awt.event.*;import java.sql.*;import java.text.SimpleDateFormat;import java.util.*;import java.util.Date;public class login extends JFrame implements ActionListener{String userID; //保留用户输入IDString password; //保留用户输入passwordJLabel jlID=new JLabel("用户ID:"); //使用文本创建标签对象 JLabel jlPwd=new JLabel("密码:");JTextField jtID=new JTextField(); //创建ID输入框JPasswordField jpPwd=new JPasswordField(); //创建密码输入框ButtonGroup bg=new ButtonGroup(); //创建ButtonGroup组件对象JPanel jp=new JPanel(); //创建Panel容器JLabel jl=new JLabel();JRadioButton jrb1=new JRadioButton("管理员");JRadioButton jrb2=new JRadioButton("教师");JRadioButton jrb3=new JRadioButton("学生",true);JButton jb1=new JButton("登录");JButton jb2=new JButton("重置");public login(){this.setLayout(null); //设置窗口布局管理器this.setTitle("学生信息管理系统"); //设置窗口标题this.setBounds(200,150,500,300); //设置主窗体位置大小和可见性this.setVisible(true); //设置窗口的可见性this.setResizable(false);jlID.setBounds(150,60,100,20); //设置ID框属性jtID.setBounds(220,60,100,20); //设置ID输入框属性jlPwd.setBounds(150,90,100,20); //设置密码框属性jpPwd.setBounds(220,90,100,20); //设置密码输入框属性jp.setBounds(35,120,400,250); //设置JPanel容器属性jb1.setBounds(160,170,60,20); //设置登录按钮属性jb2.setBounds(250,170,60,20); //设置取消按钮属性jb1.addActionListener(this); //设置登录按钮监听器jb2.addActionListener(this); //设置取消按钮监听器jl.setBounds(340,75,130,20); //设置提示框属性bg.add(jrb1); //将所有空间加入窗体bg.add(jrb2);bg.add(jrb3);this.add(jlID);this.add(jlPwd);this.add(jtID);this.add(jpPwd);this.add(jb1);this.add(jb2);this.add(jl);jp.add(jrb1);jp.add(jrb2);jp.add(jrb3);this.add(jp);centerShell(this);this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);}private void centerShell(JFrame shell) //窗口在屏幕中间显示{//得到屏幕的宽度和高度int screenHeight = Toolkit.getDefaultToolkit().getScreenSize().height;int screenWidth = Toolkit.getDefaultToolkit().getScreenSize().width;//得到Shell窗口的宽度和高度int shellHeight = shell.getBounds().height;int shellWidth = shell.getBounds().width;//如果窗口大小超过屏幕大小,让窗口与屏幕等大if(shellHeight > screenHeight)shellHeight = screenHeight;if(shellWidth > screenWidth)shellWidth = screenWidth;//让窗口在屏幕中间显示shell.setLocation(( (screenWidth - shellWidth) / 2),((screenHeight - shellHeight) / 2) );}public boolean equals(Object obj){ //重写equals方法判断字符串相等if(obj==null)return false;if(this == obj){return true;}if(obj instanceof String) {String str = (String)obj;return str.equals(userID);}return false;}public void actionPerformed(ActionEvent e){userID=jtID.getText(); //获取用户输入IDpassword=jpPwd.getText(); //获取用户输入密码if(e.getSource()==jb1){ //处理登录事件if(userID.equals("") || password.equals("")){jl.setFont(new Font("red",Font.BOLD,12)); //设置提示字体jl.setForeground(Color.red);jl.setText("请输入用户ID和密码");}else{Connection con=null;try{String url="jdbc:odbc:SIMS"; //连接数据库con=DriverManager.getConnection(url,"","");//获取连接字符串Statement stat=con.createStatement();if(jrb1.isSelected())//如果登录选中的管理员{ResultSet rs=stat.executeQuery("select * from Admin"); //判断输入用户名是否存在int flag=0;while(rs.next()){if(rs.getString(1).equals(userID)){flag=1;break;}}if(flag==0){jl.setFont(new Font("red",Font.BOLD,12));//设置提示字体jl.setForeground(Color.red);jl.setText("用户ID不存在");}if(flag==1){ResultSet rss=stat.executeQuery("selectAdmin_Pwd,Admin_Name from Admin where Admin_ID='"+userID+"'");//从表Admin获取信息while(rss.next()){String str=rss.getString(1);if(str.equals(password)){new admin(rss.getString(2));//创建admin窗口this.dispose(); //释放窗体}else{jl.setFont(new Font("red",Font.BOLD,12)); //设置提示字体jl.setForeground(Color.red);jl.setText("密码错误");}}}}else if(jrb2.isSelected()){ResultSet rs=stat.executeQuery("select * from Teacher_Info"); //判断输入用户名是否存在int flag=0;while(rs.next()){if(rs.getString(1).equals(userID)){flag=1;break;}}if(flag==0){jl.setFont(new Font("red",Font.BOLD,12));//设置提示字体jl.setForeground(Color.red);jl.setText("用户ID不存在");}if(flag==1){ResultSet rss=stat.executeQuery("selectTea_Pwd,Tea_Names from Teacher_Info where Tea_ID='"+userID+"'");//从表Teacher_Info获取信息while(rss.next()){String str=rss.getString(1);if(str.equals(password)){new teacher(rss.getString(2),userID);//创建admin窗口this.dispose(); //释放窗体}else{jl.setFont(new Font("red",Font.BOLD,12));//设置提示字体jl.setForeground(Color.red);jl.setText("密码错误");}}}}else if(jrb3.isSelected()){ResultSet rs=stat.executeQuery("select * from Student_Info"); //判断输入用户名是否存在int flag=0;while(rs.next()){if(rs.getString(1).equals(userID)){flag=1;break;}}if(flag==0){jl.setFont(new Font("red",Font.BOLD,12));//设置提示字体jl.setForeground(Color.red);jl.setText("用户ID不存在");}if(flag==1){ResultSet rsss=stat.executeQuery("selectStu_Pwd,Stu_Name from Student_Info where Stu_ID='"+userID+"'");//从表Student_Info获取信息while(rsss.next()){String str=rsss.getString(1);if(str.equals(password)){new student(rsss.getString(2),userID);//创建admin窗口this.dispose(); //释放窗体}else{jl.setFont(new Font("red",Font.BOLD,12));//设置提示字体jl.setForeground(Color.red);jl.setText("密码错误");}}}}}catch(Exception ex){ex.getStackTrace();}finally{try{con.close();}catch(Exception exc){exc.printStackTrace();}}}}else if(e.getSource()==jb2){ //处理登录事件jtID.setText("");jpPwd.setText("");jrb3.setSelected(true);jl.setText("");}}public static void main(String[] args){new login();}}2.添加课程package SIMS;import javax.swing.*;import java.sql.*;import java.awt.*;import java.awt.event.*;public class add_course extends JFrame implements ActionListener{ static add_course ss;String courseID=""; //课程名String coursename=""; //课程名String count=""; //课时JLabel warning=new JLabel(); //输入信息提示框JLabel title=new JLabel();JLabel note1=new JLabel("*");JLabel note2=new JLabel("*");JLabel jlcourseID=new JLabel("课程号:"); //使用文本框创建标签对象JLabel jlcoursename=new JLabel("课程名:");JLabel jlcount=new JLabel("课时:");JTextField jtcourseID=new JTextField(); //创建文本框对象JTextField jtcoursename=new JTextField();JTextField jtcount=new JTextField();JButton submit=new JButton("添加"); //创建按钮对象JButton reset=new JButton("重置");public add_course(){ //添加教师账号信息this.setTitle("添加课程信息"); //设置窗口标题this.setLayout(null); //设置窗口布局管理器this.add(jlcourseID); //将控件添加到窗体this.add(title);this.add(jlcoursename);this.add(jlcount);this.add(jtcourseID);this.add(jtcoursename);this.add(jtcount);this.add(note1);this.add(note2);this.add(submit);this.add(reset);this.add(warning);title.setFont(new Font("red",Font.BOLD,15)); //设置提示字体title.setForeground(Color.red);note1.setFont(new Font("red",Font.BOLD,20)); //设置提示字体note1.setForeground(Color.red);note2.setFont(new Font("red",Font.BOLD,20)); //设置提示字体note2.setForeground(Color.red);warning.setFont(new Font("red",Font.BOLD,12)); //设置提示字体warning.setForeground(Color.red);title.setText("添加课程信息"); //设置控件及窗体位置大小title.setBounds(222,20,150,20);jlcourseID.setBounds(180,80,100,20);jlcoursename.setBounds(180,140,100,20);jlcount.setBounds(180,200,100,20);jtcourseID.setBounds(250,80,140,20);jtcoursename.setBounds(250,140,140,20);jtcount.setBounds(250,200,140,20);note1.setBounds(400,80,140,20);note2.setBounds(400,140,140,20);submit.setBounds(200,270,60,20);reset.setBounds(300,270,60,20);warning.setBounds(420,140,150,20); //设置提示框位置大小submit.addActionListener(this); //添加监听器reset.addActionListener(this);this.setSize(600,400); //设置窗体大小centerShell(this); //设置窗口位置在屏幕中央this.setResizable(false); //设置窗体不可变大小this.setVisible(true); //设置窗口可见性this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);}public boolean equals(Object obj){ //重写equals方法判断字符串相等if(obj==null)return false;if(this == obj){return true;}if(obj instanceof String) {String str = (String)obj;return str.equals(courseID);}return false;}public void actionPerformed(ActionEvent e){courseID=jtcourseID.getText(); //获取用户输入内容coursename=jtcoursename.getText();count=jtcount.getText();int temp=0,flag=0;Connection con=null;if(e.getSource()==submit){ //判断是否已输入必填信息if(courseID.equals("") || coursename.equals("")){warning.setText("请输入必填信息");}else{try{String url="jdbc:odbc:SIMS"; //连接数据库con=DriverManager.getConnection(url,"",""); //获取连接字符串Statement stat=con.createStatement();ResultSet rs=stat.executeQuery("select Course_ID from Course");while(rs.next()){if(rs.getString(1).equals(courseID)){warning.setText("课程ID已存在");flag=1; //判断用户名唯一break;}}if(flag!=1){if(!count.equals("")){temp=stat.executeUpdate("insert intoCourse(Course_ID,Course_Name,Course_Count)values('"+courseID+"','"+coursename+"','"+count+"')");}else{temp=stat.executeUpdate("insert intoCourse(Course_ID,Course_Name) values('"+courseID+"','"+coursename+"')");}}if(temp==1){JOptionPane.showMessageDialog(ss,"添加成功");warning.setText("");}else{JOptionPane.showMessageDialog(ss,"添加失败");}}catch(Exception ex){ex.getStackTrace();}}}else if(e.getSource()==reset){warning.setText("");jtcourseID.setT ext("");jtcoursename.setText("");jtcount.setText("");}}private void centerShell(JFrame shell) //窗口在屏幕中间显示{//得到屏幕的宽度和高度int screenHeight = Toolkit.getDefaultToolkit().getScreenSize().height;int screenWidth = Toolkit.getDefaultToolkit().getScreenSize().width;//得到Shell窗口的宽度和高度int shellHeight = shell.getBounds().height;int shellWidth = shell.getBounds().width;//如果窗口大小超过屏幕大小,让窗口与屏幕等大if(shellHeight > screenHeight)shellHeight = screenHeight;if(shellWidth > screenWidth)shellWidth = screenWidth;//让窗口在屏幕中间显示shell.setLocation(((screenWidth - shellWidth)/ 2),((screenHeight - shellHeight)/2));}}3.添加学生package SIMS;import javax.swing.*;import java.sql.*;import java.awt.*;import java.awt.event.*;public class add_student extends JFrame implements ActionListener{static add_teacher ss;String userID=""; //用户名String pwd1=""; //密码String pwd2=""; //确认密码String getsdept=""; //院系String name=""; //姓名JLabel warning=new JLabel(); //输入信息提示框JLabel title=new JLabel();JLabel note1=new JLabel("*");JLabel note2=new JLabel("*");JLabel note3=new JLabel("*");JLabel jlID=new JLabel("学号:"); //创建文本框对象 JLabel jlName=new JLabel("姓名:");JLabel jlPwd=new JLabel("密码:");JLabel jlPwd2=new JLabel("确认密码:");JLabel sdept=new JLabel("学院:");JTextField jtID=new JTextField();JTextField jtName=new JTextField();JPasswordField jtPwd=new JPasswordField ();JPasswordField jtPwd2=new JPasswordField ();JTextField jtsdept=new JTextField();JButton submit=new JButton("添加"); //创建按钮对象JButton reset=new JButton("重置");public add_student(){this.setTitle("添加学生账号信息"); //设置窗口标题this.setLayout(null); //设置窗口布局管理器this.add(jlID); //将控件添加到窗体this.add(title);this.add(jlName);this.add(jlPwd);this.add(jlPwd2);this.add(sdept);this.add(jtID);this.add(jtName);this.add(jtPwd);this.add(jtPwd2);this.add(jtsdept);this.add(note1);this.add(note2);this.add(note3);this.add(submit);this.add(reset);this.add(warning);title.setFont(new Font("red",Font.BOLD,15)); //设置提示字体title.setForeground(Color.red);note1.setFont(new Font("red",Font.BOLD,20)); //设置提示字体note1.setForeground(Color.red);note2.setFont(new Font("red",Font.BOLD,20)); //设置提示字体note2.setForeground(Color.red);note3.setFont(new Font("red",Font.BOLD,20)); //设置提示字体note3.setForeground(Color.red);warning.setFont(new Font("red",Font.BOLD,12)); //设置提示字体warning.setForeground(Color.red);title.setText("添加学生账号信息");title.setBounds(222,20,150,20);jlID.setBounds(180,60,100,20);jlName.setBounds(180,100,100,20);jlPwd.setBounds(180,140,100,20);jlPwd2.setBounds(180,180,100,20);sdept.setBounds(180,220,100,20);jtID.setBounds(250,60,140,20);jtName.setBounds(250,100,140,20);jtPwd.setBounds(250,140,140,20);jtPwd2.setBounds(250,180,140,20);jtsdept.setBounds(250,220,140,20);note1.setBounds(400,60,140,20);note2.setBounds(400,140,140,20);note3.setBounds(400,180,140,20);submit.setBounds(200,270,60,20);reset.setBounds(300,270,60,20);warning.setBounds(420,100,150,20);submit.addActionListener(this);reset.addActionListener(this);this.setSize(600,400);centerShell(this);this.setVisible(true);this.setResizable(false); //设置窗体不可变大小this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);}public boolean equals(Object obj){ //重写equals方法判断字符串相等if(obj==null)return false;if(this == obj){return true;}if(obj instanceof String) {String str = (String)obj;return str.equals(pwd1);}return false;}public void actionPerformed(ActionEvent e){userID=jtID.getText(); //获取用户输入内容pwd1=jtPwd.getText();pwd2=jtPwd2.getText();getsdept=jtsdept.getText();name=jtName.getText();int temp=0,flag=0;Connection con=null;if(e.getSource()==submit){if(userID.equals("") || pwd1.equals("") || pwd2.equals("")){ //判断是否已输入必填信息warning.setText("请输入必填信息");}else if(!pwd1.equals(pwd2)){ //判断两次输入密码是否相同warning.setText("两次输入密码不相同");}else{try{String url="jdbc:odbc:SIMS"; //连接数据库con=DriverManager.getConnection(url,"",""); //获取连接字符串Statement stat=con.createStatement();ResultSet rs=stat.executeQuery("select Stu_ID from Student_Info");while(rs.next()){if(rs.getString(1).equals(userID)){warning.setText("用户ID已存在");flag=1; //判断用户名唯一break;}}if(flag!=1){if(!name.equals("") && !getsdept.equals("")){temp=stat.executeUpdate("insert intoStudent_Info(Stu_ID,Stu_Name,Stu_Pwd,Depart)values('"+userID+"','"+name+"','"+pwd1+"','"+getsdept+"')");}else if(!name.equals("") && getsdept.equals("")){temp=stat.executeUpdate("insert intoStudent_Info(Stu_ID,Stu_Name,Stu_Pwd) values('"+userID+"','"+name+"','"+pwd1+"')");}else if(name.equals("") && !getsdept.equals("")){temp=stat.executeUpdate("insert intoStudent_Info(Stu_ID,Stu_Pwd,Depart) values('"+userID+"','"+pwd1+"','"+getsdept+"')");}else{temp=stat.executeUpdate("insert intoStudent_Info(Stu_ID,Stu_Pwd) values('"+userID+"','"+pwd1+"')");}}if(temp==1){JOptionPane.showMessageDialog(ss,"添加成功");}else{JOptionPane.showMessageDialog(ss,"添加失败");}}catch(Exception ex){ex.getStackTrace();}}}else if(e.getSource()==reset){ //重置所有控件warning.setText("");jtID.setText("");jtName.setText("");jtPwd.setText("");jtPwd2.setText("");jtsdept.setText("");}}private void centerShell(JFrame shell) //窗口在屏幕中间显示{//得到屏幕的宽度和高度int screenHeight = Toolkit.getDefaultToolkit().getScreenSize().height;int screenWidth = Toolkit.getDefaultToolkit().getScreenSize().width;//得到Shell窗口的宽度和高度int shellHeight = shell.getBounds().height;int shellWidth = shell.getBounds().width;//如果窗口大小超过屏幕大小,让窗口与屏幕等大if(shellHeight > screenHeight)shellHeight = screenHeight;if(shellWidth > screenWidth)shellWidth = screenWidth;//让窗口在屏幕中间显示shell.setLocation(((screenWidth - shellWidth)/ 2),((screenHeight - shellHeight)/2));}//public static void main(String args[]){// new add_student();//}}4.添加教师package SIMS;import javax.swing.*;import java.sql.*;import java.awt.*;import java.awt.event.*;public class add_teacher extends JFrame implements ActionListener{static add_teacher ss;String userID=""; //用户名String pwd1=""; //密码String pwd2=""; //确认密码String getsdept=""; //院系String name=""; //姓名JLabel warning=new JLabel(); //输入信息提示框JLabel title=new JLabel();JLabel note1=new JLabel("*");JLabel note2=new JLabel("*");JLabel note3=new JLabel("*");JLabel jlID=new JLabel("教工号:"); //使用文本框创建标签对象 JLabel jlName=new JLabel("姓名:");JLabel jlPwd=new JLabel("密码:");JLabel jlPwd2=new JLabel("确认密码:");JLabel sdept=new JLabel("学院:");JTextField jtID=new JTextField(); //创建文本框对象JTextField jtName=new JTextField();JPasswordField jtPwd=new JPasswordField ();JPasswordField jtPwd2=new JPasswordField ();JTextField jtsdept=new JTextField();JButton submit=new JButton("添加"); //创建按钮对象JButton reset=new JButton("重置");public add_teacher(){ //添加教师账号信息this.setTitle("添加教师账号信息"); //设置窗口标题this.setLayout(null); //设置窗口布局管理器this.add(jlID); //将控件添加到窗体this.add(title);this.add(jlName);this.add(jlPwd);this.add(jlPwd2);this.add(sdept);this.add(jtID);this.add(jtName);this.add(jtPwd);this.add(jtPwd2);this.add(jtsdept);this.add(note1);this.add(note2);this.add(note3);this.add(submit);this.add(reset);this.add(warning);title.setFont(new Font("red",Font.BOLD,15)); //设置提示字体title.setForeground(Color.red);note1.setFont(new Font("red",Font.BOLD,20)); //设置提示字体note1.setForeground(Color.red);note2.setFont(new Font("red",Font.BOLD,20)); //设置提示字体note2.setForeground(Color.red);note3.setFont(new Font("red",Font.BOLD,20)); //设置提示字体note3.setForeground(Color.red);warning.setFont(new Font("red",Font.BOLD,12)); //设置提示字体warning.setForeground(Color.red);title.setText("添加教师账号信息"); //设置控件及窗体位置大小title.setBounds(222,20,150,20);jlID.setBounds(180,60,100,20);jlName.setBounds(180,100,100,20);jlPwd.setBounds(180,140,100,20);jlPwd2.setBounds(180,180,100,20);sdept.setBounds(180,220,100,20);jtID.setBounds(250,60,140,20);jtName.setBounds(250,100,140,20);jtPwd.setBounds(250,140,140,20);jtPwd2.setBounds(250,180,140,20);jtsdept.setBounds(250,220,140,20);note1.setBounds(400,60,140,20);note2.setBounds(400,140,140,20);note3.setBounds(400,180,140,20);submit.setBounds(200,270,60,20);reset.setBounds(300,270,60,20);warning.setBounds(420,100,150,20); //设置提示框位置大小submit.addActionListener(this); //添加监听器reset.addActionListener(this);this.setSize(600,400); //设置窗体大小centerShell(this); //设置窗口位置在屏幕中央this.setResizable(false); //设置窗体不可变大小this.setVisible(true); //设置窗口可见性this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);}public boolean equals(Object obj){ //重写equals方法判断字符串相等if(obj==null)return false;if(this == obj){return true;}if(obj instanceof String) {String str = (String)obj;return str.equals(pwd1);}return false;}public void actionPerformed(ActionEvent e){userID=jtID.getText(); //获取用户输入内容pwd1=jtPwd.getText();pwd2=jtPwd2.getText();getsdept=jtsdept.getText();name=jtName.getText();int temp=0,flag=0;Connection con=null;if(e.getSource()==submit){ //判断是否已输入必填信息if(userID.equals("") || pwd1.equals("") || pwd2.equals("")){warning.setText("请输入必填信息");}else if(!pwd1.equals(pwd2)){ //判断两次输入密码是否一致warning.setText("两次输入密码不相同");}else{try{String url="jdbc:odbc:SIMS"; //连接数据库con=DriverManager.getConnection(url,"",""); //获取连接字符串Statement stat=con.createStatement();ResultSet rs=stat.executeQuery("select Tea_ID from Teacher_Info");while(rs.next()){if(rs.getString(1).equals(userID)){warning.setText("用户ID已存在");flag=1; //判断用户名唯一break;}}if(flag!=1){if(!name.equals("") && !getsdept.equals("")){temp=stat.executeUpdate("insert intoTeacher_Info(Tea_ID,Tea_Names,T ea_Pwd,Depart)values('"+userID+"','"+name+"','"+pwd1+"','"+getsdept+"')");}else if(!name.equals("") && getsdept.equals("")){temp=stat.executeUpdate("insert intoTeacher_Info(Tea_ID,Tea_Names,T ea_Pwd)values('"+userID+"','"+name+"','"+pwd1+"')");}else if(name.equals("") && !getsdept.equals("")){temp=stat.executeUpdate("insert intoTeacher_Info(Tea_ID,Tea_Pwd,Depart) values('"+userID+"','"+pwd1+"','"+getsdept+"')");}else{temp=stat.executeUpdate("insert intoTeacher_Info(Tea_ID,Tea_Pwd) values('"+userID+"','"+pwd1+"')");}}if(temp==1){JOptionPane.showMessageDialog(ss,"添加成功");}else{JOptionPane.showMessageDialog(ss,"添加失败");}}catch(Exception ex){ex.getStackTrace();}}}else if(e.getSource()==reset){warning.setText("");jtID.setText("");jtName.setText("");jtPwd.setText("");jtPwd2.setText("");jtsdept.setText("");}}private void centerShell(JFrame shell) //窗口在屏幕中间显示{//得到屏幕的宽度和高度int screenHeight = Toolkit.getDefaultToolkit().getScreenSize().height;int screenWidth = Toolkit.getDefaultToolkit().getScreenSize().width;//得到Shell窗口的宽度和高度int shellHeight = shell.getBounds().height;int shellWidth = shell.getBounds().width;//如果窗口大小超过屏幕大小,让窗口与屏幕等大if(shellHeight > screenHeight)shellHeight = screenHeight;if(shellWidth > screenWidth)shellWidth = screenWidth;//让窗口在屏幕中间显示shell.setLocation(((screenWidth - shellWidth)/ 2),((screenHeight - shellHeight)/2));}// public static void main(String[] args){// new add_teacher();// }}5.添加授课信息package SIMS;import javax.swing.*;import java.sql.*;import java.awt.*;import java.awt.event.*;public class add_tc extends JFrame implements ActionListener{static add_tc ss;String courseID=""; //课程名String teachername=""; //课程名JLabel warning=new JLabel(); //输入信息提示框JLabel title=new JLabel();JLabel note1=new JLabel("*");JLabel note2=new JLabel("*");JLabel jlcourseID=new JLabel("课程号:"); //使用文本框创建标签对象JLabel jlteachername=new JLabel("教师号:");JTextField jtcourseID=new JTextField(); //创建文本框对象JTextField jtteachername=new JTextField();JButton submit=new JButton("添加"); //创建按钮对象JButton reset=new JButton("重置");public add_tc(){ //添加授课信息this.setTitle("添加授课信息"); //设置窗口标题this.setLayout(null); //设置窗口布局管理器this.add(jlcourseID); //将控件添加到窗体this.add(jlteachername);this.add(title);this.add(jtcourseID);this.add(jtteachername);this.add(note1);this.add(note2);this.add(submit);this.add(reset);this.add(warning);title.setFont(new Font("red",Font.BOLD,15)); //设置提示字体title.setForeground(Color.red);note1.setFont(new Font("red",Font.BOLD,20)); //设置提示字体note1.setForeground(Color.red);note2.setFont(new Font("red",Font.BOLD,20)); //设置提示字体note2.setForeground(Color.red);warning.setFont(new Font("red",Font.BOLD,12)); //设置提示字体warning.setForeground(Color.red);title.setText("添加授课信息"); //设置控件及窗体位置大小title.setBounds(222,20,150,20);jlcourseID.setBounds(180,80,100,20);jlteachername.setBounds(180,140,100,20);jtcourseID.setBounds(250,80,140,20);jtteachername.setBounds(250,140,140,20);note1.setBounds(400,80,140,20);note2.setBounds(400,140,140,20);submit.setBounds(200,250,60,20);reset.setBounds(300,250,60,20);warning.setBounds(420,140,150,20); //设置提示框位置大小submit.addActionListener(this); //添加监听器reset.addActionListener(this);this.setSize(600,400); //设置窗体大小centerShell(this); //设置窗口位置在屏幕中央this.setResizable(false); //设置窗体不可变大小this.setVisible(true); //设置窗口可见性this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);}public boolean equals(Object obj){ //重写equals方法判断字符串相等if(obj==null)return false;if(this == obj){return true;}if(obj instanceof String) {String str = (String)obj;return str.equals(courseID);}return false;}public void actionPerformed(ActionEvent e){courseID=jtcourseID.getText(); //获取用户输入内容teachername=jtteachername.getText();int temp=0,flag1=0,flag2=0,flag3=0;Connection con=null;if(e.getSource()==submit){ //判断是否已输入必填信息if(courseID.equals("") || teachername.equals("")){warning.setText("请输入必填信息");}else{try{String url="jdbc:odbc:SIMS"; //连接数据库con=DriverManager.getConnection(url,"",""); //获取连接字符串Statement stat=con.createStatement();ResultSet rs=stat.executeQuery("select Course_ID from Course");while(rs.next()){if(rs.getString(1).equals(courseID)){flag1=1; //判断课程ID存在break;}}ResultSet rss=stat.executeQuery("select Tea_ID fromTeacher_Info");while(rss.next()){if(rss.getString(1).equals(teachername)){flag2=1; //判断教师ID存在break;}}if(flag1!=1){warning.setText("课程ID不存在");}else if(flag2!=1){warning.setText("教师ID不存在");}ResultSet rsss=stat.executeQuery("select Course_ID,T ea_ID from tc");while(rsss.next()){if(rsss.getString(1).equals(courseID) &&rsss.getString(2).equals(teachername)){flag3=1;warning.setText("授课信息重复");。
网络与信息安全管理员考试题(含参考答案)
网络与信息安全管理员考试题(含参考答案)1、在Linux系统中,用户对文件的访问能力由()决定。
A、文件权限B、文件内容C、文件信息D、用户所属组答案:A2、数据备份是容灾的基础,是指为防止系统出现操作失误或系统故障导致数据()。
A、转发B、延迟C、丢失D、恢复答案:C3、1KB表示( ) 。
A、1000位B、1024位C、1000字节D、1024字节答案:B4、下面四种端口状态中,哪种状态不是快速生成树协议所维护的端口状态()A、BlockingB、ForwardingC、ListeningD、Learning答案:C5、信息内容安全事件是指()。
A、信息篡改事件、信息假冒事件、信息泄露事件、信息窃取事件、信息丢失事件和其他信息破坏事件B、不能归类的网络安全事件C、通过网络传播法律法规禁止信息,组织非法串联、煽动集会游行或炒作敏感问题并危害国家安全、社会稳定和公众利益的事件D、信息篡改事件、信息假冒事件、信息泄露事件、信息窃取事件、信息丢失事件和其他信息破坏事件答案:C6、哪个工具能够准确地测定电缆故障的位置()。
A、数字式电缆分析仪B、网络万用表C、电缆测试D、网络监视程序答案:A7、以下不属于链路聚合优点的是()。
A、扩展链路带宽B、实现物理端口上的负载均衡C、自动链路冗余备份D、避免交换环路答案:D8、Telnet定义一个网络()为远程系统提供一个标准接口。
A、接口B、显示终端C、设备D、虚拟终端答案:D9、扫描器应该有三项功能:发现一个主机或网络的能力;一旦发现一台主机,有发现什么服务正运行在这台主机上的能力;通过测试这些服务,发现漏洞的能力,下面哪个不属于端口扫描的经典方法()。
A、TCP半连接扫描B、IP反转标识扫描C、TCP全连接扫描D、FTP跳跃扫描答案:B10、网络互联设备系统命令采用分级保护方式,最高级别是()。
A、1B、0C、15D、10答案:C11、拒绝服务攻击原理简单、实施容易,但是却难以防范,特别是与Botnet网络结合后,其攻击能力大大提高。
网络与信息安全管理员(工业互联网安全)理论试题及答案
网络与信息安全管理员(工业互联网安全)一、单选题L中央国家安全领导机构负责国家数据安全工作的决策和议事协调,研究制定、指导实施()和有关重大方针政策,统筹协调国家数据安全的重大事项和重要工作,建立国家数据安全工作协调机制。
()[单选题]*A s网络安全法B、数据安全相关标准C、国家数据安全战略√D、数据安全法2 ,《中华人民共和国网络安全法》规定,网络运营者应当制定(),及时处置系统漏洞、计算机病毒、网络攻击、网络侵入等安全风险。
()[单选题]*A s网络安全应急演练方案B、网络安全规章制度√C、网络安全事件应急预案D s网络安全事件补救措施3,根据《工业互联网标识管理办法》要求,标识服务机构应当建立网络安全防护技术手段,依法记录并留存标识注册日志、标识解析日志、维护日志和变更记录,各日志留存时长不少于()个月,保障标识服务的质量和标识服务系统安全()[单选题]*A s 3B s6√c、9D s 124 .()的正式印发,成为我国工业互联网发展的纲领性文件。
()[单选题]*A、《中华人民共和国网络安全法》B、《关于深化〃互联网+先进制造业〃发展工业互联网的指导意见》√C、《工业互联网发展行动计划(2021-2023年)》D s《推动工业互联网加快发展的通知》5 .在下列标准中,属于强制性标准的是,()[单选题]*A s GB40050-2021网络关键设备安全通用要求VB、GB/T22239-2019信息安全技术网络安全等级保护基本要求C、GB/Z41288-2022信息安全技术重要工业控制系统网络安全防护导则D s YC/T580-2019烟草行业工业控制系统网络安全基线技术规范6 .以下属于GB/T20986-2023《信息安全技术网络安全事件分类分级指南》所规定的信息安全事件类型的是。
①有害程序事件②设备设施故障③信息破坏事件④信息内容安全事件。
()[单选题]*A s①②B、①③④C、①②④D s①②③④V7 .〃工业互联网'’的概念首次是由()提出。
公共卫生信息系统
目前公共卫生存在的问题
自然灾害
海啸、地震、飓风、台风、龙 卷风、泥石流、雪灾
目前公共卫生存在的问题
生产事故
目前公共卫生存在的问题
农药中毒:生产性和非生产性 食物中毒:
SARS时期公共卫生系统状况
①市场化和政府责任的界限不明确 ②公共卫生信息系统不灵敏 ③缺乏对突发事件的应急机制和预案 ④公共卫生预防和服务收效微弱 ⑤公共卫生系统的基础建设薄弱
8.5 5.3
发病
4.9 2.2
入院
常规监测 SARS专报
3.5 1.6
确诊
报告卡管理
个案信息报告 传染病监测信息报告系统功能树
查询、修改、订正 重卡筛查
传染病监测 信息报告系统
实时统计
统计分析
数据字典
报告审核 分地区统计 分年龄、职业统计 疫情分析 定时报表 行政区划代码 疾病分类代码 报告单位代码
病例 死亡
数
数
8 7 30 1 47 132 3 2 1 1 3 25 12 106 378
5 7 20 0 20 107 2 2 0 1 1 17 4 52 238
目前公共卫生存在的问题
传统传染病的复燃
血吸虫 结核 性病
目前公共卫生存在的问题
人口移动性增加 职业病
目前公共卫生存在的问题
人们生活模式转变 恶性肿瘤 慢性病
公共卫生监督内容
食品卫生 职业卫生
职业病报告 尘肺报告 环境卫生 放射卫生 学校卫生
保健食品 化妆品 涉水产品 公共场所 农药中毒
公共卫生监督方法
预防性公共卫生监测 常规性公共卫生活动监测 公共卫生事件过程跟踪
公共卫生事件发生 事件过程动态监督 事件处理结局
《Linux系统应用与开发教程》所有课后习题和答案
《Linux系统应用与开发教程》所有课后习题和答案第1章 Linux概述 (1)第2章 shell及常用命令 (4)第3章 vi编辑器的使用 (7)第4章 X Window系统的使用 (9)第5章 Linux系统的常用软件 (11)第6章硬件管理 (11)第7章网络基本配置 (12)第8章常用网络服务的配置和使用 (15)第9章系统管理与监控 (19)第10章 Linux系统的安全管理 (21)第11章shell程序设计 (24)第12章gcc的使用与开发 (26)第13章gtk+图形界面程序设计 (27)第14章Qt图形界面程序设计 (28)第15章集成开发环境KDeve lop的使用 (31)第1章 Linux概述1.什么是Lin ux?Linux是一套免费使用和自由传播的类UN IX操作系统,源代码开放,能运行于各类硬件平台,包括Inte l x86系列和RISC处理器。
这个系统是由世界各地成千上万的程序员设计和实现的。
其目的是建立不受任何商品化软件的版权制约的、全世界都能自由使用的U NIX兼容产品。
2. Linux有哪些特性?(1)开放性(2)多用户(3)多任务(4)良好的用户界面(5)设备独立性(6)丰富的网络功能(7)可靠的系统安全(8)良好的可移植性3. Linux与Windo ws操作系统的主要区别是什么?(1)从发展的背景看,Linux是从一个比较成熟的操作系统发展而来的,而其他操作系统,如Windo ws等,都是自成体系,无对应的相依托的操作系统(2)从使用费用上看,Linux是一种开放、免费的操作系统,Window s是封闭的系统,需要有偿使用。
(3)Linux上丰富的应用软件也是自由的,而在Wind ows下,几乎所有的软件都有独立的版权,需要购买使用,即使某些软件可以免费使用,也一般不提供其源代码,更不用说由用户修改扩充其功能了。
ACCESS人事管理信息系统设计与实现
目录目录........................................... 错误!未指定书签。
第一章:绪论1.1课题背景管理信息系统(ManagementInformationSystem),在强调管理,强调信息的现代社会中它变得越来越普及。
MIS是一门新的学科,它跨越了若干个领域,比如管理科学、系统科学,运筹学、统计学以及计算机科学。
在这些学科的基础上,形成信息收集和加工的方法,从而形成一个纵横交织的系统。
1.1.1管理信息系统的发展历史信息作为生产力中最活跃的因素,很早就在人类经济生活中发挥着不可替代的作用,但把信息纳入企业经营管理系统中高效处理和应用是在计算机发明以后的50年代末。
目前人们所提到的管理信息系统,通常是指以计算机为工具,对管理信息进行收集、存贮、检索、加工和传递,使其应用于组织机构及企业管理领域的“人-机系统”,该系统是70年代初“后工业经济”时代的产物,在企业管理信息系统在其发展的初期,是单一的人—机系统,系统功能简单,效率低,对管理的作用有限。
进入20世纪80年代末,随着计算机网络和通信技术的大力发展,企业管理信息系统进入网络化的发展时期。
世界发达国家已建立起了完善的先进的管理信息系统体系,在其社会经济发展领域中发挥着巨大的作用。
管理信息系统的开发方式管理信息系统的开发方式主要有独立开发方式、委托开发方式、合作开发方式、购买现成软件方式等4种。
这4种开发方式各有优点和不足,需要根据使用单位的技术力量、资金情况、外部环境等各种因素进行综合考虑和选择。
不论哪种开放方式都需要有单位的领导和业务人员参加,并在管理信息系统的整个开发过程中培养、锻炼、壮大该系统的维护队伍。
1.2课题研究的目的与意义信息社会的高科技,商品经济化的高效益,使计算机的应用已普及到经济和社会生活的各个领域。
计算机虽然与人类的关系愈来愈密切,还有人由于计算机操作不方便继续用手工劳动。
为了适应现代社会人们高度强烈的时间观念,宾馆管理系统软件为管理人员带来了极大的方便。
电子政务业务应用系统安全检测技术
测 试
➢ 界面测试:功能验证、操作控制验证、操作连动验证
内 ➢ 流程测试:基本流程、分支覆盖、组合覆盖、业务场景
容 ➢ 文档测试:内容全面、指导正确
测试方法
• 冒烟测试 • 静态检查 • 流程模拟测试 • 业务模拟测试 • 场景模拟测试
• 异常操作测试 • 集成测试 • 代码走查 • 体验测试
测试工具
• 极限测试 • 恢复性测试 • 大数据量测试
测试工具
➢ LoadRunner
功能强大、支持协议多、可集群加载 压力、通用性强。
➢ Jmeter
轻巧快捷、脚本开发容易、可跨平台 操作。
➢ Nmon
详细的Linux、AIX等系统的资源监控 。
➢ Ruby
单文件编程、方便管理、脚本易学易 用。
02、软件功能性能测试 与检测服务
(5)软件测试服务的全景图
被 移动终端 应用软件 信息安全
测
领 中间件软件 Web服务 系统数据
域
移动互联 云计算
质量需求
质量标准 软件需求
开发输出
验收测试
功能测试 界面测试 文档测试 易用性测试 性能测试
测试服务
系统测试
功能测试 可靠性测试 易用性测试 性能测试 可移植性测试
集成测试
接口测试 可靠性测试
测试方法
• 标准请求测试 • 挡板测试 • 开发驱动和桩
• 接口性能测试 • 接口并发测试 • 接口大数据量测试
测试工具
➢ SoapUI
快速创建和执行自动化功能,提 供完整的测试覆盖,支持所有的标准 协议和技术。
02、软件功能性能测试 与检测服务
(6)软件测试服务内容——兼容性
➢ 多系统兼容性测试
文献信息源
括封面和封底在内49 页以上的印刷品,具有特定的书名和著者名, 编有国际标准书号,有定价并取得版权保护的出版物称为图书。”
上一页 下一页 返回
1.1 文 献
• 图书按其功用可分为阅读类和工具类两种。阅读类图书一般论章成册 ,是各种出版物中历史最悠久的一种,主要包括专著、科普读物、教 科书和丛书等,书中所包含的信息是作者就某一个问题形成的系统的 、科学的认识,并对它进行详细、系统的论述。所以图书中所包含的 信息比其他形式的文献更成熟、更稳定、更可靠。如果要全面、系统 地了解某一问题,或对不熟悉的领域作初步了解,或者就某一问题要 了解前人的研究成果,图书是最合适的信息源。工具类图书包括词典 、百科全书、年鉴、手册等。它提供的是各种经过验证、浓缩的离散 型信息,主要用于各种数据和事实检索,一般可直接从中找到问题的 答案。图书的最大特点是内容成熟、系统,可靠性强。但出版周期较 长,报道速度慢,内容有一定的滞后性。因此它只适用于系统学习, 一般不能获得最新信息。
上一页 下一页 返回
1.1 文 献
• 4)声像型 • 也称为视听资料或直感资料。以磁性材料、感光材料为载体,以录音
、录像、摄影作为记录手段,脱离文字,直接记录声音信息或图像信 息形成的文献。如唱片、录音带、幻灯片、电影片、录像带等。不同 于文字形式的文献,声像型文献会给人很直观的感受,它使人容易理 解和认识某些复杂的、难以用文字表达的自然现象,在探索物质结构 和运动机制、观察事物和传播知识等方面有特殊的功效,在教学、科 研等方面有其独特的作用。 • 5)电子型 • 又称机读型或数字型文献。它是以磁性材料或光学材料为载体,通过 编码程序设计将文献转换成数字语言输入计算机并存储在相应的磁介 质或光介质中,阅读时再利用计算机输出的一种文献,如电子图书、 电子期刊、电子新闻等。
软件工程课程设计-停车管理系统(包含源代码)
学年设计课程名称:软件工程学年设计实验项目:停车场收费管理系统姓名:XXX专业:计算机科学与技术班级:XXX学号:XXXX指导教师XXX计算机科学与技术学院实验教学中心XXXX年XX月XX日摘要目前,我国经济逐渐发达,自行车王国逐步向汽车进军。
因此,大量的停车场也随之而至。
虽然某些大型停车场在工作中已经开始向计算机化靠拢,但仍不够完善。
而中小型停车场更为稀少,陈旧的管理手段给顾客带来极大的不便,同时为了提高工作效率及服务质量,一套完整的停车厂管理系统的出现就十分必要了。
本次设计,仅为一个简单的小型停车场管理系统。
采用C语言编写,为dos 界面。
主要强调车辆的进站和出站操作,以及车场和通道之间的相互关系。
根据车场内车道狭长且为一边开口的特点,将车道用先进后出的栈结构来描述。
外面狭长的通道,为先进先出,可采用队列结构,为方便起见,采用链式队列结构来描述。
本程序中的数据对象是汽车,为使操作更方便,将给每辆进车道的汽车编号,根据编号出场。
其中,还包括入场时间、出厂时间、收取费用等项。
关键字:停车场管理系统栈结构队列结构软件工程目录1需求分析 (4)1.1 引言 (4)1.1.1 设计目的 (4)1.1.2 任务概述 (4)1.2 基本要求 (4)1.3 系统用户分析 (4)1.4 用数据流程图描述 (5)2概要设计 (7)2.1设计思想 (7)2.2 实现方法 (7)2.3 主要模块 (7)2.4各模块的主要功能及实现 (8)2.2.1车辆到达模块 (8)2.2.2车辆离开模块 (8)2.2.3停车场内与通道停放车辆的信息模块 (8)2.2.4获取时间 (9)2.5 函数间调用关系 (9)3详细设计 (11)3.1界面及各模块详细设计 (11)4系统测试 (13)4.1 功能测试 (13)4.1.1 车进站时车牌号的测试 (13)5总结 (15)5.1 用户手册 (15)5.2 设计体会 (15)参考文献 (16)附 (17)1需求分析1.1引言1.1.1设计目的a.通过课程设计,加深对软件工程思想的理解,能对系统功能进行分析,并设计合理的模块化结构。
20个python3大项目开发源代码(附源码)
在此文中,我们将为您介绍20个Python3大型项目开发的源代码,以帮助您了解Python3的应用和实际项目开发。
以下是这20个Python3大型项目开发源代码的详细内容:1. 人脸识别系统- 该项目使用Python3编写,利用OpenCV和Dlib库实现人脸识别功能。
它可以识别图像和视频中的人脸,并进行特征提取和匹配。
2. 文件同步工具- 这个项目使用Python3编写,可以实现不同计算机之间的文件同步。
它可以检测文件的新增、删除和修改,并及时同步到其他设备。
3. 聊天机器人- 该项目利用Python3编写,使用自然语言处理技术和机器学习算法,实现了一个智能聊天机器人。
它可以回答一般性问题,处理用户输入的文本,并给出相应的回复。
4. 数据可视化工具- 这个项目采用Python3编写,利用Matplotlib和Seaborn库实现数据可视化功能。
它可以将数据以图表、图形等形式展现出来,方便用户分析和理解数据。
5. 网络爬虫- 该项目使用Python3编写,利用BeautifulSoup和Requests库实现网络爬虫功能。
它可以抓取网页数据,对数据进行处理和分析,用于各种网页数据的采集和整理。
6. 视频流分析系统- 这个项目利用Python3编写,借助FFmpeg和NumPy库实现对视频流的分析和处理。
它可以提取视频流中的特征,并进行目标识别和跟踪。
7. 在线投票系统- 该项目采用Python3编写,利用Django框架实现在线投票系统。
它可以处理用户投票请求,进行实时统计数据,并生成相应的数据报表。
8. 电流信箱客户端- 这个项目使用Python3编写,利用smtplib和poplib库实现电流信箱客户端功能。
它可以发送、接收和管理电流信箱,支持对邮件进行筛选、归档等操作。
9. 文档管理系统- 该项目利用Python3编写,使用Django框架实现文档管理系统。
它可以上传、下载和管理文档,支持文档的分类、版本管理等功能。
管理信息系统概述
第一章管理信息系统概述1. 什么是管理信息系统?他的功能和特点是什么?答:管理信息系统是一个由人,机(计算机)组成的能进行管理信息的收集传递,存储,加工,维护和演用的系统,它能实测企业(或组织)的各种运行情况,利用过去的数据预测未来,从全局岀发辅助进行决策,利用信息控制企业(或组织)行为,帮助其实现长远的规划目标.简言之,管理信息系统是一个以计算机为工具,具有数据处理,预测,控制和辅助据测功能的信息系统.功能:数据处理,预测功能,计划功能,控制功能,辅助决策功能2. 管理信息系统有哪几种结构试图?你是否觉得有其它的结果试图?是什么?答:管理信息系统由四大件组成:信息源,信息处理器,信息用户和信息管理者。
一个管理信息系统从使用者的角度看,它总是由一个目标,具有多种功能,各种功能之间又有各种信息联系,构成一个有机结合的整体,形成一个功能结构。
这里子系统的名称所标注的是管理的功能或职能,而不是计算机的名词。
它说明管理信息系统能实现那些功能的管理,而且说明如何划分子系统,并说明是如何联结起来的。
管理信息系统的软件结构是: 1.销售市场子系统,2.生产子系统3.后勤子系统4.人事子系统5.财务和会计子系统6.信息处理子系统7.高层管理子系统3. 管理信息系统有哪些新的发展形式?答:1.决策支持系统:决策支持系统是能参与、支持人的决策过程的一类管理信息系统。
它通过与决策者的一系列人机对话过程,为决策者提供各种可行方案,检验决策者的要求和设想从而得到支持决策的目的。
2.专家系统:专家系统的任务是解决需要经验,专门只是和缺乏结构的问题的计算机应用系统,它是人工智能发展的一个重要分支。
3.办公自动化4.集成生产系统4. 除书上所列举的应用外,管理信息系统还有哪些应用领域和方式?5. 数据仓库和数据库的区别和联系是什么?答:数据仓库数据库:操作型数据,增,删,改操作频繁。
数据库核心:功能强大,面向OLTP应用。
企业进销存管理系统(C#含源代码)
企业进销存管理系统(C#含源代码)摘要进销存管理系统旨在解决商业企业商品的采购、仓储、运输、配送、流通加工等一系列操作流程中的数据信息的处理问题,提供一系列的数据分析,帮助经营者合理的调整各个经营运作环节的运作节奏,并对商品流转过程进行了全程跟踪管理、相应款项流通的全程记录管理和票据信息统计的管理。
因此进销存管理系统的全面应用,规范业务流程、提高了企业的管理水平,提高资金流动的透明度,加快商品资金周转速度,进而全面提高了企业的经营水平、进而全面提升了企业的经济效益。
进销存管理系统采用.NET技术和大型数据库SQL Server 2005开发,主要是处理商业企业商品的采购、库存和销售各个环节的活动,具有良好的人机界面;考虑到系统的使用对象可能较多,权限管理良好;数据查询方便,支持多条件查询;系统支持良好的数据备份和还原操作,有效保护数据,减少意外损失;在相应的权限下,可方便地删除数据;数据计算自动完成,尽量减少人工干预;报表分析商品进货、商品销售情况;强大的报表打印功能;报表基本信息查询时,可根据查询条件动态显示查询结果。
关键词:进销存管理系统;.NET开发环境;C#语言;SQL Server 2005;报表IIIIIAbstractPurchase Sales Inventory Management System solves the business enterprises for procurement of goods, warehousing, transportation, distribution, circulation and processing of a series of operational procedures to deal with the issue of data, providing a wide range of data analysis to help operators of all reasonable measures to adjust the operation aspects of the operation of the rhythm and flow of goods throughout the tracking process management, and the corresponding flow of the entire record of the money management and paper management information statistics. Purchase Sales Inventory Management System is therefore a comprehensive application, standardized business processes and improve enterprise management level, improve the transparency of capital flows to accelerate the pace of commodity cash flow, and improve the operation of the enterprise level, thereby enhance the economic efficiency of enterprises.Purchase Sales Inventory Management system applies .NET technologies and SQL Server 2005 database on large-scale development of commercial enterprises to deal primarily with the procurement of goods, inventory, and marketing activities, has a good human-machine interface; taking into account the target system may be more , it has good rights management; query data to facilitate and support the multi-criteria query; the system supports good data backup and restore operations, the effective protection of data, loss of reduction of accidents; in the appropriate authority, can easily delete data; data auto-complete, as far as possible reduce human intervention; Statement Analysis purchase of goods, merchandise sales; powerful printing statements; statements of basic informationIVmay be based on dynamic query search results.Key words:Purchase Sales Inventory Management System; .NET development environment;C# programming language; SQL Server 2005; Crystal Reports目录1 前言 (7)1.1 系统的现状以及研究意义 (7)1.2 国内外文献综述 (8)1.3 系统的基本内容综述 (10)2 系统分析 (10)2.1 需求分析 (11)2.2 可行性分析 (11)2.3 开发工具选择 (11)2.3.1 Visual 平台简介 (12)2.3.2 C#语言简介 (13)2.3.3 SQL Server 2005简介 (14)2.4 管理信息系统逻辑模型设计 (15)2.4.1 数据流程图 (15)2.4.2 数据字典 (17)V3 系统设计 (22)3.1 项目规划 (22)3.2 系统功能结构 (22)3.3 设计目标 (23)3.4 开发及运行环境 (24)3.5 数据库设计 (24)3.5.1 数据表概要说明 (24)3.5.2 数据库E-R图分析 (25)3.5.3主要数据表的结构 (28)3.6 新系统的主要功能模块设计 (35)3.6.1 系统登录设计 (35)3.6.2 系统主窗体设计 (37)3.6.3 基本档案管理窗体设计 (39)3.6.4 进货管理窗体设计 (41)3.6.5 销售管理窗体设计 (43)3.6.6库存管理窗体设计 (45)3.6.7报表窗体设计 (47)3.7系统的(硬件)系统结构与处理方式设计 (54)3.7.1系统处理方式 (54)3.7.2系统硬件配置 (54)3.7.3软件配置 (54)3.8系统的处理流程设计 (54)3.8.1系统业务流程分析 (54)3.8.2新系统结构搭建 (56)4 结束语 (56)参考文献 (57)致谢 (58)VI河南科技大学本科毕业设计1 前言1.1 系统的现状以及研究意义随着经济全球化的发展和我国融入世界经济的步伐加快,全球采购、全球生产和全球销售的发展模式要求加快发展现代物流业,优化资源配置,提高市场响应速度和产品供给时效,降低企业物流成本,增强国民经济的竞争力。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
西安郵電學院高级语言课程设计报告题目:员工信息管理系统系部名称:电信系专业名称:电子科学与技术班级:科技0701班内序号:33学生姓名:贾春阳指导教师:黄茹时间:2008年6月10日至2008年6月20日实验题目:员工信息管理系统一、实验目的1.熟悉c语言的编译连接和运行过程。
2.掌握c语言的数据类型,熟悉整型、实型、字符型变量的定义方式及如何给它们赋值。
3.掌握if语句及switch语句的运用方法及嵌套应用方法。
4.掌握实现循环结构的三种语句while、do-while.、for 的使用。
5.掌握函数的定义方法和调用方法。
6.能够采用模块化思想调试程序。
二.实验内容1.编写程序并进行调试运行。
2.输入员工资料,并保存于文件。
每个员工包含信息如:号码、姓名、性别、部门,工龄,出生日期,工资,奖金,籍贯等。
3.对已存入的员工信息进行更新操作,包括添加一个员工信息、删除某个员工信息和修改某个员工信息。
4.通过输入姓名、号码的方式查询与员工信息。
5.可以按照工资,奖金等信息对员工进行排序。
6.最后输出员工信息,供需要时打印。
二、需求分析1.该程序可用于对员工情况基本信息的存储、更新、查询、输出等操作,以实现对员工信息的管理。
2.其中更新功能包括:添加信息、删除信息、修改信息,也可对个别员工信息进行适当的删除或修改。
以便随时更新员工信息。
3.程序中设计的查询功能可根据需要从若干数据中查询某个员工信息,并且可根据不同的方法查询:按号码查询和按姓名查询等。
以满足不同的需要。
四、概要设计1、方案设计对系统进行分析,给出结构图分析:系统要求实现许多的功能,因此遵循结构化程序设计思想来进行本系统的设计—自顶向下、逐步细化,将系统设计任务分解出许多子功能模块进行设计结构图如下:2.模块功能说明对各个模块进行功能的描述(1).输入模块:录入需要管理的员工信息并将信息保存于文件中,以方便日后进行打印、读取、更新等操作。
(2).添加模块:可添加一个或多个员工信息,并将所添加员工信息保存,方便查找。
(3).删除模块:可对退休或离休的员工信息做删除处理。
(4).修改模块:可根据需要对多个员工信息进行修改,也可随时对个别项进行修改。
(5).查询模块:可对已建立的员工信息进行查询,并且可根据需要选择按姓名查询或按号码查询。
(6).保存模块:用于对信息进行保存。
(7).输出模块:将所有员工信息或想要查询的员工信息显示于屏幕,用于打印员工信息或查找某些员工信息。
(8).退出系统:选择该项,自动退出该系统。
五、详细设计及运行结果流程图,函数之间相互调用的图示,程序设计及编码, 运行结果。
六.调试情况及运行结果1、对自己设计进行评价,指出合理和不足之处,提出改进的方案。
此次实践课编写的是一个应用程序,相对于以前我们见到的程序,它要大得多,运行的结果也没有预想中的好,数据的输出格式不太规范,而且各模块也出现了一些小问题,在同学们的帮助下,我很有耐心的一次又一次的进行修改,最后运行的结果基本上达到了预期的目的。
可着毕竟是第一次独立完成这样的大程序,结果还不是太理想。
由于时间很短,在选题报告中设想到的好多功能都没有实现。
已有的那些功能虽已能基本上满足用户的需要,但如果还有更多的功能程序就会更加完美。
如:在录入数据后,进行排序如果两个值相等没有提示,,这就给运用上带来一些不便。
2、在设计过程中的感受。
本次C 语言的实习课让我对C 语言的学习又有了更深入的了解,也让我更深刻地领悟到了“实践出真理”这个道理,在上机实践过程中学到的知识远远超过了在课堂上十几周学到的,学校组织的这次实习让我们这些实践知识匮乏的大学生增添了许多社会经验,为我们将来走上工作岗位其了不小的铺垫作用。
本次实习中遇到了很多以前没有遇到过的问题,也曾想过要放弃,但看到那些同学都在那认真的写程序,给了我继续的信心。
在同学的帮助下,我顺利的结束了本次实习,让我知道原来凭借自己努力取得的成功会让自己这么欣慰,也让我知道了友谊和团结的重要性。
七.参考文献《C语言程序设计》王曙燕曹锰科学出版社2005年2月《C语言程序设计》谭浩强清华大学出版社1999年12月八。
附录:#define MAX 1#include <string.h>#include <stdio.h>#define PAGE 2#define PRINT1 printf("---------------------------------------------------------------------------\n")#define PRINT2 printf("员工号--员工姓名--员工性别--所在部门--员工工龄--出生年月---工资--奖金--籍贯\n");#define PRINT3 printf("%3d%10s%10s%10s%10s %4d-%2d-%2d%6d%6s%6s\n",workers[i].num, workers[i].name,workers[i].sex,workers[i].department,workers[i].workage,workers[i]. born.year,workers[i].born.month,workers[i].born.date,workers[i].wage,workers[i].bon us,workers[i].bornplace)int sum;int a=12345;struct ymd{int year;int month;int date;};struct workers_type /*员工结构体*/{ int num;char name[10];char sex[4];char department[10];char workage[4];struct ymd born;int wage;char bonus[4];char bornplace[10];}workers[MAX];save_message(int sum){ int i;FILE *fp;if((fp=fopen("workers.txt","wb"))==NULL){ printf("文件读取错误,请重新打开!\n");return;}for(i=0;i<sum;i++)if(fwrite(&workers[i],sizeof(struct workers_type),1,fp)!=1)printf("写文件错误,请再试!\n");fclose(fp);}input_message() /*录入员工信息*/{int i=0,s=MAX;clrscr();printf("\n\n 录入员工信息(最多%d人!)\n",s); printf("---------------------------------------------\n");do{printf("\n 第%d名员工",i+1);printf("\n 员工号(必须为正数):");scanf("%d",&workers[i].num);printf("\n 员工姓名:");scanf("%s",&workers[i].name);printf("\n 性别(m/w):");scanf("%s",workers[i].sex);printf("\n 部门:");scanf("%s",&workers[i].department);printf("\n 工龄:");scanf("%s",workers[i].workage);printf("\n 出生日期(例:1980-12-05):");scanf("%d-%d-%d",&workers[i].born.year,&workers[i].born.month,&workers[i].born.date);printf("\n 员工工资:");scanf("%d",&workers[i].wage);printf("\n 员工奖金:");scanf("%s",&workers[i].bonus);printf("\n 籍贯:");scanf("%s",&workers[i].bornplace);i++;}while(i<MAX);printf("\n --%d个员工信息输入完毕!--\n",i);sum=i;printf("\n 按任意键返回主菜单!");bioskey(0);}/*读取信息*/int read_message(){FILE *fp;int i=0;if((fp=fopen("yuangong.txt",'rb'))==NULL){printf("\n\n*******暂时还没有任何信息,按任意键进入主菜单选择员工信息的录入!*****\n");return 0;}while(feof(fp)!=1){fread(&workers[i],sizeof(struct workers_type),1,fp);if(workers[i].num==0) break;else i++;}fclose(fp);return(i);}output_message() /*打印员工信息*/{ int i=0,j=0,count,page=1;clrscr();printf("\n\n ----员工信息表---\n 第%d 页\n\n",page);PRINT2;PRINT1;do{ if(workers[i].num!=0){j++;if(j%PAGE!=0){PRINT3;PRINT1;}else{PRINT3;PRINT1;if(workers[i+1].num!=0){ printf("按任意键继续");bioskey(0);clrscr();printf("\n\n --员工信息表--\n 第%d页\n\n",++page);PRINT2;PRINT1;}}}i++;}while(workers[i].num!=0);printf("按任意键返回主菜单!");bioskey(0);}/*更新(添加员工信息)*/insert_message(){ int i=sum,j,flag=0;char choice;i=sum;clrscr();printf("\n\n 添加员工信息\n");printf(" -------------------------\n");do{workers[i].num=++sum;printf("\n 新员工号:%d",workers[i].num);printf("\n 员工姓名:");scanf("%s",&workers[i].name);printf("\n 员工性别:(1代表女/2代表男):");scanf("%s",&workers[i].sex);printf("\n 员工部门:");scanf("%s",&workers[i].department);printf("\n 工龄:");scanf("%s",&workers[i].workage);printf("\n 出生日期(例:1950-01-12):");scanf("%d-%d-%d",&workers[i].born.year,&workers[i].born.month,&workers[i].born.date);printf("\n 员工工资:");scanf("%d",&workers[i].wage);printf("\n 员工奖金:");scanf("%s",&workers[i].bonus);printf("\n 员工籍贯:");scanf("%s",&workers[i].bornplace);printf("\n 要继续吗?(y/n)");choice=getch();if(choice=='y'){ printf("\n 继续!\n");i++;flag=1;}else flag=0;}while(flag==1);printf("\n 按任意键返回主菜单!");bioskey(0);}/*按姓名删除*/del_name(){ int i,j,flag;char del_name[10];char choice;do{ clrscr();printf("\n 输入要删除的员工姓名:");scanf("%12s",&del_name);for(i=0;i<sum;i++)if(strcmp(workers[i].name,del_name)==0&&workers[i].name!=0) { for(j=i;j<sum;j++)workers[j]=workers[j+1];break;}if(i==sum){ printf("\n 该员工不存在");bioskey(0);}printf("\n\n 要继续修改吗?(Y/N)");choice=getch();if (choice=='Y'||choice=='y'){printf("\n 继续!\n");i++;flag=1;}else flag=0;}while(flag==1);printf("\n 按任意键返回主菜单!");bioskey(0);}/*按号码删除*/del_number(){ int i,j,flag;char del_num[8];char choice;do{ clrscr();printf("\n 输入要删除的员工号码:");scanf("%10s",&del_num);for(i=0;i<sum;i++)if(strcmp(workers[i].num,del_num)==0&&workers[i].num!=0) { for(j=i;j<sum;j++)workers[j]=workers[j+1];break;}if(i==sum){ printf("\n 该员工不存在");bioskey(0);}printf("\n\n 要继续修改吗?(Y/N)");choice=getch();if (choice=='Y'||choice=='y'){printf("\n 继续!\n");i++;flag=1;}else flag=0;}while(flag==1);printf("\n 按任意键返回主菜单!");bioskey(0);}/*删除员工信息*/del_message(){ int choice;do{ clrscr();printf("\n\n ******删除员工信息****** \n\n");printf(" 1、按员工姓名删除\n");printf(" 2、按员工号码删除\n");printf(" 0、返回主菜单\n");printf(" 请选择(0-2): \n");scanf("%d",&choice);switch(choice){ case 1: del_name(); break;case 2: del_number(); break;case 0: break;}}while(choice!=0);}/*修改员工信息*/revise_message(){ int i=0,choice,revise_num,flag;do{ clrscr();printf("\n 输入要修改的员工号码:");scanf("%d",&revise_num);for(i=0;i<sum;i++)if(workers[i].num==revise_num){ printf("\n ---员工信息---\n");PRINT1;PRINT2;PRINT3;printf("\n 您要修改哪一项?");printf("\n 1.姓名;");printf("\n 2.工龄:");printf("\n 3.工资:");printf("\n 4.奖金:");printf("\n 5.部门:");scanf("%d",&choice);switch(choice){case 1:printf("\n 输入修改后的名称:");scanf("%s",&workers[i].name);break;case 2:printf("\n 输入修改后工龄:");scanf("%s",&workers[i].workage);break;case 3:printf("\n 输入修改后的工资:");scanf("%d",&workers[i].wage);break;case 4:printf("\n 输入修改后的奖金:");scanf("%s",&workers[i].bonus);break;case 5:printf("\n 输入修改后的部门:");scanf("%s",&workers[i].department);break;}PRINT1;PRINT2;PRINT3;break;}if(i==sum){ printf("\n 该员工信息不存在!按任意键返回");bioskey(0);}printf("\n\n 要继续修改吗?(Y/N)");choice=getch();if (choice=='Y'||choice=='y'){flag=1;printf("\n 继续!");}else flag=0;}while(flag==1);printf("\n 按任意键返回主菜单!"); bioskey(0);}renew_message(){ int choice;do{clrscr();printf(" *************更新员工信息*************\n");printf("\n\n 1.添加员工信息;");printf("\n\n 2.删除员工信息:");printf("\n\n 3.修改员工信息;");printf("\n\n 0.返回主菜单;\n");scanf("%d",&choice);switch(choice){case 1: insert_message();break;case 2:del_message();break;case 3:revise_message();break;case 0: break;}}while(choice!=0);}/*按姓名查询*/inquire_name(){int i,j=0;char inquire_name[10];clrscr();printf("\n 请输入要查询的员工姓名:");scanf("%s",inquire_name);for(i=0;i<sum;i++)if(strcmp(workers[i].name,inquire_name)==0&&workers[i].num!=0){ printf("\n --查询结果--\n");PRINT1;PRINT2;PRINT3;}else j++;if(j==sum) printf("\n 该员工号不存在!按任意键返回");bioskey(0);}/*按工龄查询*/inquire_workage(){int i,j=0;char inquire_workage[10];clrscr();printf("\n 请输入要查询的工龄:");scanf("%s",inquire_workage);for(i=0;i<sum;i++)if(strcmp(workers[i].workage,inquire_workage)==0&&workers[i].workage!=0) {printf("\n --查询结果--\n");PRINT1;PRINT2;PRINT3;}else j++;if(j==sum) printf("\n 没有符合要求的员工的信息!按任意键返回。