《C#大作业(8页).doc》由会员分享,可在线阅读,更多相关《C#大作业(8页).doc(8页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、-C#大作业-第 8 页 .NET开发技术基础大作业院 (系) 电子信息工程学院 专业班级 计算机科学与技术0902 学生姓名 无痕 学号 2009441643 成绩 年 月 日作业内容一:题目2:某公司有不同类型的员工:经理、秘书、普通雇员、会计;每天早上8:30报道,报道后根据报道人员的名字,显示出该人员当然的具体工作内容。选择下面三种方法中的一种对上述功能进行实现:(1)虚方法 (2)抽象类 (3)接口1 设计阶段本题目采用抽象类的方法,创建了Employee抽象基类,在建立几个不同员工的类,通过继承基类重写抽象方法,在主函数中通过输入姓名调用不同的方法。类的关系图如下:2 编码阶段 基
2、类:class Employee public string Name; public void employee(string intName) Name = intName; public virtual void working()继承:public Mange(string intName) Name = intName; public override void working() Console.WriteLine(Name + 工作为:审查各种资料); public FmEmployee(string intName) Name = intName; public overrid
3、e void working() Console.WriteLine(Name + 工作为:完成自己的任务);主函数:class Program static void Main(string args) string SName; do Console.WriteLine(请输入报道员工的姓名:); SName = Console.ReadLine().Trim(); switch (SName) case 张三: Mange s1 = new Mange(SName); s1.working(); break; case 李四: Mishu s2 = new Mishu(SName); s
4、2.working(); break; case 王五: Kuaiji s3 = new Kuaiji(SName); s3.working(); break; case 王四: FmEmployee s4 = new FmEmployee(SName); s4.working(); break; default: Console.WriteLine(姓名输入错误); break; while (SName != quit);3 运行结果题目3:某软件公司有不同类型的程序员:vb程序员,delphi程序员,c程序员等。新来一个项目后,要将此新项目安排给任意一个程序员来编写代码,请选择合适的方案
5、,对上述内容进行实现。 1 设计阶段 本题目先创建抽象基类bassClass,运用抽象方法,在子类继承基类时重写抽象方法,类的关系图如下:2 编码阶段 基类:public class bassClass public string ProgrammingLanguage; public void bassclass(string int_Name) ProgrammingLanguage = int_Name; public virtual void working()继承类:class C:bassClass public C(string int_Name) ProgrammingLang
6、uage = int_Name; public override void working() Console.WriteLine(C 程序员 开发这个项目); class Vb:bassClass public Vb(string int_Name) ProgrammingLanguage = int_Name; public override void working() Console.WriteLine(Vb 程序员 开发这个项目);class Delphi:bassClass public Delphi(string int_Name) ProgrammingLanguage = i
7、nt_Name; public override void working() Console.WriteLine(Delphi 程序员 开发这个项目);主函数:class Program static void Main(string args) Random rd = new Random(); string int_Name; Console.WriteLine(输入项目:); do int_Name = Console.ReadLine().Trim(); if (int_Name != quit) switch (rd.Next(3) case 0: C c = new C(0);
8、Console.WriteLine(项目:0, int_Name); c.working(); break; case 1: Vb vb = new Vb(1); Console.WriteLine(项目名称0, int_Name); vb.working(); break; case 2: Delphi delphi = new Delphi(2); Console.WriteLine(项目名称0, int_Name); delphi.working(); break; default: break; while (int_Name != quit); /推出选项 3 运行结果作业内容二:用
9、C#编程语言,集成开发环境开发一个简单系统,完成该系统的设计与实现。例如:学生信息管理系统、新闻管理系统、图书管理系统、财务管理软件、员工信息管理系统、小区物业管理软件、停车场车辆管理系统、会员管理软件、实验室设备管理系统、超市进销存管理系统、酒店管理系统、药房管理软件、机票预订系统等。一 需求分析本药房管理系统主要是查询和管理药品信息的功能,通过连接数据库,读取数据库的信息,实现各种操作,如添加药品,修改药品,删除药品,还能查询药品信息,通过不同的方式更快捷的查询到自己想要的信息。本系统能更好的管理药店的药品的信息,方便快捷。二 系统体系结构图用户登录药房管理系统刷新药品信息药品管理药品查询
10、系统管理修改药品信息添加药品删除药品信息刷新药品信息按编号查询按生产厂商查询按药名查询系统退出三 数据库设计1.用户表IDvarchar(5)UncheckedNamevarchar(20)UncheckedPassvarchar(20)Unchecked2.药品信息表药品编号varchar(50)Unchecked药品名称varchar(50)Unchecked价格varchar(50)Unchecked类型varchar(50)Unchecked规格varchar(50)Unchecked生产厂商varchar(50)Unchecked四 模块设计与实现1 数据库连接public stat
11、ic string M_str_sqlcon = Data Source=弦-PCSQLEXPRESS;Integrated Security=True;public static SqlConnection getcon() My_con = new SqlConnection(M_str_sqlcon); /用SqlConnection对象与指定的数据库相连接 My_con.Open(); /打开数据库连接 return My_con; /返回SqlConnection对象的信息1 登录模块 用户输入用户名和密码,textName和textPass获取用户输入的信息,并在数据库中查询验证,
12、若验证成功,则跳转至主窗口SqlDataReader temDR = MyClass.getcom(SELECT * FROM Medicine.dbo.tb_Login where Medicine.dbo.tb_Login.Name = +textName.Text.Trim ()+ and Medicine.dbo.tb_Login.Pass = +textPass.Text.Trim()+); bool myUser = temDR.Read(); if (myUser) DataClass.MyMeans.Login_Name = textName.Text.Trim(); Data
13、Class.MyMeans.Login_ID = temDR.GetString(0); DataClass.MyMeans.My_con.Close(); DataClass.MyMeans.My_con.Dispose(); this.Close();2 刷新药品信息药品信息显示在listview控件,通过读取数据库里的药品信息.private void 刷新药品信息ToolStripMenuItem_Click(object sender, EventArgs e) DataClass.MyMeans.temp = MyForm.getcom(SELECT* FROM Medicine.
14、dbo.药品信息); MuduleClass.Mudule.dis_info(DataClass.MyMeans.temp,Main_info);3.药品管理药品管理菜单里有三个选项:添加药品,修改药品信息,删除药品。点击不同的选项,弹出不同的窗口。用户根据窗口的控件信息,填写药品的各种信息。操作成功后,显示在右侧视图中.1. 添加药品private void butAdd_Click(object sender, EventArgs e) if (MedNum.Text.Trim() != & MedName.Text.Trim() != & MedModle.Text.Trim() !=
15、& MedStyle.Text.Trim() != & MedPrice.Text.Trim() != & MedFac.Text.Trim() !=) MyForm.getsqlcom(INSERT INTO Medicine.dbo.药品信息( 药品编号,药品名称,类型,规格,价格,生产厂商) VALUES ( + textNum.Text + , + textName.Text + , + textModle.Text + , + textStyle.Text + , + textPrice.Text + , + textFac.Text + ); this.Close(); DataC
16、lass.MyMeans.reflush = true; 2. 修改药品private void butChange_Click(object sender, EventArgs e) if (MuduleClass.Mudule.MedNum != textNum.Text.Trim() | MuduleClass.Mudule.MedName !=textName.Text.Trim() | MuduleClass.Mudule.MedPrice != textPrice.Text.Trim() | MuduleClass.Mudule.MedModle != textModle.Text
17、.Trim() | MuduleClass.Mudule.MedStyle !=textStyle.Text.Trim() | MuduleClass.Mudule.MedFac != textFac.Text.Trim() ) /任意一个选项修改 MyForm.getsqlcom(DELETE FROM Medicine.dbo.药品信息 whereMedicine.dbo.药品信息.药品编号= +MuduleClass.Mudule.MedNum + ); MyForm.getsqlcom(INSERT INTO Medicine.dbo.药品信息( 药品编号,药品名称,类型,规格,价格,
18、生产厂商) VALUES ( + textNum.Text + , + textName.Text + , + textModle.Text + , + textStyle.Text + , + textPrice.Text + , + textFac.Text + ); this.Close(); else MessageBox.Show(没有修改任何数据);3,删除药品private void butDel_Click(object sender, EventArgs e) DataClass.MyMeans.temp = MyForm.getsqlcom(DELETE FROM Medi
19、cine.dbo.药品信息 where Medicine.dbo.药品信息.药品编号= + textDel.Text.Trim() + ); DataClass.MyMeans.reflush = true;this.Close(); 4 药品查询药品查询菜单里有三个选项:按编号,按药名,按生产厂商。点击不同的选项,弹出不同的窗口。用户根据窗口的控件信息,填写药品的各种信息。操作成功后,显示在右侧视图中.1 按编号private void butNumS_Click(object sender, EventArgs e) DataClass.MyMeans.temp = MyForm.getc
20、om(select* FROM Medicine.dbo.药品信息 whereMedicine.dbo.药品信息.药品编号= + textNumS.Text.Trim()+ ); DataClass.MyMeans.reflush = true; this.Close();2 按药名private void butNameS_Click(object sender, EventArgs e) DataClass.MyMeans.temp = MyForm.getcom(select* FROM Medicine.dbo.药品信息 whereMedicine.dbo.药品信息.药品名称= + t
21、extNameS.Text.Trim() + ); DataClass.MyMeans.reflush = true; this.Close();3 按生产厂商private void butFacS_Click(object sender, EventArgs e) DataClass.MyMeans.temp = MyForm.getcom(select* FROM Medicine.dbo.药品信息 whereMedicine.dbo.药品信息.生产厂商= + textFacS.Text.Trim() + ); DataClass.MyMeans.reflush = true; this.Close();5 系统管理退出该系统private void 系统退出ToolStripMenuItem_Click(object sender, EventArgs e) Application.Exit();五 运行截图图 5.1 登录界面图5.2 主系统界面图 5.3刷新药品界面图 5.4 添加,修改药品界面图 5.5 删除药品界面图 5.6 药品查询界面