人人范文网 教学计划

教学计划管理系统(精选多篇)

发布时间:2021-04-30 07:43:43 来源:教学计划 收藏本文 下载本文 手机版

推荐第1篇:管理系统

临时人员管理办法

员工身份保证金处理办法(A) 员工身份保证金处理办法(B) 员工缴存印鉴卡规定 员工守则(A) 员工守则(B) 员工守则(C)

一、临时人员管理办法

第一条 目的

为使临时人员的雇用及管理有所遵循特依人事管理规则第二条规定订定本办法。 

第二条 人员申请

各部门有临时性工作(期间在三个月以内),须雇用临时人员从事时,应填具“人员增补申请书”注明工作内容、期间等呈经理核准外,送人事部门凭以招雇。 

第三条 雇用限制

(一)年未满16岁者不得雇用。

(二)经管财物、有价证券、仓储、销售及会计(除物品搬运、整理及报表抄写工作外)等重要工作不得雇用。

(三)雇用期间不得超过三个月。

第四条 雇用

(一)人事部门招雇临时人员,应填“临时人员雇用核定表”呈经理核准后雇用。 (二)临时人员到工时,人事部门应填“雇用资料表”一份留存备用。 

第五条 投保

在厂区工作的临时人员应由人事部门办理劳保投保后,始得入厂工作。 

第六条 管理

(一)临时人员于工作期间可请公伤假、公假、事、病假以及婚、丧假,其请假期间除公伤假外均不发给工资。

(二)临时人员的考勤、出差比照编制内助理员办理。

第七条 终止雇用

临时人员于工作期间如有不能胜任工作,违反人事管理规则第十

四、三十六条规定,事、病假及旷职全月合计超过4天以上,或工作期满,雇用部门应予终止雇用,经终止雇用的临时人员应填具“离职申请”(通知)单”(其离职应办理手续由各公司订定)经主管科长核签后连同胸章送人事部门凭以结发工资。

第八条 延长雇用

临时人员雇用期满,如因工作未完成,必须继续雇用时,应由雇用部门重填“人员增补申请书”叙明理由呈公司总经理核准后始得雇用,并将核准的增补申请书一份报总管理处总经理室备

查。 

第九条 实施与修改

本办法经经营决策委员会通过后实施,修改时亦同。

二、员工身份保证金处理办法(A)

第一条 本公司员工就职时,除应办理员工保证书投保信用保险外,另应依本办法缴存身份保证金。 

第二条 员工应缴存的身份保证金,其金额如下: (一)总经理、副总经理:10万元整。 (二)第

一、二阶职员:6万元整。 (三)第三阶职员:4万元整。 (四)第四阶职员:3万元整。 (五)其余正式任用职员:2万元整。 (六)服务员:1万元整。 

第三条 身份保证金一时难以缴足者,依下列的规定,由其每月薪津扣存(扣存金额至10元单位,四舍五入),累积至前条规定金额为止。

(一)第四职阶以上员工,每月按其固定薪金总额扣存4%。 (二)第五职阶以下员工,每月按其固定薪金总额扣存3%。 

第四条 员工身份保证金的利息,按国家银行核定的储蓄部放款利息计算。其计息日订为每年12月20日统一办理。未满100元的零数不予计息。 

第五条 员工在职期间,其身份保证金不得发还。但为购买本公司股票经董事会批准者,得于等值金额发还购买,惟其所购股票应寄存总公司,充为身份保证金。 

第六条 身份保证金及前条规定所购股票,不得赠与、转让、或抵押。 

第七条 员工如有违反法令或本公司规章或其他弊情,致本公司蒙受损害时,除依法追诉外,其身份保证金及依第五条提存的股票,悉数充为赔偿金。 

第八条 员工离职时,其身份保证金及提存的股票,须自离职日起逾满六个月,经本公司查明确无未了事情或亏短公款后始得发还。 

第九条 员工身份保证金不能一时缴足者,按月于发薪日扣存,其保管及运用,均由本公司负责办理。 

第十条 本办法经董事长核准后施行,修改时亦同。

三、员工身份保证金处理办法(B)

第一条 本办法依据本公司人事管理规则第三十条及第三十四条的规定订定。

第二条 本公司员工就职时,应依本公司人事管理规则的规定缴存身份保证金。身份保证金一时难以缴足者就其未缴部分按下列的规定逐月扣存:

(一)四阶以上职员:每个月按其薪津(包括一切津贴及薪资所得税的金额)扣存1%。 (二)其余员工:每个月按其薪津(包括一切津贴及薪资所得税的金额)扣存4%。 

第三条 员工身份保证金的利息按银行一般信用贷款利率复利计付,但未满100元的奇零数不计付利息。 

第四条 员工身份保证金的发还、抵充,悉依本公司人事管理规则的规定办理。 

第五条 员工身份保证金于发薪日扣存,其保管的运用均由本公司负责办理。 

第六条 本办法经董事会通过施行,修改时亦同。

四、员工缴存印鉴卡规定

(一)凡本公司员工已于到职时应缴存印鉴卡三份经呈核后分存总务科、会计科及各该单位主管保管。

(二)员工于处理公务或支领款项时,均应使用与已缴存印鉴卡上的同一印章,不得使用其他印章。

(三)会计科及各该单位主管,应负责核对各员工所使用印章是否相符。

(四)员工因印鉴遗失或其他原因申请更换时,均应另填盖新印鉴卡三份,经呈核后连同原印鉴卡分存总务科、会计科及各该单位主管保管。

(五)员工于调职时原单位主管应将该员印鉴卡移交新单位主管保管。 (六)员工于离职生效日期起,即为印鉴停止使用日期。

(七)员工的印鉴得登记两颗,限正楷正方形及扁形各一颗。正方形的大小规格为一平方厘米,扁形直0.4厘米,横一厘米,姓名横列。

(八)本规则经呈奉总经理核准后实施,修改时亦同。

五、员工守则(A)

第一条 本公司员工均应遵守下列规定:

(一)准时上下班,对所担负的工作争取时效,不拖延、不积压。

(二)服从上级指挥,如有不同意见,应婉转相告或以书面陈述,一经上级主管决定,应立即遵照执行。

(三)尽忠职守,保守业务上的秘密。

(四)爱护本公司财物,不浪费,不化公为私。 (五)遵守公司一切规章及工作守则。

(六)保持公司信誉,不作任何有损公司信誉的行为。 (七)注意本身品德修养,切戒不良嗜好。

(八)不私自经营与公司业务有关的商业或兼任公司以外的职业。 (九)待人接物要态度谦和,以争取同仁及顾客的合作。

(十)严谨操守,不得收受与公司业务有关人士或行号的馈赠、贿赂或向其挪借款项。

第二条 本公司员工因过失或故意使公司遭受损害时,应负赔偿责任。 

第三条 本公司工作时间,每周为42小时,星期天及纪念日均休假。业务部门如因采用轮班制,无法于星期天休息者,可每七天给予一天的休息,视为例假。 

第四条 管理部门的每日上、下班时间,可依季节的变化事先制定,公告实行。业务部门每日工作时间,应视业务需要,制定为一班制,或多班轮值制。如采用昼夜轮班制,所有班次,必须一星期调整一次。 

第五条 上、下班应亲自签到或打卡,不得委托他人代签或代打,如有代签或代打情况发生,双方均以旷工论处。 

第六条 员工应严格按要求出勤。 

第七条 本公司每日工作时间订为7小时,如因工作需要,可依照政府有关规定延长工作时间至10小时,所延长时数为加班。

除前项规定外,因天灾事变,季节关系,依照政策有关规定,仍可延长工作时间,但每日总工作时间不得超过12小时,其延长之总时间,每月不得超过46小时。其加班费依照公司有关规定办理。 

第八条 每日下班后及例假日,员工应服从安排值日值宿。 

第九条 员工请假,应照下列规定办理:

(一)病假——因病须治疗或休养者可请病假,每年累计不得超过30天,可以未请事假及特别休假抵充逾期仍未痊愈的天数,即予停薪留职,但以一年为限。

(二)事假——因私事待理者,可请事假,每年累计不得超过14天,可以特别休假抵充。(三)婚假——本人结婚,可请婚假八天。

(四)丧假——祖父母、父母或配偶丧亡者,可请丧假8天,外祖父母或配偶的承重祖父母、父母或子女丧亡者,可请丧假6天。

(五)产假——女性从事人员分娩,可请产假八星期(假期中的星期例假均并入计算)。怀孕三个月至七个月而流产者,给假四星期,七个月以上流产者,给假六星期,未满三个月流产者,给假一星期。

(六)公假——因参加政府举办的资格考试(不以就业为前提者)、征兵及参加选举者,可请公假,假期依实际需要情况决定。

(七)公伤假——因公受伤可请公伤假,假期依实际需要情况决定。

第十条 请假逾期,除病假依照前条第一款规定办理外,其余均以旷工论处。但因患重病非短期内所能治愈,经医师证明属实者,可视其病况与在公司资历及服务成绩,报请总经理特准延长其病假,最多三个月。事假逾期系因特别或意外事故经提出有力证件者,可请总经理特准延长其事假,最多15天,逾期再按前规定办理。 

第十一条 请假期内的薪水,依下列规定支给。

(一)请假未逾规定天数或经延长病事假者,其请假期间内薪水照发。 (二)请公假者薪水照发。

(三)公伤假工资依照劳动保险条例由保险机关支付,并由公司补足其原有收入的差额。

第十二条 从业人员请假,均应填具请假单呈核,病假在七日以上者,应附医师的证明,公伤假应附劳保医院或特约医院的证明,副经理以上人员请假,以及申请特准处长病事假者,应呈请总经理核准,其余人员均由直属核准,必要时可授权下级主管核准。凡未经请假或请假不准而未到者,以旷工论处。 

第十三条 旷工一天扣发当日薪水,不足一天照每天七小时比例以小时为单位扣发。 

第十四条 第九条

一、二款规定请病、事假的日数,系自每一从业人员报到之日起届满一年计算。全年均未请病、事假者,每年给予一个月的不请假奖金,每请假一天,即扣发该项奖金一天,请病事假逾30天者,不发该项奖金。 

第十五条 本公司人员服务满一年者,可依下列规定,给予特别休假 (一)工作满一年以上未满三年者,每年7日。 (二)工作满三年以上未满五年者,每年10日。 (三)工作满五年以上未满十年者,每14日。

(四)工作满十年以上者,每满一年加给一日,但休假总数不得超过30日。

第十六条 特别休假,应在不妨碍工作的范围内,由各部门就业务情况排定每人轮流假日期后施行。如因工作需要,得随时令其销假工作,等工作完毕公务较闲时,补足其应休假期。但如确因工作需要,至年终无法休假者,可按未休日数,计发其与薪水相同的奖金。

六、员工守则(B)

第一条 员工应遵守本公司一切规章、通告及公告。 

第二条 员工应遵守下列事项 

(一)尽忠职守,服从领导,不得有阳奉阴违或敷衍塞责的行为。

(二)不得经营与本公司类似及职务上有关的业务,或兼任其他厂商的职务。

(三)全体员工必须时常锻炼自己的工作技能,以达到工作上精益求精,期能提高工作效率。 (四)不得泄漏业务或职务上机密,或假借职权,贪污舞弊,接受招待或以公司名义在外招摇撞骗。

(五)员工于工作时间内,未经核准不得接见亲友或与来宾参观者谈话,如确因重要事故必须会客时,应经主管人员核准在指定地点,时间不得超过15分钟。 (六)不得携带违禁品、危险品或与生产无关物品进入工作场所。 (七)不得私自携带公物(包括生产资料及复印件)出厂。

(八)未经主管或部门负责人的允许,严禁进入变电室、质量管理室、仓库及其他禁入重地;工作时间中不准任意离开岗位,如须离开应向主管人员请准后始得离开。 (九)员工每日应注意保持作业地点及更衣室、宿舍环境清洁。

(十)员工在作业开始时间不得怠慢拖延,作业时间中应全神贯注,严禁看杂志、电视、报纸以及抽烟,以便增进工作效率并防危险。

(十一)应通力合作,同舟共济,不得吵闹、斗殴、搭讪攀谈或互为聊天闲谈,或搬弄是非,扰乱秩序。

(十二)全体员工必须了解,惟有努力生产,提高质量,才能获得改善及增进福利,以达到互助合作,劳资两利的目的。

(十三)各级主管单位负责人必须注意本身涵养,领导所属员工,同舟共济,提高工作者情绪,使部属精神愉快,在职业上有安全感。

(十四)在工作时间中,除主管及事务人员外,员工不得打接电话,如确为重要事项时,应经主管核准后方得使用。

(十五)按规定时间上、下班,不得无故迟到、早退。

第三条 员工每日工作时间以八小时为原则,生产单位或业务单位每日作息另行公布实施,但因特殊情况或工作未完成者应自动延长工作时间,惟每日延长工作时间以不超过四小时;每月延长总时间不超过46小时。 

第四条 经理级(含)以下员工上、下班均应亲自打卡计时,不得托人或受托打卡,否则以双方旷工一日论处。

第五条 员工如有迟到、早退或旷工等事情,依下列规定处分 (一)迟到、早退

1.员工均须按时间上、下班,工作时间开始后3分钟至15分钟以内到班者为迟到。 2.迟到每次扣100元,拨入福利金。 3.工作时间终了前15分钟内下班者为早退。

4.超过15分钟后,始打卡到工者应办理请假手续,但因公外出或请假皆须报备并经主管证明者除外。

5.无故提前十五分钟以上下班者以旷工半日论,但因公外出或请假经主管证明者除外。6.有下班而忘记打卡者,应于次日经单位主管证明才视为不早退。 (二)旷工

1.未经请假或假满未经续假而擅自不到职以旷工论。

2.委托或代人打卡或伪造出勤记录者,一经查明属实,双方均以旷工论处。 3.员工旷工,不发薪资及津贴。

4.无故连续旷工3日或全月累计无故旷工6日或一年旷工达12日者,应予解雇,不发给资遣费。

七、员工守则(C)

第一条 本公司员工应遵守本公司一切规章命令及主管的指挥监督,忠实勤勉地执行其职务。对经办业务或工种如有建设性意见时,可以口头或书面陈述建议。 

第二条 本公司员工平日的言行应诚实、谦让、廉洁、勤勉,同事间要和睦相处以争取公司荣誉。 

第三条 本公司员工上下班均应按规定签到。签到均应亲自为之,不得托人代为签到或代人签到。违者依本规则的规定论处。 

第四条 本公司员工除规定的放假日及因公出差或因故与其他正当事由外,均应按照规定时间上下班,不得任意迟到或早退。如有违反者照下列规定处理。 (一)每月迟到或早退

1次至10次者以旷工半天论处。

11次至15次者以旷工一天论处。

16次至20次者以旷工二天论处。

超过21次概以旷工三天论处。

(二)迟到或早退除事先请准者,超过20分钟起至一小时内,未办理请假手续者以旷工半天论处。

违反这两项规定者依前面规定按日计扣薪资。 

第五条 各级员工每日应办事务必须当日办清,如不能于办公时间内办妥应中班赶办。如有临时发生紧要事项奉主管人员通知时,虽非办公时间亦应遵照办理,不得借故推诿。加班发给加班费,其标准另定。 

第六条 本公司员工对顾客或参观来宾应保持谦和礼貌、诚恳友善的态度。对顾客委办事项应力求周到机敏处理,不得草率敷衍或任意搁置不办。 

第七条 各级主管就其监督范围以内所发命令,其属下员工有服从的义务,但对其命令有意见时可随时陈述。

第八条 各级员工对于两级主管同时所发命令或指挥,以直接主管的命令为准。 

第九条 本公司员工不得有下列行为 

(一)除办理本公司业务外,不得对外擅用本公司名义。 (二)对于本公司机密无论是否经管,均不得泄漏。 (三)未奉核准不得擅离职守。

(四)对于所办事项不得收受任何馈赠或向往来行号挪借财物。

(五)非因职务的需要不得动用公物或支用公款。

(六)对所保管的文书财物及一切公物应善尽保管之责,不得私自携出或出借。

(七)不得私自经营与本公司业务类似的商业或兼任本公司以外职务。但经董事长特准者不在此限。

推荐第2篇:ICU管理系统

ICU管理系统

ICU是各类危重患者集中治疗、监护的特殊场所,工作量大,治疗手段繁多,操作技术复杂,知识更新快,设备现代化,其组织结构和管理有其特殊性,对护理人员的配置要求明显高于其它科室,护理人员的配备是否合理直接关系到护理质量。

1国外ICU护理人力资源分配情况

英国危重病协会推荐的疾病严重程度分级[1]所要求配备的理想ICU专职护士人数标准:(1)I级(患者能自主呼吸,血流动力学稳定,仅需要一般监测),护士:患者0.5∶1;(2)lI级(所有患者接受机械通气),护士:患者为1∶1;(3)lI级(患者接受机械通气,并且需要多个输液/注射泵进行治疗,或有复杂的监测和需要频繁吸痰)护士:患者为1.5∶1;(4)IV级[除有Ⅲ级情况外,患者同时接受连续性肾脏替代治疗(CRRT)或主动脉内球囊反搏术(IABP)治疗],护士:患者为2∶1。

2国内ICU护理人力资源配置不足现状

2.1护理人力资源数量不足: ICU是各类危重患者集中治疗、监测的特殊病房。工作量大,治疗手段繁多。国内监护室患护比为1∶3~4,目前,国内医院患护比实际为1∶2.5,由此可见.ICU护理人员普遍缺编。护理人力数量的不足导致了日均护理工时的急剧上升,不能满足患者生理、心理和社会需要。

2.2护理队伍结构不合理:ICU病房具有工作量大、病情紧急、变化快的特点,操作技术复杂,设备现代化,因此要求护理人力整体知识水平普遍较高。而目前ICU护理人员学历、职称普遍偏低,职称结构以护士和护师为主体,主管护师只占少数,而副高职称以上护理人员则无,护理人才断层现象在所难免。由此可见,整体知识水平偏低,制约了护理人员素质的提高。

2.3护理队伍不稳定:由于护理工作繁杂辛苦、夜班多、收入与辛苦程度不成正比、职业风险高、工作压力大和工作负荷重,客观上主要是护理职业生涯发展受限,自身发展机会少。与同年资的医生相比晋升和深造的机会也比较少,护士自我实现的需要得不到充分的体现。跳槽的护士数量逐年增加,造成了护士人力的流动性大,给ICU的护理工作带来极大影响,降低了ICU成为一个经验丰富、高效团体的可能性。

3 ICU护理人力资源管理对策

3.1合理配置护理人员:为了兼顾ICU质量及效益和维护护理人员的身心健康。可依据实际日均护理工时,根据不同病种、疾病危重程度来配置当班护士的人数。配置的护士数量和结构应满足患者专科和基础护理需要,并随着医疗护理的不断开展而动态地调整。国外医院病房高、中、初级护理人员配置一般为1∶2∶4,能够较好地发挥高级护理人员业务指导作用,保证基础护理工作的落实。国内学者认为理想的职称结构比为护士30%、护师30%、主管护师30%,学历结构应该以大专、本科学历为宜。分层次使用护士是提高护理人力利用效度的主要途径.有利于提高护理质量。合理控制护理人力成本。 期刊文章分类查询,尽在期刊图书馆 3.2优化排班:目前国内外各大医院都在探索排班模式的改革,其中报道较多的有:(1)弹性排班法:即根据科室每日的工作量排班,每周的上班时间按小时计算,值班制与备班制相结合,并要求护士能随叫随到。(2)自我排班法:即指护理人员自己参与排班的一种模式。由护理人员按照科室的排班模式,根据各自的需求选择合适的班次。如同职称的护士可以根据自己的个人生活,家庭生活及身体状况来选择。 3.3尝试科内科间的短期调动:例如中心1CU可以与对其利用率较高的几个科室联合,设总护士长。总护士长可调动几个科室的护理人员,特别是当大手术较多时,ICU会短期出现一个病人的高峰期,而普通病房的工作量会相对的减少,此时可派普通病房的护士到ICU帮助,而当有大批病人出1CU时则相反。

3.4优待护理人员,减少人员流失。调查显示:ICU护理人员的流失量明显大于其它科室,大量有经验的护士流失给ICU的护理工作带来很多负面影响。因此管理者应考虑:(1)减轻工作强度:采取科学的人员配置,尽量配备先进的设备;(2)改善工作环境:合理布局,减少噪声来源,营造一个轻松愉快、共同协作的工作环境;(3)激发工作动机,适当增加ICU护士的晋升及深造的机会。

3.5聘用文秘和助理护士承担间接护理项目:护士承担了大量的间接护理项目和一些非技术性的护理项目,使得护士的劳动强度增大,建议由初级护士承担低技术性的基础护理项目;聘用文秘处理护理文书,同时简化护理文书的记录方法,避免重复劳动;成立护理临床支持系统,减少护士外出的时间比如领药、维修机器、护送患者检查等。 4ICU护士的培训与考核

国外重症护理教育多安排在基础护理教育结束、获得护士资格后。一些国家还设立了重症监护护理教育的专业团体,ICU的护士必须通过严格的专业考试和能力测试,取得相应的合格证书(CCN)后才能担任ICU的工作。目前国内在这些方面均不能与国际接轨,针对此种现状,首先要建立相应的教学体系,对ICU护士进行常规化教育。随着医学的不断发展,重症护理教育体系应包括急救技术、急救护理、临床护理专家的培养以及使用床边临床判断及医疗设备应用等内容。目前国内外较为成功的教育模式有:根据医院实际建立协会,团体委员会举办重症护理现场表演;建立重症护理协作网络;建立国际重症护理教育互联网;建立重症护理图书馆等。同时加强高等护理教育中重症护理学的份量是解决人力缺乏,提高ICU护理质量的重要途径。

版权声明:本站某些资料或文章来自于互联网,不代表本站观点,如果侵犯了您的权益,请来信告知,我们会尽快修改。

推荐第3篇:通讯录管理系统

课 程 设 计 任 务 书

C语言课程设计

(部)

学生姓名

06 月

信息科学与电气工程学院

计算机科学与技术

计职141

王雪

140819139

21 日至

07 月

04 日

2 周 指导教师

2015 年 6月 23日

一、课程设计目的

将理论教学中涉及到的知识点贯穿起来,对不同的数据类型、程序控制结构、数据结构作一比较和总结,结合设计题目进行综合性应用,对所学知识达到融会贯通的程度。通过课程设计,学生在下述各方面的能力应该得到锻炼:

(1)进一步巩固、加深学生所学专业课程《C++程序设计语言》的基本理论知识,理论联系实际,进一步培养学生综合分析问题,解决问题的能力。

(2)全面考核学生所掌握的基本理论知识及其实际业务能力,从而达到提高学生素质的最终目的。

(3)利用所学知识,开发小型应用系统,掌握运用C++语言编写调试应用系统程序,训练独立开发应用系统,进行数据处理的综合能力。

(4)对于给定的设计题目,如何进行分析,理清思路,并给出相应的数学模型。

(5)掌握结构化程序设计方法,熟悉面向对象程序设计方法。 (6)熟练掌握C++语言的基本语法,灵活运用各种数据类型。 (7)进一步掌握在集成环境下如何调试程序和修改程序。 设计功能

录入联系人信息(包括姓名、电话号码、地址等信息);通讯录管理系统要求实现以下功能:

1、输入每一位联系人记录,将其信息存入文件中。

2、查询所有联系人的信息,并按可选的自定义规则进行排序;

3、记录修改,将修改的记录信息保存于文件中。 设计要求

1、设一个通信录由以下几项数据信息构成: 数据项 类型

姓名 字符串

地址 字符串

邮政编码 字符串

电话号码 字符串

试为通信录数据定义类型和定义通信录变量, 实现功能:存取、显示、删除记录、查询记录等功能。

2、要求:界面友好,易于操作 总体设计 系统功能模块图:

添加:可以添加通讯录记录,依次输入编号、姓名、年龄、电话号码、通讯地址、电子邮箱等后,会提示是否继续添加。

显示:可以以表格形式输出所有通讯录里的记录

删除:输入欲删除的那个人的名字后,会自动删除他(她)的记录内容 查询:可以选择用姓名、电话、地址三种方式查询

修改:输入欲修改的那个人的名字后,再依次输入编号、姓名、年龄、电话号码、通讯地址、电子邮箱即可完成修改

保存:,输入文件名(带后缀名)后,即可将通讯录信息保存到文件

课程设计名称及内容

课程设计名称:单项选择题标准化考试系统

设计内容:设计并实现一个单项选择题标准化考试系统。该系统可以完成试题录入、试题抽取、自动判卷等功能。

任务和要求

功能要求:

(1) 用文件保存试题库。(每个试题包括题干、4个备选答案、标准答案) (2) 试题录入:可随时增加试题到试题库中

(3) 试题抽取:每次从试题库中可以随机抽出N道题(N由键盘输入) (4) 答题:用户可实现输入自己的答案

(5) 自动判卷:系统可根据用户答案与标准答案的对比实现判卷并给出成绩。

(二)其它要求:

(1) 只能使用C/C++语言,源程序要有适当的注释,使程序容易阅读 (2) 至少采用文本菜单界面(如果能采用图形菜单界面更好) (3) 学生可自动增加新功能模块(视情况可另外加分)

主要知识点

l 面向对象程序设计方法

l 界面制作,switch的应用。 l 类和对象。 l 动态数组(链表)类模板。 l 文件的读写。

五、其他

程序设计可在Microsoft VC++6.0、Borland C++ Builder环境下进行。

六、参考资料

【1】《C语言程序设计》,谭浩强编,清华大学出版社,2008年 出版 【2】《C语言程序设计》,吴明发编,北京理工大学出版社,2007年出版 【3】《C语言参考手册》邱仲潘 机械工业出版社 ,2004年出版

【4】《C语言课程设计案例精编》 姜灵之 清华大学出版社 2008年出版

详细设计 (1).通讯录: 主要代码

#include #include #include struct student

//结构体 {

}; cla inter { private: student st[35]; char no[13]; char name[20]; char addre[100]; char tel_no[12]; char post_code[7]; char e_mail[40]; public: void add(char no[13],char name[20],char addre[100],char tel_no[12],char post_code[7],char e_mail[40]);

void del(char name[20]); void find1(char no[13]); void find2(char name[20]); void list1(); void list2(); int correct(char name[20]); void read(); void write(); void format(); int back() {

cout

返回还是回到主菜单(T为退出,R为回到主菜单,不计大小写):

\";

} void print(int i) {

cout>back; if(back==\'R\'||back==\'r\') return 1; else return 0;

};

} cout

inter a; a.format(); char select1; cout

计职141

\"

※\"

通 迅 录

※\"

※\"

4.按序排列 .

※\"

※\"

5.读入数据 .

※\"

※\"

6.格式化(慎用).

※\"

※\"

\"

>select1;

switch(select1) { case \'1\':cout

(1)添加:\"

cout

(2)删除:\"

(3)修改:\"

请选择:\">select2; switch(select2) { case \'1\':cout

输入添加的资料:\"

char name[20];

char addre[100];

char tel_no[12];

char post_code[7];

char e_mail[40];

cout

输入学号:\">no; cout

输入姓名:\">name; cout

输入地址:\">addre; cout

输入电话号码:\">tel_no; cout

输入邮编:\">post_code;

cout

输入E_mail:\">e_mail; a.add(no,name,addre,tel_no,post_code,e_mail);

cout

返回还是回到主菜单(T为退出,R为回到主菜单,不计大小写):

\";

char back_add; cin>>back_add; if(back_add==\'R\'||back_add==\'r\') goto top; else goto bottom; break; case \'2\':cout

输入要删除人的姓名:\"

char name2[20]; cin>>name2; a.del(name2);

cout

返回还是回到主菜单(T为退出,R为回到主菜单,不计大小写):

\";

char back_del; cin>>back_del; if(back_del==\'R\'||back_del==\'r\') goto top; else goto bottom; break; case \'3\':cout

输入需要修改人的姓名:\"

char name3[20]; cin>>name3; if(a.correct(name3))

} goto top; else goto bottom; break; break; case \'2\':cout

(1)根据姓名查找\"

cout

(2)根据学号查找\"

请选择: \"; cin>>select3; switch(select3) { case \'1\':char name4[20];

cout

输入姓名: \"; cin>>name4; a.find2(name4);

cout

返回还是回到主菜单(T为退出,R为回到主菜单,不计大小写):

\";

char back_f1; cin>>back_f1; if(back_f1==\'R\'||back_f1==\'r\') goto top; else goto bottom; break; case \'2\':char no4[13]; cout

输入学号: \"; cin>>no4;

a.find1(no4);

cout

返回还是回到主菜单(T为退出,R为回到主菜单,不计大小写):

\";

} break; char back_f2; cin>>back_f2; if(back_f2==\'R\'||back_f2==\'r\') goto top; else goto bottom; break; case \'3\':a.write(); cout

返回还是回到主菜单(T为退出,R为回到主菜单,不计大小写):

\";

char back_w; cin>>back_w; if(back_w==\'R\'||back_w==\'r\') goto top; else goto bottom; break; case \'4\':cout

(1)按学号排序:\"

cout

(2)按姓名排序:\"

请选择:\"; char select4; cin>>select4; switch(select4) { case \'1\':a.list1();

cout

返回还是回到主菜单(T为退出,R为回到主菜单,不计大小写):

\";

char back; cin>>back; if(back==\'R\'||back==\'r\') goto top; else goto bottom; break; case \'2\':a.list2();

cout

返回还是回到主菜单(T为退出,R为回到主菜单,不计大小写):

\";

} break; char back1; cin>>back1; if(back1==\'R\'||back1==\'r\') goto top; else goto bottom; break; case \'5\':a.read(); cout

返回还是回到主菜单(T为退出,R为回到主菜单,不计大小写):

\";

char back_r; cin>>back_r; if(back_r==\'R\'||back_r==\'r\')

goto top; else goto bottom; break; case \'6\':cout

请确认删除所有资料!(Y/N)

\";

char select5; cin>>select5; if(select5==\'Y\'||select5==\'y\') a.format(); cout

返回还是回到主菜单(T为退出,R为回到主菜单,不计大小写):

\";

} char back_f; cin>>back_f; if(back_f==\'R\'||back_f==\'r\') goto top; else goto bottom; break; bottom:cout

★★★★★★★★★★★★欢迎使用本软件!★★★★★★★★★★★

\"

void inter::add(char no[13],char name[20],char addre[100],char tel_no[12],char post_code[7],char e_mail[40]) { int x=1; for(int i=0;i

} {

} if(!strcmp(st[i].no,\"0\")) {

} if(x==0) break; strcpy(st[i].addre,addre); strcpy(st[i].e_mail,e_mail); strcpy(st[i].name,name); strcpy(st[i].no,no); strcpy(st[i].post_code,post_code); strcpy(st[i].tel_no,tel_no); x=0; //删除联系人

void inter::del(char name[20]) {

int x=1; for(int i=0;i

strcpy(st[i].addre,\"0\");

strcpy(st[i].e_mail,\"0\"); strcpy(st[i].name,\"0\"); strcpy(st[i].no,\"0\"); strcpy(st[i].post_code,\"0\"); strcpy(st[i].tel_no,\"0\");

}

} } else x=0; if(x==0) cout

error:输入姓名错误!\"

int inter::correct(char name[30]) {

int x; for(int i=0;i

} char select; cout

(1)修改姓名:\"

(2)修改学号:\"

(3)修改地址:\"

(4)修改邮编:\"

(5)修改电话号码:\"

(6)修改E_MAIL:\"

请选择:\"; cin>>select; switch(select) { case \'1\':cout

输入要修改的姓名:\"; char name1[30]; if(!strcmp(st[i].name,name)) x=i;

cin>>name1; strcpy(st[x].name,name1); cout

修改成功!\"

输入要修改的学号:\";

char no1[13]; cin>>no1; strcpy(st[i].no,no1); cout

修改成功!\"

输入要修改的地址:\";

char addre1[100]; cin>>addre1; strcpy(st[x].addre,addre1); cout

修改成功!\"

输入要修改的邮编:\";

char post_code1[7]; cin>>post_code1; strcpy(st[x].post_code,post_code1); cout

修改成功!\"

输入要修改的电话号码:\"; char tel_no1[12];

cin>>tel_no1; strcpy(st[x].tel_no,tel_no1); cout

修改成功!\"

输入要修改的E_MAIL:\";

char e_mail1[40];

cin>>e_mail1;

strcpy(st[x].e_mail,e_mail1);

cout

修改成功!\"

return back();

break; } } //按学号查询联系人

void inter::find1(char no[13]) { int x,y=1,z=1; for(int i=0;i

if(!strcmp(st[i].no,no))

{

x=i;

z=0;

}

else y=0;

if(z==0) break;

}

if(y==0) cout

输入的学号查找不到!!!\"

print(x); } //按姓名查询联系人

void inter::find2(char name[20]) {

} //读取文件 void inter::read() { int x,y=1,z=1; for(int i=0;i

} if(y==0) cout

输入的姓名查找不到!!!\"

} else y=0; if(z==0) break; x=i; z=0;

print(x);

char name1[20]; cout

输入你要导入的文件名: \"; cin>>name1; strcat(name1,\".txt\"); ifstream file(name1); char line[120]; char no[120]; char name[120]; char addre[120]; char post_code[120]; char tel_no[120]; char e_mail[120]; int time=0; file.getline(line,120); while(!file.eof()) {

for(int k=0;k

if(time==0) { strcpy(no,line); time=1; for(int i=0;i

if(no[i]==\':\') { i++; for(int j=0;j

}

} {

}

st[k].no[j]=no[i]; i++; file.getline(line,120,\'\\n\'); } if(time==1) {

} if(time== 2) { strcpy(name,line); time=2;

for(int i=0;i

} file.getline(line,120,\'\\n\'); if(name[i]==\':\') {

} i++; for(int j=0;j

}

st[k].name[j]=name[i]; i++;

} strcpy(addre,line); time=3; for(int i=0;i

} file.getline(line,120,\'\\n\'); if(addre[i]==\':\') {

} i++; for(int j=0;j

}

st[k].addre[j]=addre[i]; i++; if(time==3) {

strcpy(tel_no,line); time=4; for(int i=0;i

if(tel_no[i]==\':\') {

i++; for(int j=0;j

st[k].tel_no[j]=tel_no[i];

}

}

} }

i++; file.getline(line,120,\'\\n\');

if(time==4) {

} if(time==5) { strcpy(e_mail,line); strcpy(post_code,line); time=5; for(int i=0;i

} file.getline(line,120,\'\\n\'); if(post_code[i]==\':\') {

} i++; for(int j=0;j

}

st[k].post_code[j]=post_code[i]; i++;

}

}

} } time=0; for(int i=0;i

} file.getline(line,120,\'\\n\'); if(e_mail[i]==\':\') {

} i++; for(int j=0;j

}

st[k].e_mail[j]=e_mail[i]; i++;

file.close(); //写入文件 void inter::write() {

char name[20]; cout

输入要保存的文件名

\"; cin>>name; strcat(name,\".txt\"); ofstream savefile(name); for(int i=0;i

} {

} savefile.close(); savefile

savefile

savefile

savefile

savefile

savefile

strcpy(no,st[j].no); strcpy(st[j].no,st[j+1].no); for(int i=0;i

for(int j=0;j

if(strcmp(st[j].no,st[j+1].no)>0) { char no[13];

char name[20];

char addre[100];

char tel_no[12];

char post_code[7];

char e_mail[40];

strcpy(st[j+1].no,no);

strcpy(name,st[j].name); strcpy(st[j].name,st[j+1].name); strcpy(st[j+1].name,name);

strcpy(addre,st[j].addre);

} for(int k=0;k

}

} strcpy(st[j].addre,st[j+1].addre); strcpy(st[j+1].addre,addre);

strcpy(tel_no,st[j].tel_no); strcpy(st[j].tel_no,st[j+1].tel_no); strcpy(st[j+1].tel_no,tel_no);

strcpy(post_code,st[j].post_code); strcpy(st[j].post_code,st[j+1].post_code); strcpy(st[j+1].post_code,post_code);

strcpy(e_mail,st[j].e_mail); strcpy(st[j].e_mail,st[j+1].e_mail); strcpy(st[j+1].e_mail,e_mail);

{

} if(x==1) { cout

} } } //按姓名排序 void inter::list2() {

for(int i=0;i

for(int j=0;j

if(strcmp(st[j].name,st[j+1].name)>0) { char no[13];

char name[20];

char addre[100];

char tel_no[12];

char post_code[7];

char e_mail[40];

strcpy(no,st[j].no); strcpy(st[j].no,st[j+1].no); strcpy(st[j+1].no,no);

strcpy(name,st[j].name); strcpy(st[j].name,st[j+1].name); strcpy(st[j+1].name,name);

strcpy(addre,st[j].addre);

} for(int k=0;k

}

} strcpy(st[j].addre,st[j+1].addre); strcpy(st[j+1].addre,addre);

strcpy(tel_no,st[j].tel_no); strcpy(st[j].tel_no,st[j+1].tel_no); strcpy(st[j+1].tel_no,tel_no);

strcpy(post_code,st[j].post_code); strcpy(st[j].post_code,st[j+1].post_code); strcpy(st[j+1].post_code,post_code);

strcpy(e_mail,st[j].e_mail); strcpy(st[j].e_mail,st[j+1].e_mail); strcpy(st[j+1].e_mail,e_mail);

}

} int x=0; if(strcmp(st[k].no,\"0\")) {

} if(x==1) {

} cout

void inter::format() {

} for(int i=0;i

} strcpy(st[i].addre,\"0\"); strcpy(st[i].e_mail,\"0\"); strcpy(st[i].name,\"0\"); strcpy(st[i].no,\"0\"); strcpy(st[i].post_code,\"0\"); strcpy(st[i].tel_no,\"0\");

(2).工作流程图:

1.通讯录主界面

2.添加:添加通讯录记录

3.显示:查询通讯录记录

4.删除:删除通讯录记录

5.修改:修改通讯录记录

小结(收获和建议) 这次的程序实设计实验是对我们进入大学以来学习程序设计语言结果的一次大检验,面对许多不懂得知识,通过他人的帮助,以及参考他人的成果,自己动手尝试,修改等,才完成。这个课程设计,花费了我近两个星期的时间,这也是因为书本不熟悉。通过这次设计,使我对《C语言》这门课程有了更深一步的了解。它不仅是计算机程序设计的重要理论技术基础,也在我们电子与信息专业的学习中占据着十分重要的地位。同时也使我们知道,要学好这门课程,仅学习书本上的知识是不够的,还要有较强的实践能力。因为我们学习知识就是为了实践。而只有多实践,多编写程序,才能更好的理解与掌握书本上的东西。利用计算机来编写程序,也让我感受到了编程的乐趣,极大的激发了我的兴趣。

推荐第4篇:管理系统填写

1.“培养管理”中的“学术活动登记”不填,其余都要认真填写,三五个字敷衍的不予审核;

2.填写“开题申请”时必填组长和组成人员,否则不能通过,通过后才能填写开题结果(也就是出席/同意/不同意人数);

3.关于成绩的问题,也就是学位学分不满的问题,有三种情况—— 第一种情况是系统将培养方案中的学位课认定为了非学位课,首先将“培养管理”——“学生成绩查询”这一栏中的课程性质(是否学位课)与培养方案核对,对不上的,属于这种情况,目前发现的,原理、教育史、学前、发展与教育心理学几个专业普遍有这个问题,已经全部解决了,如果其它专业还有,请派一名代表在这里回帖,我统一给改;第二种情况是“学生成绩查询”这一栏中的课程性质(是否学位课)与培养方案核对都对得上,但提交答辩申请时显示“学位学分不满”,这个原因是你在提交培养计划时把学位课选多了,解决方法是到“培养管理”——“提交培养计划”中修改自己的培养计划,把多余或重复选的学位课删掉,就可以了;

研究生管理系统中社会实践、教学实践、学术报告、文献报告成绩分为优良中差四个等级,因为我们没有参与同学们的实习实践活动,只能根据大家填写的内容来判断你实习实践的内容是否充实,进而评定相应等级,对于太过敷衍(每栏只写三五个字)的同学,我们也不愿意直接给评个差,所以暂不审核,有这样问题的同学自己完善。

1.“个人信息”中的学期注册、个人基本信息修改;涉及个人身份证号码修改的需要本人携带身份证原件及复印件、户口页,派出所开具的身份证号码变更证明原件及复印件;

2.如对“培养管理”中的“学生成绩查询”中查到的总学分数有异议,请自行联系原学院研究生秘书,我学院要求毕业生总学分不得低于培养方案要求的最低学分(学术型36分,专业学位34分),社会实践、教学实践、学术活动、做学术报告、文献借阅、中期考核等栏目个人填写(从“社会实践”开始的每一项都必填,否则不能提交答辩申请,具体内容据实填写即可,不必咨询,对于总学时等没有统一要求);

3.“毕业与学位”中的发表论文登记、科研成果登记、开题报告申请(“科研成果登记”一栏,只登本人承担的科研课题,没有可以空着,发表的论文不要登在这里;公开发表文章刊物的刊号必须填在备注栏中;答辩前只能拿到用稿通知的同学,在填写系统时选择“发表”,但必须在备注中注明“用稿通知”。);

4.待开题报告申请通过审核后,继续填写“毕业与学位”中的开题结果录入(该过程需要与研究生秘书交互进行:开题报告申请—>开题申请审核—>开题结果录入—>开题结果审核);

5.待开题结果通过审核后,继续填写“毕业与学位”中的学生答辩申请,直至系统显示允许参加答辩。

推荐第5篇:合同管理系统

工程管理(2)09550222

合同管理系统

合同管理系统,是建立在信息技术基础上,利用现代企业的先进管理思想,为企业提供决策、计划、控制与经营绩效评估的全方位、系统化的合同管理平台。

合同分类:合同依其标的不同,划分为一定的类型,包括:转移标的物所有权的合同(买卖合同、供用电水气热力合同、赠与合同);转移标的物用益权的合同(租赁合同、融资租赁合同、完成工作的合同、承揽合同、建设工程合同);给予信用的合同(借款合同);提供服务的合同(运输合同、保管合同、仓储合同、委托合同、行纪合同、居间合同);转移智慧成果的合同(技术合同)。

功能:业务管理是合同管理的核心需求,合同管理软件必须解决实际业务管理中的问题,专注于企业合同管理的动态化、智能化、网络化,为企业提供合理的流程和业务约束以及全方位的合同管理功能,包括合同起草、合同审批、文本管理、履约监督、结算安排、智能提醒合同收付款、项目管理、合同结款情况统计分析、报表输出和决策支持等。各项子系统:

合同起草:提供合同示范文本库,起草人选择对应的合同范本,填写合同要素,合同示范文本只允许起草人填空,不允许修改固定条款格式。

合同审批:根据企业的业务流程自定义软件中合同审批流程,保存所有的审批意见,帮助评审人员参考,最后打印出合同审批单。

工程管理(2)09550222 合同文件:管理所有与合同有关的文件,包括合同原稿、变更文件、附图等内容,将任意格式的电子版文档可以直接导入系统中。

结算管理:解决企业的资金管理,为合同细化了何时应该结算账款,无论是对收款还是付款均有重要意义,可以及时安排资金调度及收回款项,既保证按时守信,又合理充分利用资金,降低执行风险。

实际进度:明确记录合同进度,并与计划情况进行对比,方便领导随时了解合同动态执行的情况,到底完成到何种程度,完成的百分比是多少,方便领导调整进度,安排下一步的工作。

商品管理:采用合同商品清单、询价、报价表单管理对应标的物型号、规格等明细,可以按商品类型、交货期等信息统计合同商品数量和金额,为公司市场策略、财务规划、招投标管理等提供依据。

合同变更:记录合同变更的原因、影响,并将变更依据作为附件导入系统,从而兼顾了变更过程管理的严谨和自动性,关联结果,有据可查,权责明晰。

预警系统:系统自动扫描并对所有快到期的结款、审批、收货、验收、付款等关键节点或事项进行预警,帮助用户提前做好财务规划和分析决策。

报表:从不同角度对系统数据进行统计分析,辅助经营决策,多样化的统计方式,自定义统计条件,并将统计结果输出图形。

推荐第6篇:销售管理系统

销售

销售管理系统主要业务主要包括:客户管理、价格管理、信用管理、合同管理、出货管理以及贷款管理等

客户管理:

内容主要包括客户基础资料、客户特征、业务状况、交易现状 价格管理:使用历次售价、最新成本加成和按价格政策定价等三种价格依据。同 时,按价格政策定价时,支持商品促销价,可以按客户定价,也可以按存货定价。按存货定价时还支持按不同自由项定价。 主要包括存货价格、客户价格、折扣政策、价格组。

信用管理:

信用管理的目标包括降低企业赊账的风险,减少坏账损失;降低销售 变现天数,加快流动资金周转。其内容包括客户资信调查、制定信用政策、管理客户资信、应收账款的管理。

合同管理:

合同管理主要是订单管理。订单管理,主要是根据客户需求和企业的 生产能力,制定企业的供货计划,接受客户订单,同时协调客户与内部各部门尤其是生产和储运部门的工作,确保销售订单按时完成,并做好后续服务等相关工作。其内容包括库存信息管理、存货和客户价格管理、信用审查、付款条件与期限管理。

出货管理:

分为发货管理、退货管理以及客户档案管理三部分。发货管理内容包 括发货单、出库单生成,发货方式管理,发货检验跟踪。客户档案管理又包括客户信息管理,发货地址管理,发、退货记录等内容。 贷款管理:

以票据的方式管理客户的往来款,包括票据录入、客户贷款提现、转 账等。依据销售发货单开具销售发票,发票审核后即可确认收入,形成应收账款,在应收款管理系统可以查询和制单,并据此收款。开出销售发票向客户催收销售货款,并将发票转给财务部门记账。

各功能模块分析

销售管理子系统包含5个功能模块,分别为销售基础资料模块,收发货管理模块,销售计划管理模块,销售服务管理模块,销售订单管理模块,具体说明如下:

销售基础数据:基础数据是指与销售相关的基本资料包括费用定义、销售佣金、销售员资料、客户资料、订单取消原因、退货原因、交货方式、订货方式、价格种类、客户组别、销售类型等;

收发货管理:其主要功能包括销售过账,发票维护,差价维护,退、换货通知, 发货通知等;销售计划管理:包括销售计划的合并与维护两部分;

销售服务管理:主要是与销售服务相关过程的维护,包括销售服务记录,服务过 程记录,销售政策发布,销售网点维护与服务跟踪;

销售订单管理:主要是对合同相关及客户信用相关的功能。包括销售计划,产品 系列维护,信用管理,销售价格维护,订单、合同终止结清,订单、合同维护等。

推荐第7篇:运动员管理系统

#include #include #include #include\"conio.h\" #define N 20 struct student {char num[20]; char name[10]; float baimi; float sanjitiao; float chenggantiao; }; void menu(); int reads(struct student stu[N]); void save(struct student stu[N],int n); void add(); void del(); void sort(); void keep(); void sheep(); void query(); void show(); void change(); void main() {

int n;

while(1)

{

menu();

printf(\"\\n 请输入您要选择的操作序号,按回车键确认:\");

scanf(\"%d\",&n);

switch(n)

{

case 1: add();break;

case 2: show();break;

case 3: del();break;

case 4: change();break;

case 5: sort();break;

case 6: keep();break;

case 7 :sheep();break;

case 8: exit(0);

default: printf(\"输入错误,请输入列表中存在的序号!\\n \");

}

} } void menu() {

printf(\"

************************* 运动员成绩管理系统************************ \");

printf(\"\\n

O(∩_∩)O

1 添加运动员数据

O(∩_∩)O\");

printf(\"\\n

O(∩_∩)O

2 显示运动员数据

O(∩_∩)O\");

printf(\"\\n

O(∩_∩)O

3 删除运动员数据

O(∩_∩)O \");

printf(\"\\n

O(∩_∩)O

4 更改运动员数据

O(∩_∩)O \");

printf(\"\\n

O(∩_∩)O

5 百米成绩排序

O(∩_∩)O \");

printf(\"\\n

O(∩_∩)O

6 三级跳成绩排序

O(∩_∩)O \");

printf(\"\\n

O(∩_∩)O

7 撑杆跳成绩排序

O(∩_∩)O \");

printf(\"\\n

O(∩_∩)O

8 退出

O(∩_∩)O \");

printf(\" \\n

~(@^_^@)~~(@^_^@)~ ~(@^_^@)~ ~(@^_^@)~~(@^_^@)~ ~(@^_^@)~~(@^_^@)~ \"); } int reads(struct student stu[N]) // 读取运动员文件中的内容

{

FILE *fp;

int i=0;

if((fp=fopen(\"e:\\student.txt\",\"r\"))==NULL)

{

printf(\"文件打开失败!\\n\");

return 0;

}

else

{

for(i=0;!feof(fp);i++)

fscanf(fp,\"%s %s %f %f %f\\n\",stu[i].num,stu[i].name,&stu[i].baimi,&stu[i].sanjitiao,&stu[i].chenggantiao);

}

fclose(fp);

return i; } void save(struct student stu[N],int n) // 运动员信息改变后更新文件 {

FILE *fp;

int i=0;

if((fp=fopen(\"e:\\student.txt\",\"w\"))==NULL)

{

printf(\"文件打开失败!\\n\");

return ;

}

else

{

for(i=0;i

fprintf(fp,\"%s %s %f %f %f\\n\",stu[i].num,stu[i].name,stu[i].baimi,stu[i].sanjitiao,stu[i].chenggantiao);

}

fclose(fp); } void add()/*添加运动员信息*/ {

FILE *fp;

int n,i;

struct student stu;

if((fp=fopen(\"e:\\student.txt\",\"a\"))==NULL) //如果文件已经存在,可以追加学生信息

{

if((fp=fopen(\"e:\\student.txt\",\"w\"))==NULL) // 文件不存在时,创建新文件,输入学生信息

{

printf(\"文件打开失败!\\n\");

return;

}

}

printf(\"请输入要添加的运动员数量,按回车键确认:\");

scanf(\"%d\",&n);

for(i=1;i

{

printf(\"\\n请输入第%d个运动员的号码、姓名,用空格分开,并按回车键确认:\\n\",i);

scanf(\"%s%s\",stu.num,stu.name); printf(\"\\n请输入第%d个运动员的百米赛跑、三级跳和撑杆跳三项成绩,用空格分开,并按回车键确认:\\n\",i);

scanf(\"%f%f%f\",&stu.baimi,&stu.sanjitiao,&stu.chenggantiao);

fprintf(fp,\"%s %s %f %f %f\\n\",stu.num,stu.name,stu.baimi,stu.sanjitiao,stu.chenggantiao);

}

fclose(fp); } void show() // 运动员信息显示函数 {

struct student stu[N];

int i,n;

n=reads(stu);

printf(\"*********************所有的学生信息如下**********************\\n\\n\");

printf(\" 序号

号码

姓名

百米赛跑

三级跳

撑杆跳

\\n\");

printf(\"*************************************************************\\n\");

for(i=0;i

printf(\"\\n%3d%12s%11s%11.2f%12.2f%11.2f\\n\",i+1,stu[i].num,stu[i].name,stu[i].baimi,stu[i].sanjitiao,stu[i].chenggantiao);

getch(); } void del() /*运动员信息删除函数*/ {

struct student stu[N];

char number[20];

int n,i,j;

n=reads(stu);

printf(\"\\n请输入要删除信息运动员号码,按回车键确认:\");

scanf(\"%s\",number);

for(i=0;i

if(strcmp(number,stu[i].num)==0)

break;

if(i>=n)

{

printf(\"没有找到该运动员信息!\\n\");

return;

}

else

{

for(j=i+1;j

stu[j-1]=stu[j];

}

save(stu,n-1);

printf(\"删除成功!\\n\"); } void change() //学生信息更改 {

struct student stu[N];

int n,i;

char number[20];

printf(\"\\n请输入要更改信息的学生学号,按回车键确认:\");

scanf(\"%s\",number);

n=reads(stu);

for(i=0;i

if(strcmp(number,stu[i].num)==0)

break;

if(i>=n)

{

printf(\"无此学生信息!\");

return;

}

printf(\"\\n请输入更改后学生的号码,姓名,百米赛跑、三级跳、撑杆跳三门成绩,按回车键确认:\\n\");

scanf(\"%s%s%f%f%f\",stu[i].num,stu[i].name,&stu[i].baimi,&stu[i].sanjitiao,&stu[i].chenggantiao);

save(stu,n); } void sort() // 按百米赛跑成绩排名 {struct student stu[N],temp; int i,j,n; n=reads(stu); for(i=0;i

printf(\"*********************百米赛跑成绩排序结果如下****************************\\n\\n\");

printf(\" 名次

号码

姓名

百米赛跑

成绩

\\n\");

printf(\"***********************************************************************\\n\");

for(i=0;i

{

if(stu[i].baimi==stu[i+1].baimi)

printf(\"\\n%3d%12s%11s%11.2f%11.2f%11.2f%11.2f\\n\",j,stu[i].num,stu[i].name,stu[i].baimi,stu[i].baimi);

else

printf(\"\\n%3d%12s%11s%11.2f%11.2f%11.2f%11.2f\\n\",j++,stu[i].num,stu[i].name,stu[i].baimi,stu[i].baimi);

}

getch(); } void keep() // 按三级跳成绩排名 {struct student stu[N],temp; int i,j,n; n=reads(stu); for(i=0;i

printf(\"*********************三级跳成绩排序结果如下****************************\\n\\n\");

printf(\" 名次

号码

姓名

三级跳

成绩

\\n\");

printf(\"***********************************************************************\\n\");

for(i=0;i

{

if(stu[i].sanjitiao==stu[i+1].sanjitiao)

printf(\"\\n%3d%12s%11s%11.2f%11.2f%11.2f%11.2f\\n\",j,stu[i].num,stu[i].name,stu[i].sanjitiao,stu[i].sanjitiao);

else

printf(\"\\n%3d%12s%11s%11.2f%11.2f%11.2f%11.2f\\n\",j++,stu[i].num,stu[i].name,stu[i].sanjitiao,stu[i].sanjitiao);

}

getch(); } void sheep() // 按三级跳成绩排名 {struct student stu[N],temp; int i,j,n; n=reads(stu); for(i=0;i

printf(\"*********************撑杆跳成绩排序结果如下****************************\\n\\n\");

printf(\" 名次

号码

姓名

三级跳

成绩

\\n\");

printf(\"***********************************************************************\\n\");

for(i=0;i

{

if(stu[i].chenggantiao==stu[i+1].chenggantiao)

printf(\"\\n%3d%12s%11s%11.2f%11.2f%11.2f%11.2f\\n\",j,stu[i].num,stu[i].name,stu[i].chenggantiao,stu[i].chenggantiao);

else

printf(\"\\n%3d%12s%11s%11.2f%11.2f%11.2f%11.2f\\n\",j++,stu[i].num,stu[i].name,stu[i].chenggantiao,stu[i].chenggantiao);

}

getch(); }

推荐第8篇:市场营销管理系统

市场营销管理系统

市场营销是随着我国的改革开放和外国投资者进入中国市场,合作合资办企业而流入,我国的社会主义市场经济不断地深化发展。现在,这一概念已被大多数国有企业的经营者所接受。合资企业给我们带来崭新的市场营销方法和营销观念,其核心为“以顾客为中心”,“把顾客放在第一位”,“顾客的需求就是企业的需求”,将国有企业传统的推销观念(即以产品重点,由销售人员推销或促销而获利的观念),转变为现代营销观念。

企业市场营销具有哪些特点

( 1 )企业的生产计划、生产安排等活动是以市场要求为依据,是根据收到的订单和预测市场近期要求,作出计划和生产决策。

( 2 )特别注重提高在市场上的竞争能力。如一些合资企业,产品还没有投入生产,或者还没有投放市场,但其在公众中已发起了强大的广告攻势,进行企业产品形象宣传,反观一些国有企业并不重视企业的自我形象塑造,在公众(消费者)中的印象很淡薄,甚至没有任何印象。合资企业不断在外部进行形象装饰,而且还在产品或商品内涵上,不间断地改进技术,提高质量,改善包装外观,持续的降低成本等方面赢得消费者的青睐,从而保证自己的产品或商品在市场上占居竞争优势。

( 3 )企业不仅重视产品或商品的销售,而且强调以市场为核心的企业竞争策略和发展战略。

企业市场营销的组织机构

大多数合资企业,一般有着强烈的市场观念,因此都重视销售机构的建立,组织机构的特点有:

( 1 )建立完善、分工明确的销售信息和销售服务体系。

( 2 )细化按地域或对象的销售工作。

( 3 )确立销售管理体系在企业生产中龙头作用,确立市场要求对生产的引导地位。

合资企业的组织机构具有上述的特点,其组织机构形式有:

?分区式组织:企业根据用户的所在地点,将市场划分为不同的区域,按区域配置销售人员。

图案:(略)

这种组织机构比较简单,分工明确,易于考评销售人员绩效。缺点是各自为政。

?产品式组织:企业根据产品品种以及各产品的性能,对外销售数量、销售范围等因素而建立的营销组织。

图示:(略)

该组织机构优点:销售人员能集中管好分给自己的一个或几个品种,易于熟悉自己经营的产品知识。缺点:营销费用较高。

?功能性组织

图示:(略)

该组织机构优点:分工明确,便于各销售人员业务能力的提高,使各营销功能的实现,这种机构特别适应产品品种多、数量大和销售市场多的情况。缺点:各部门之间的配合需要销售经理协调。

合资企业营销组织机构是选择上述三种形式之一建立的,也可将三种形式加以组合运用,不管那一些组织形式,都有其长处和短处,具体选择哪一种,要看企业的产品和市场情况而定。

市场营销的内容

企业的市场主要内容包括:市场调查、市场预测、产品销售、运输、定价、广告和销售活动等一整套活动。

企业特别重视对市场的调研,大多数的企业建立了市场研究机构,隶属于营销部门,配置一些高质量、高素质、经验丰富的有事业感的市场调研人员,定期对市场作出分析预测,引导企业产品开发和产品销售,并且也是企业高级管理人员决策的重要信息依据。

建立独立的客户信息管理机构,加强与客户的联系,时时掌握市场的动向和客户的要求,不定期向客户传递企业的产品信息。

四、市场信息情报的收集和来源

市场信息的收集人员:基本分二类有专人收集信息和由销售和售后服务人员兼职收集信息。市场销售有句俗语:第一件商品是销售人员销出的,第二件商品是由售后服务人员售出的,说明售后服务的重要性,不容企业经营者忽视。同时更能说明售后服务人员收集的信息,更能反映客户要求的动向,因此也更为重要。美国著名的管理专家托瓦斯丁 .玻得斯说:“所有优秀的企业看来都充满着强大的服务精神。我们一个重要结论是:不管这些公司业务是金属加工、高级技术还是汉堡包,他们始终把自己规定为服务性行业”。他道出售后服务的重要性,在现代企业的经营活动中售后服务同产品价格、质量、交货期等共同构成企业的竞争力。

收集市场信息的方法有:

( 1 )通过代理商或分销商收集商品销售及市场动态。

( 2 )通过报纸、刊物。

( 3 )电台、电视、政府有关部门发布的经济指标。

( 4 )行业内各企业之间情报网。

( 5 )直接向顾客调查。

( 6 )其他收集途径。

在广泛收集市场情报信息的基础上,分析市场中人文、地理、经济和心理等方面因素,预测市场发展的趋势,并运用市场细分的方法,选择目标市场,制定正确的市场策略。

销售人员市场化组合及观念更新

企业的销售人员,绝大部分是从市场上招聘来的人员,从事过一段时间销售工作,都有着一定的销售经验,熟悉销售业务,甚至有一定的销售渠道关系。从市场招聘的销售人员均有一定的压力感,完不成销售指标,收入就会减少,销售业绩如果持续下滑,可能面临解雇或者自行辞职,从市场招聘来看销售人员,一般都有强烈的市场观念,与国有企业的销售人员在思想观念上有很大的区别,尽管目前国有企业的销售人员在观念上有改进,但传统的旧体制影响,不是短期内能从思想上解决的。

企业的销售人员能留下来的都是经过长时间考验、考核后产生的精兵强将。国有企业的销售人员一般是内部调动的,加之复杂的人际关系,传统的陋习十分严重,阻碍了销售工作与市场的接轨。销售人员市场化组合是销售管理工作创新的一条可尝试之路。方法有:

? 保守的方法。销售人员一部分从内部市场招聘,另一部分外部市场招聘,然后将销售人员组合,互相帮助、互相促进、互相提高,并在同一个销售奖励制度的管理下,促进企业销售工作的市场化,销售人员观念市场化,提高内部销售人员责任性和销售能力。

?激进的方法。销售部门经理,一名由市场招聘,另一名由企业安排,销售人员全部从市场招聘,采取完全市场化管理,例如:力波啤酒的销售人员,完全是从市场招聘,每个留用的销售人员可以说是百里挑一的精兵强将。

企业的销售人员对待顾客的态度,认为“顾客是我们的上帝,是我们的衣食父母,顾客不是我们的竞争对象,谁也不能与顾客争执取胜,不断满足顾客的需求,是我们工作的乐趣”,作为销售工作的信条和座右铭,回头再看看国有企业在市场营销中的表现“老大自居”,虽然有所改进,但不时地会流露出来,这种状况在国有企业销售人员身上有反映,在干部身上的反映为数也不少。完不成销售任

务,不是怨天就是怨地,只有改革的热情,没有改革的行动,高唱口号,掏桨糊就是一例。国有企业销售工作要取得突破性的进展,销售人员市场化的组合势在必行。

要实现销售管理创新,销售人员市场组合是十分重要的一个方面,思想观念的转变也是一个十分重要的方面,同时在对销售人员的业绩考核必须公正,科学的管理方法和考核措施,都是在销售管理中不可缺少的。

企业销售管理工作特点:

( 1 )企业有一个在厂长(经理)领导下的专事销售工作的组织,机构健全,制度完善,赏罚公正,运作高效。

( 2 )销售人员有强烈的市场和顾客第一的思想观念。

( 3 )销售人员大部分是从市场上招聘来的,被长期留用的销售人员都是销售业绩显著,百里挑一的销售人员。(包括一些合资企业的销售经理,有一部分是从市场上招聘)。

( 4 )售后服务归口于销售组织机构,时时可以了解顾客的要求。( 5 )有一个高度完善,反映敏捷的销售网络和顾客情报信息。

推荐第9篇:工程项目管理系统

行业分析

能源是国民经济重要的物质基础,是人类从事各种经济活动的原动力。随着科技的不断进步,各种现代化动力机械在生产、生活中得到广泛的应用。这种社会生产力的发展也推动了主要能源的变更,从原始的人力、畜力、水里到后来的木材、煤炭,再到石油、天然气,一直发展到当今的核能、太阳能以及各种新能源。

如今,随着政府、企业节能意识的提升和能源信息化市场的成熟,企业为了完成节能降耗目标,进行更好的资源调配、生产组织、部门能源结算、成本核算,以及争取政府节能技改资金支持,亟需建立一套有效的能源管理系统,对能源供应、存储、使用进行有效的管理。在用能在线监测系统的基础上,针对用能企业的工作性质和使用需求,我们进一步研制开发了功能更强大、更有针对性的企业能源管理信息系统。

行业运用状况

能源管理系统是一套综合能源数据获取、分析、管理的信息系统,提供了对企业能源的供应、存储、消耗全过程进行实时监测跟踪功能,同时利用能耗分析模型对企业用能管理提供业务支撑,以满足企业实时掌握能源状况、加强管理节能的需求,同时也方便了企业能源计量和核算工作。使企业能及时掌握能源消耗情况,挖掘节能潜力,提升能源管理水平和效率。

该系统由企业能源计量器具管理、重点耗能设备管理、能耗在线监测、能耗预测预警管理、能耗指标管理、自主清洁生产、自主能源审计管理、综合报表管理、智能决策支持、能效自控等10个模块构成,通过与数据采集系统以及企业自动控制系统的有效集成,能够在企业内部实现能源在线监测和综合管理服务功能。

解决方案

北京开运联合信息技术有限公司是一家专业的软件开发商和提供商,面向行业客户,我们提供高度个性化的行业解决方案,帮助客户实现信息化管理最佳实践,以满足客户需求。真正站在客户的角度,为客户量身打造一套客户满意的软件,实行定制化的开发服务。

2004年公司成立以来,我们对各行各业软件定制开发经验的积累,促使我公司开发出一套在各个行业通用的项目管理系统。只要客户有需要,我们可以提供二次开发,在为客户节省成本、时间的同时,开发出一套让客户满意的项目管理系统。

北京开运联合信息技术有限公司在对电力行业的工程项目管理业务进行深刻理解,为电力系统开发的通用项目管理软件“Creat-EPM项目管理系统”,作为一款能够满足客户、降低成本、节省时间和便于二次开发的软件,它的系统价值是相当可观的。

“Creat-EPM项目管理系统”作为响应电力系统单位的实际要求,特别是流程审批及时限控制等要求,为电力系统项目管理的自动化提供了良好的二次开发服务平台,“Creat-EPM项目管理系统”现已在电力系统中实施了多个案例,获得了大量的好评。

“Creat-EPM项目管理系统”性价比较同类产品更为出色:

图形化的表现形式,形象生动的展示和统计公司各项业务、费用等所占比例,帮助使用者更加方便的理解和管理。;

功能涵盖了计划组织管理、成本控制管理、工程建设管理、工程物资管理、工程文档管理、项目沟通管理、后台管理和查询、统计、分析等环节;

推荐第10篇:能量管理系统

微电网能量管理系统

1 微电网的典型结构

能量管理系统馈线AS3S4S5S6S2微型燃气轮机光伏电池馈线BS1电网监控器S7S8S9S10S11大电网PCC馈线C蓄电池组微型燃气轮机功率&电压控制器隔离开关断路器敏感负荷一般负荷电力传输线信息流线

图1 微电网结构图

图1为微电网的结构图[1][2],它通过隔离变压器、静态开关和大电网相连接。微电网中绝大部分的微电源都采用电力电子变换器和负载相连接,使其控制灵活。微电网内部有三条馈线,其中馈线A和B上连接有敏感负荷和一般负荷,根据用电负荷的不同需求情况,微电源安装在馈线上的不同位置,而没有集中安装在公共馈线处,这种接入形式可以减少线路损耗和提供馈线末端电压支撑。馈线C上接入一般负荷,没有安装专门的微电源,而直接由电网供电。每个微电源出口处都配有断路器,同时具备功率和电压控制器,在能量管理系统的控制下,调整各自功率输出以调节馈线潮流。当监测到大电网出现电压扰动等电能质量问题或供电中断时,隔离开关S1动作,微电网转入孤岛运行模式,以保证微电网内重要敏感负荷的不间断供电,同时各微电源在能量管理系统的的控制下,调整功率输出,保证微电网正常运行。对于馈线A、B、C上的一般负荷,系统则会根据微电网功率平衡的需求,将其切除。

2 负荷分类、要求及接入设备功能

2.1 负荷分类与要求

1 根据负荷对电力需求的特性可将负荷分为基本两大类[3]:

敏感负荷:对这一级负荷断电,将造成人身事故、设备损坏,将生产废品,使生产秩序 长期不能恢复,人民生活发生紊乱等。这是这是敏感负荷中的重要负荷。 由于供电中断会造成大量减产、人民生活会受到较大影响的用户负荷,这是敏感负荷中的比较重要的负荷。 一般负荷(非敏感负荷):敏感负荷以外的属于一般负荷。可视为一个可控的负荷参与微电网的能量调度,并且在适当的时候(孤网模式时)可中断其供电,以此确保敏感负荷的正常供电。

要求:敏感负荷。保证不间断供电以及较高的供电质量。并由独立电源供电。

非敏感负荷 对供电方式无特殊要求。

2.2 负荷接入设备功能

(1) 负荷通断控制

在正常情况下,敏感负荷与一般负荷均应正常供电,当微电网系统因事故出现功率缺额或运行在孤岛模式,应采取切断一般负荷,确保敏感负荷的正常供电。 (2) 负荷保护

具有自动跳闸和电动合闸功能,可切断故障电流,发挥保护作用。 (3) 微电网功率平衡控制-自动低频减载[4]

当微电网系统因事故出现功率缺额时,其频率将随之急剧下降,自动低频减载装置的任务是迅速断开相应数量的一般负荷,使系统频率在不低于某一允许值的情况下,达到有功功率的平衡,以确保微电网系统安全运行。 (4) 负荷监测

提供微电网线路负荷的实时数据包括负荷功率,线路电流情况。对所有线路进行监控,对大负荷及超负荷提供预警和报警信号。

3 微电源分类、特点、工作方式及接入设备功能

3.1 微电源分类与特点[5]

光伏电池无废气排放、无化石燃料消耗,采用与建筑物集成在一起的模块可联合生产低温热能为房间供暖。但输出的功率由光能决定,因此是断续的,不能与负荷完全匹配,因此常常需要蓄电池或其他辅助系统。一般光伏电池发电模块拥有最大功率点跟踪(MPPT)功能、电池板监测和保护功能、逆变并网等功能,以保证光伏电池能够可靠、安全地运行。

微型燃气轮机,具有体积小、质量轻、发电效率高、污染小、运行维护简单可以统一调度。微型燃气轮机模块具有气体温度、压力、流量测量、燃料供给、燃料注入控制、热量处理、转速监控,气体污染物监测、功率调节及并网等功能。具有电力电子转换和控制接口的微型燃气轮机可跟随电网的电压和频率变化,主要起负荷跟踪和削峰填谷的作用。它的另一个作用是完成基本的有功功率控制的同时,可调节系统输出的无功功率,实现电压调节和功率因数的调整。因此是目前最成熟、最具有商业竞争力的分布式电源之一。

3.2 微电源典型工作方式

(1) 光伏电池具有MPPT和定电压两种工作方式。

当工作在MPPT工作方式且无功功率可调时遵循Q-V下垂特性。 当工作在定电压工作方式时遵循P-f下垂特性。

(2) 微型燃气轮机可工作在功率可调的运行方式或定功率的运行方式。

当工作在功率可调的方式时遵循P-f下垂特性和Q-V下垂特性。在此工作方式下,微型燃气轮机可作为具有自适应调节功能的调节电源,快速跟踪负荷有功功率和无功功率的变化。

当工作在定功率的方式时按照设定值输出有功功率和无功功率。

2 3.3 微电源接入设备功能

由于光伏电池电压等级低,需采用DC-DC中的Boost电路升压至合适的电压等级,然后通过逆变把直流电变换为标准的交流电,供给负荷或并入电网。即经过DC-DC-AC变换接入微电网。并可根据系统稳定运行要求自动切换工作方式的功能。

微型燃气轮机为不稳定的交流电源,需要先变为直流电,然后通过逆变技术变成标准的交流电,供给负荷或并入电网,即经过AC-DC-AC变换接入微电网。并可根据系统稳定运行要求自动切换工作方式的功能。

3.4 微电源控制功能

微电源的基本控制由微电源控制器完成,主要功能包括微电源自身的调节功能即微电源机组工作方式的切换。能量调节功能包括有功/无功控制、电压/频率调节、孤岛模式下负荷分配/电压、频率调节等。

3.4.1 微电源工作方式的切换

根据微电网负荷用电需求并结合微电源控制策略切换微电源的工作方式。 (1) 对于光伏电池在MPPT和定电压模式之间切换。

(2) 微型燃气轮机可工作在定功率与功率可调的模式两种方式下。在功率可调时可工作低位运行和高位运行两种方式下。

(3) 储能装置根据蓄电池的荷电状况以及此时的负荷是需求,蓄电池可工作在充电模式与放电模式。

3.4.2 能量调节功能

(1) 有功功率调节

在并网运行模式时,系统的频率是固定,微电源发送分配好的有功功率,在孤网运行模式下,通过快速的电力电子装置,根据P-f下垂特性,调节微电源的输出有功功率使功率输出与负荷需求保持平衡。 (2) 无功功率调节

在并网运行模式下,能量控制器监测负荷和无功的变化,通过储能装置进行无功调节,并补偿无功,维持系统功率平衡。

在孤网运行模式下,应具备三个功能⑴根据预先设定的Q-V特性阻止末端电压偏压;⑵参与特定负荷线路的电压调整;⑶根据负荷设定的功率因数补偿无功。

电压调节:通过调节微电源电压的幅值,相角,与系统要求相匹配,而且负荷和微电网的功率因数可得到控制。

功率因数调节:当电动机启停时负载的功率因数是变化的,可以影响到微电网的电压稳定。通过调节微电源无功输出使负载的功率因数保持在预先设定的工作点。 对分布式电源的控制除了满足以上要求外,微电源自身还应具有以下功能: (1) 通信功能

接受能量管理系统的调度,同时上传自身的各种状态信息。 (2) 辅助的电能质量改善功能

微电源在自身不对电网造成污染的前提下,能在一定程度上对电网进行谐波抑制和不平衡补偿等。 (3) 保护功能

微电网内部有数量众多的分布式电源,且它们之间的距离短,这就造成了短路电流的急剧增大,而传统的继电保护装置因时效性难以起到应有的保护作用,严重威胁了电力电子设备的安全,所以分布式电源自身必须具备各种可靠的保护功能(如过压、过流及故障等)。

4 储能装置分类、特点、工作方式及接入设备功能

3 4.1 储能装置的分类与特点[5]

铅酸蓄电池尽管能量密度小,但功率密度高、放电时间长、由于技术成熟性价比高,因此成为当今使用最为广泛的蓄电池。当蓄电池作为调节电源时,每次调度之前应先检查蓄电池的剩余容量,若负荷低谷时蓄电池容量已经达到90%以上,则不给蓄电池充电;若剩余容量低于20%则暂时不用蓄电池,将它作为负载进行充电(负荷高峰时不充电)一直到容量达到80%以上为止,否则作为电源参加经济调度。

4.2 典型工作方式

蓄电池可工作在功率可调的运行方式或定功率的运行方式。 当工作在功率可调的方式时遵循P-f下垂特性和Q-V下垂特性。在此工作方式下,蓄电池组可作为具有自适应调节功能的调节电源,快速跟踪负荷有功功率和无功功率的变化。

当工作在定功率的方式时按照设定值输出有功功率和无功功率。

4.3 装置接入设备功能

蓄电池为直流电源,由于他们的电压等级低,需采用DC-DC中的Boost电路升压至合适的电压等级,然后通过逆变把直流电变换为标准的交流电,供给负荷或并入电网。即经过DC-DC-AC变换接入微电网。

蓄电池控制器具有对蓄电池电压、电流、储能的监控功能,还有充放电功能和启停限定功能。蓄电池充电时,能量管理系统主要监视蓄电池的充电状态、综合健康度和安全中断标准。主要监测的参数有:电压、电流和温度。当对蓄电池的所有状态检查完成后。蓄电池的充电定时器开始启动。如果检测到蓄电池超过临界安全值,则充电暂停,如果故障持续时间超过一定的值,则停止对蓄电池充电。并可根据系统稳定运行要求自动切换工作方式的功能。

5 系统运行目标与策略

5.1 联网模式下的运行目标与策略

在正常情况下,微电网并网运行,由大电网提供刚性的电压和频率支撑,内部微电源工作在电压源或电流源状态,在能量管理系统控制下,调整各自的功率输出。微电网和大电网共同承担内部负荷。

并网运行时,微电网能量管理的协调方案为: (1) 光伏发电一直保持 MPPT模式;

(2) 检测储能装置的荷电状况以确定是否充电。当检测到蓄电池未充满时应充电,若充满就停止充电。能量控制器检测负荷和无功的变化。在联网模式时,蓄电池不参与供电。仅通过储能装置进行无功调节,并补偿无功,维持功率平衡,维持系统稳定的作用。 (3) 微型燃气轮机在联网模式时不参与供电。

(4) 微电网能量管理器将增加与各级微电源之间的通信协调工作。

并网运行发生故障时,由于微电源的分布式特性,可由微电源能量管理系统迅速定位故障点位置。当故障点在微电网内部时,由微电网能量管理控制器通过综合各微电源的信息给出相应调整;当故障点在微电网外部时,通过主网调度中心与各高级调度中心相互通信以确定故障严重程度。如超出自身调节能力,相应微电网可选择与主网断开,进入孤岛运行,这样可同时保证主网与微电网的安全稳定运行。

5.2 孤岛模式下的运行目标与策略[6] [7] [8]

当大电网出现电压骤升、骤降、不平衡和谐波等电能质量问题或有计划检修时,微电网转入孤岛运行模式,此时的电压和频率由内部各微电源负责调节。负荷和微电源地投切常用来维持功率平衡以此确保微电网的电压和相角的恒定。因此控制策略必须确保敏感负荷的正常供电。

微电网能量管理的协调方案为:⑴应切除可中断负荷确保微电网对敏感负荷的可靠供 4 电,保证敏感负荷的正常工作;⑵光伏发电尽量一直保持MPPT模式(若需要可工作在电压限制模式);⑶根据储能装置的运行状况,管理微型燃气轮机的投切和发电容量。当储能装置吸收部分能量时,切除部分微型燃气轮机,当储能装置释放能量时,投入部分微型燃气轮机来供电;⑷能量控制器检测负荷和无功的变化,通过微型燃气轮机或储能装置进行P、Q调节,并无功补偿,维持功率平衡,保证供电质量。 在孤网模式下各微电源协调控制策略:

(1) 光伏电池应保持 MPPT模式,当光伏电池输出大于负荷消耗且蓄电池充满时,应工作在定电压模式。

(2) 蓄电池储能为0,光伏输出持续增加但小于负荷消耗时,蓄电池停止运行。光伏输出超过微电网负荷消耗,蓄电池未充满。蓄电池充电。

光伏输出小于负荷消耗时或光伏输出为零,蓄电池有储能,应工作在放电模式。

(3) 当光伏输出超过微电网负荷消耗,应工作在低输出运行模式。当负荷需求持续增加,光伏电池和蓄电池已不能满足负荷用电需求,微型燃气轮机则增加输出功率。光伏发电结束且储能装置储能为零,则完全由微型燃机轮机供电。

5.3 PCC接入监控设备的功能与要求

微电网PCC的各种状态信息包括系统电压、电流、有功、无功、频率、功率因数等参数以及各个微电源的状态信息能上传给能量管理系统,能量管理系统根据这些参数制定控制方案,发布命令。

6 微电网能量管理系统的功能与实现方法

微电网能量管理系统具有数据综合处理、方案制定、命令发布及与微电网并网功能,主要包括对微电源的控制、储能装置管理、负荷管理、来电自动并网、断电或故障自动进入孤岛运行的控制功能等[9]。 (1) 方案制定、命令发布

经过通信上传的PCC点,各微电源控制器,断路器,负荷节点的各种参数,经过综合数据处理,制定微电源的投切、工作方式切换、功率输出等调节,断路器的通断等控制策略。然后把这些设定值与控制命令发送各调节装置。维持微电网的正常运行。 (2) 对微电源的控制功能

根据能量管理系统的控制命令改变微电源的工作方式,并且按照发送的设定值调节微电源的功率输出。能量管理系统检测调节电源的输出特性。当负荷需求增大时,通知微电源增加输出功率。当负荷需求减少且蓄电池充满时,则通知微电源减少输出功率或关闭某些微电源。

(3) 储能装置的管理

蓄电池充放电与电压、功率管理 可检测蓄电的充放电状态,并且根据系统需求对其进行充放电管理,并能控制储能装置的工作方式。以及输出有功、无功功率,参与有/无功率调节。

(4) 负荷管理

根据检测到的负荷大小分配微电源的出力,保持微电源与负荷之间的平衡,在微电网孤网运行时,切除一般负荷,确保敏感负荷的正常供电。 (5) 模式切换与通断控制

当检测大电网来电时,能自动的将微电网由孤网运行模式过渡到并网运行模式下。当并网后发生故障且故障点在微电网外部时,通过主网与各微电网相互通信以确定故障严重程度。如超出自身调节能力,相应微电网可选择与主网断开,进入孤岛运行。并可实现两种运行模式的无缝转换。并根据微电网的工作状态发布微电源与断路器逻辑控制控制命令。当满 5 足投切条件时,能量管理系统通知微电源控制器和各断路器动作,完成预定的投切操作,以减少或增加输电线路的功率,确保微电网系统的功率平衡。

7 微电网能量管理系统的组成结构与实现方案

7.1 建立模型

建立了典型的微电网模型,包括微电网的电压等级、接线方式、运行方式、负荷模型、微电源类型、容量以及位置的确定并建立合适的微电源仿真模型。 1.电压等级:380V/220V 2.接线方式:微电网接线采用放射式接线。 运行方式: 并网运行、孤岛运行

3.负荷模型:采用恒功率静态模型来表示馈线上各节点的负荷,同时假设负荷三相对称。(1) 负荷类型:敏感负荷 非敏感负荷(可中断负荷)

(2) 负荷大小 最大负荷:敏感负荷与一般负荷功率需求之和为最大负荷。

最小负荷:取最大负荷的30%为最小负荷。

4.微电源类型: 微型燃气轮机、光伏电池、储能装置(铅酸蓄电池)。

5.微电源发电容量确定:微电源的额定功率应该与敏感负荷峰值功率需求相匹配。6.微电源位置确定[10]:可选择在线路中间偏末端的位置。

7.2 微电网能量管理

(1) 微电源管理

根据微电网的拓扑结构制定相应的控制策略

在并网模式时,应预先确定微电源的功率输出值,能量管理系统合理分配设定值给各个微电源。并监控PCC点的电量参数,当出现无功不平衡时,并确定无功补偿量,分配这个值于储能装置,使储能装置发无功,维持系统功率平衡。并根据并网运行模式下微电源协调控制策略投切微电源。

在孤网模式运行时,根据负荷需求确定微电源的功率输出值,能量管理系统合理分配设定值与各微电源。根据预先设定的VQ特性阻止末端电压偏压;参与特定负荷线路的电压调整;根据负荷设定的功率因数补偿无功。通过能量管理系统把这个这分配给调节微电源。维持电压稳定。能量管理系统根据能量管理控制算法确定设定值,分配给各微电源参与系统的调节,以确保系统的稳定运行。 (2) 储能装置的充放电管理

能量管理系统主要监视蓄电池的充电状态、综合健康度和安全中断标准。按照能量管理系统的控制指令充放电。 (3) 负荷管理

提供负荷跟跟随功能,实时检测负荷大小,在并网模式下,负荷的供电主要由大电网提供。在孤网模式运行时,一般负荷被切除,根据检测到的负荷大小,分配微电源的出力,保持微电源与负荷之间的平衡。

7.3 能量管理系统通讯与控制功能

微电网能量管理系统具有数据综合处理、方案制定、命令发布及与微电网并网功能,主要包括对微电源的管理、储能装置管理、负荷管理、断网与并网的控制功能等。各控制器经过通讯线路上传各自的状态信息,包括的PCC点电网参数,各微电源输出特性参数,断路器通断状态,负荷的各种电量参数,经过能量管理系统的综合数据处理,制定微电源的投切、工作方式切换、功率输出等调节,断路器的通断等控制策略。然后把这些设定值与控制命令发送各调节装置,维持微电网的正常运行。

7.3.1 上传信息:

6 (1) PCC点:通过大电网监控装置上传大电网的各种参数包括大电网的电压、频率、相位角等。在联网运行模式下,将大电网电压、频率与微电网当前电压和频率做比较,分析是否同步,如果偏差超过允许范围将调节储能装置和光伏电池的功率输出,以尽快与大电网同步。

(2) 光伏电池功率电压控制器:上传光伏电池的工作方式(MPPT/定电压),输出电压、电流、频率,有功功率、无功功率等参数值。 (3) 储能装置(蓄电池)功率电压控制器:上传储能当前的工作方式、充放电的电压、电流,输出时有功功率、无功功率等参数值,荷电状态等。

(4) 微型燃气轮机功率电压控制器:上传微型燃气轮机的运行状况(是否投入运行、低位运行、高位运行、)工作方式、输出电压、电流、频率,有功功率、无功功率等参数值。 (5) 负荷参数:包括负荷的大小,电压、电流,频率,功率因数等。 (6) 各断路器的通断状况。

7.3.2 发送命令: (1) PCC点的信息

在联网运行模式下,将大电网电压、频率与微电网当前电压和频率做比较,分析是否同步,如果偏差超过允许范围能量管理系统计算无功功率补偿量,并把这个值传送给储能装置。命令储能装置发送无功,维持系统平衡。

当监测到大电网出现电压扰动等电能质量问题或供电中断时,通知隔离开关S1动作,微电网转入孤岛运行模式。

当大电网来电时,检测当前大电网与微电网的电压、频率、相位角,若微电网与电网不同步,能量管理系统计大电网与微电网的参数差额,计算出补偿量,把这设定值通知给运行中的微电微电网。调节功率输出,尽快与大电网的同步。 (2) 光伏电池

1) 在联网运行模式下:能量管理系统通知其一直工作在MPPT方式下。 2) 在孤网运行模式下:当光伏电池输出大于负荷消耗且蓄电池充满时并且储能装置充满时,通知光伏电池控制器改变运行方式,工作在定电压方式下,否则应一直保持工作在MPPT方式。当光伏电池输出为0时,通知光伏电池控制器停止运行。 (3) 储能装置

根据负荷需求与荷电状况确定其充放电与工作方式 1) 联网运行模式时:能量管理系统发送命令与储能装置,仅工作在充电的工作方式下,当检测到储能装置未充满时。蓄电池充电。若充满,则停止充电。

2) 孤网运行模式时:蓄电池储能为0,光伏输出持续增加但小于负荷消耗时,蓄电池停止运行。光伏输出超过微电网负荷消耗,蓄电池未充满。通知蓄电池控制器工作在充电方式。光伏输出小于负荷消耗时或光伏输出为零,并检测到储能装置有储能,通知储能装置放电。当储能装置输出为0时,通知储能装置控制器停止运行。 (4) 微型燃气轮机

1) 在联网运行模式时,能量管理系统通知微型燃气轮机不投入运行。 2) 在孤网运行模式时,当光伏输出超过微电网负荷消耗,通知微型燃气轮机工作在低输出运行模式。当负荷需求持续增加,光伏电池和蓄电池已不能满足负荷用电需求,微型燃气轮机则增加输出功率。当储能装置与光伏电池输出为零时,通知两个微型燃气轮机完全供电。

(5) 各断路器的通断控制

1) 在联网运行模式时,应密切监视个断路器的通断,当某条支路或节点电压、电流过高时,应迅速切断该支路或节点的断路器,并发送维修指令,通知维修人员快捷解除故障, 7 保障负荷的正常供电。

2) 在孤网运行模式时,通知隔离开关S1快速动作断开与大电网的连接,微电网进入孤网运行模式。断路器S

3、S11动作切断一般负荷的供电,确保敏感负荷的正常供电。当微电网供电仍不满足敏感负荷需求时,应将敏感负荷中供电等级较低的较重要敏感负荷切除,通知断路器S6或S10动作,确保重要敏感负荷的正常供电。 (6) 负荷的控制

在联网模式是,确保所有负荷的正常供电。

在孤网模式时,首先将一般负荷切除,确保敏感负荷的供电。

当储能装置与光伏电池输出均为0,且两微型燃气轮起完全供电,仍不能满足负荷需求时,应考虑将敏感负荷中供电优先级较低的负荷切除,命令所在支路的断路器断开。保证重要敏感负荷的供电。若系统存在两个或两个以上供电等级相同的较重要敏感负荷时,能量管理系统应采集当前较敏感负荷的大小,并结合微电源的运行情况做出判断,若将较小负荷切除时,不会造成系统的电压频率降低,可将较小负荷切除,若会出现电压、频率不稳定,须将较大负荷切除。

当某负荷节点的电压超过允许范围时,根据无功补偿算法,制定无功补偿量,并把这个设定值传送送给调节电源,使其参与电压调节。

7.4 微电网的突发事故的处理

联网运行发生故障时,由于微电源的分布式特性,可由微电源能量管理系统迅速定位故障点位置。当故障点在微电网内部时,由微电网能量管理控制器通过综合各微电源的信息给出相应调整;当故障点在微电网外部时,通过主网调度中心与各高级调度中心相互通信以确定故障严重程度。如超出自身调节能力,相应微电网可选择与主网断开,进入孤岛运行,这样可同时保证主网与微电网的安全稳定运行。

孤网运行发生故障时,由于微电源的分布式特性,可由微电源能量管理系统迅速定位故障点位置。当故障点在微电网内部时,由微电网能量管理控制器通过综合各微电源的信息给出相应调整;如超出自身调节能力,相应微电源断路器可选择与微电网断开,微电网相应的拓扑结构发生变化如下图2。

8 能量管理系统馈线AS3S4S5S6S2微型燃气轮机光伏电池馈线BS1电网监控器S7S8S9S10S11大电网PCC馈线C蓄电池组微型燃气轮机功率&电压控制器隔离开关断路器敏感负荷一般负荷电力传输线信息流线

图1 微电网结构图

1) 通知断路器S

2、S7开、S

5、S9闭:微电网分割成两个孤岛区域,分别是馈线A中微型汽轮机和光伏电池并联运行,馈线B中蓄电池组和微型燃气轮机并联运行。

2) 通知断路器S

2、S7闭、S

5、S9开:微电网分割成三个孤岛区域,分别是馈线A中微型汽轮机和馈线B中蓄电池组并联运行,馈线A中光伏电池和馈线B中微型燃气轮机各自独立运行,单独为敏感负荷一对一供电。

3) 通知断路器S

2、S

7、S9闭、S5开:微电网分割成两个孤岛区域,分别是馈线A中微型汽轮机和馈线B中蓄电池组和微型燃气轮机并联运行,馈线A中光伏电池独立运行,单独为敏感负荷一对一供电。

4) 通知断路器S

2、S

5、S7闭、S9开:微电网分割成两个孤岛区域,分别是馈线A中微型汽轮机和光伏电池与馈线B中蓄电池组并联运行,馈线B中微型燃气轮机独立运行,单独为敏感负荷一对一供电。

5) 通知断路器S

2、S

5、S

7、S9全开:微电网全部解列,4个微源分别独立运行,单独为各自的敏感负荷一对一供电。

几种不同的孤岛拓扑结构直接决定了微电网对微电源所采取的控制方法。能量管理系统根据其特定的拓扑结构制定控制策略,并发出警报信号,告知维修人员,尽快解决故障。保证系统安全稳定运行。

几种不同的孤岛拓扑结构直接决定了微电网对微电源所采取的控制方法。能量管理系统根据其特定的拓扑结构制定控制策略,并发出警报信号,告知维修人员,尽快解决故障。保证系统安全稳定运行。

9

参考文献

[1] Later ,Akhil A , Mmarany C .White paper on integration of distributed energy resources —the CERTS microgrd concept.[2007206201]http://certs.lbl.gov/pdf/LBNL_50829.pdf [2] F.Katiraei, R.Iravani, N.Hatziargyriou, ―Microgrids management,‖ IEEE Power and Energy Magazine, vol.6, no.3, pp.54 –65, May-June 2008 [3] 于永源 杨绮雯.电力系统分析(第二版).北京:中国电力出版社,2004.[4] 杨冠城.电力系统自动装置原理(第三版).北京:中国电力出版社,2005.[5] 殷桂梁,杨丽君,王珺.分布式发电技术.北京:机械工业出版社, 2008.[6] 章健,艾芊,王新刚.多代理系统在微电网中的应用 电力系统及其自动化 2008,32(24).[7] J.P.Lopes,C.Moreira,and A.Madureira,―Defining control strategies for microgrids islanded operation,‖ IEEE Trans.Power System., vol.21, no.2, pp.916–924, May 2006.[8] F.Katiraei, ,M.R.Iravani,“Power Management Strategies for a Microgrid With Multiple Distributed Generation Units” Power Systems, IEEE Transactions on Volume 21, Iue 4, Nov.2006 Page(s):1821 – 1831 [9] D.Kueck, R.H.Staunton, S.D.Labinov, B.J.Kirby Microgrid Energy Management System.[10] 王志群,朱守真等.分布式发电接入位置和注入容量限制的研究 电力系统及其自动 化

学报 2005,17(1)

目录

编者引言瞧,这个人

石滋宜序蒙牛:“心”的经营

郭振玺序“金身”牛根生

目录

编者引言瞧,这个人

石滋宜序蒙牛:“心”的经营

郭振玺序“金身”牛根生

目录

编者引言瞧,这个人

石滋宜序蒙牛:“心”的经营

郭振玺序“金身”牛根生

目录

编者引言瞧,这个人

石滋宜序蒙牛:“心”的经营

郭振玺序“金身”牛根生

目录

15 编者引言瞧,这个人

石滋宜序蒙牛:“心”的经营

郭振玺序“金身”牛根生

目录

编者引言瞧,这个人

石滋宜序蒙牛:“心”的经营

郭振玺序“金身”牛根生

目录

编者引言瞧,这个人

石滋宜序蒙牛:“心”的经营

郭振玺序“金身”牛根生

目录

编者引言瞧,这个人

石滋宜序蒙牛:“心”的经营

郭振玺序“金身”牛根生

目录

编者引言瞧,这个人

石滋宜序蒙牛:“心”的经营

郭振玺序“金身”牛根生

目录

编者引言瞧,这个人

石滋宜序蒙牛:“心”的经营

16 郭振玺序“金身”牛根生

目录

编者引言瞧,这个人

石滋宜序蒙牛:“心”的经营

郭振玺序“金身”牛根生

目录

编者引言瞧,这个人

石滋宜序蒙牛:“心”的经营

郭振玺序“金身”牛根生

目录

编者引言瞧,这个人

石滋宜序蒙牛:“心”的经营

郭振玺序“金身”牛根生

目录

编者引言瞧,这个人

石滋宜序蒙牛:“心”的经营

郭振玺序“金身”牛根生

目录

编者引言瞧,这个人

石滋宜序蒙牛:“心”的经营

郭振玺序“金身”牛根生

目录

17 编者引言瞧,这个人

石滋宜序蒙牛:“心”的经营

郭振玺序“金身”牛根生

目录

编者引言瞧,这个人

石滋宜序蒙牛:“心”的经营

郭振玺序“金身”牛根生

目录

编者引言瞧,这个人

石滋宜序蒙牛:“心”的经营

郭振玺序“金身”牛根生

目录

编者引言瞧,这个人

石滋宜序蒙牛:“心”的经营

郭振玺序“金身”牛根生

目录

编者引言瞧,这个人

石滋宜序蒙牛:“心”的经营

郭振玺序“金身”牛根生

目录

编者引言瞧,这个人

石滋宜序蒙牛:“心”的经营

18 郭振玺序“金身”牛根生

目录

编者引言瞧,这个人

石滋宜序蒙牛:“心”的经营

郭振玺序“金身”牛根生

目录

编者引言瞧,这个人

石滋宜序蒙牛:“心”的经营

郭振玺序“金身”牛根生

目录

编者引言瞧,这个人

石滋宜序蒙牛:“心”的经营

郭振玺序“金身”牛根生

目录

编者引言瞧,这个人

石滋宜序蒙牛:“心”的经营

郭振玺序“金身”牛根生

目录

编者引言瞧,这个人

石滋宜序蒙牛:“心”的经营

郭振玺序“金身”牛根生

目录

19 编者引言瞧,这个人

石滋宜序蒙牛:“心”的经营

郭振玺序“金身”牛根生

目录

编者引言瞧,这个人

石滋宜序蒙牛:“心”的经营

郭振玺序“金身”牛根生

目录

编者引言瞧,这个人

石滋宜序蒙牛:“心”的经营

郭振玺序“金身”牛根生

目录

编者引言瞧,这个人

石滋宜序蒙牛:“心”的经营

郭振玺序“金身”牛根生

目录

编者引言瞧,这个人

石滋宜序蒙牛:“心”的经营

郭振玺序“金身”牛根生

目录

编者引言瞧,这个人

石滋宜序蒙牛:“心”的经营

20 郭振玺序“金身”牛根生

目录

编者引言瞧,这个人

石滋宜序蒙牛:“心”的经营

郭振玺序“金身”牛根生

目录

编者引言瞧,这个人

石滋宜序蒙牛:“心”的经营

郭振玺序“金身”牛根生

目录

编者引言瞧,这个人

石滋宜序蒙牛:“心”的经营

郭振玺序“金身”牛根生

目录

编者引言瞧,这个人

石滋宜序蒙牛:“心”的经营

郭振玺序“金身”牛根生

目录

编者引言瞧,这个人

石滋宜序蒙牛:“心”的经营

郭振玺序“金身”牛根生

目录

21 编者引言瞧,这个人

石滋宜序蒙牛:“心”的经营

郭振玺序“金身”牛根生

目录

编者引言瞧,这个人

石滋宜序蒙牛:“心”的经营

郭振玺序“金身”牛根生

目录

编者引言瞧,这个人

石滋宜序蒙牛:“心”的经营

郭振玺序“金身”牛根生

目录

编者引言瞧,这个人

石滋宜序蒙牛:“心”的经营

郭振玺序“金身”牛根生

目录

编者引言瞧,这个人

石滋宜序蒙牛:“心”的经营

郭振玺序“金身”牛根生

目录

编者引言瞧,这个人

石滋宜序蒙牛:“心”的经营

22 郭振玺序“金身”牛根生

目录

编者引言瞧,这个人

石滋宜序蒙牛:“心”的经营

郭振玺序“金身”牛根生

目录

编者引言瞧,这个人

石滋宜序蒙牛:“心”的经营

郭振玺序“金身”牛根生

目录

编者引言瞧,这个人

石滋宜序蒙牛:“心”的经营

郭振玺序“金身”牛根生

目录

编者引言瞧,这个人

石滋宜序蒙牛:“心”的经营

郭振玺序“金身”牛根生

目录

编者引言瞧,这个人

石滋宜序蒙牛:“心”的经营

郭振玺序“金身”牛根生

目录

23 编者引言瞧,这个人

石滋宜序蒙牛:“心”的经营

郭振玺序“金身”牛根生

目录

编者引言瞧,这个人

石滋宜序蒙牛:“心”的经营

郭振玺序“金身”牛根生

目录

编者引言瞧,这个人

石滋宜序蒙牛:“心”的经营

郭振玺序“金身”牛根生

目录

编者引言瞧,这个人

石滋宜序蒙牛:“心”的经营

郭振玺序“金身”牛根生

24

第11篇:通讯录管理系统

摘 要

为了人们对他人信息的记忆方便而设计,开发的一套“通讯录管理系统“软件。 通过该题目的设计过程,可以培养学生结构化程序设计的思想,加深对高级语言基本语言要素和控制结构的理解,针对c语言中的重点和难点内容进行训练,独立完成有一定工作量的程序设计任务,同时强调好的程序设计风格。得到软件工程的综合训练,提高解决实际问题的能力。

关键字:信息;管理;实用

Abstract

Designed for people to others the memory of information convenient, developed a set of \"mail list management system\" software.

Through the design proce of this subject, students can be structured programming ideas, deepen our understanding of the advanced language basic language elements and control the understanding of the structure, conduct training for emphasis and difficulty in C language, independently complete the program design has a certain work tasks, while emphasizing the good programming style.Comprehensive training in software engineering, improving the ability to solve practical problems.

Keywords: Information; management; practical

目 录

1 概述 .........................................................................1 1.1设计目的 ..................................................................1 1.2设计要求 ..................................................................1 1.3系统功能需求分析 ..........................................................2 2 总体设计 .....................................................................3 2.1总体功能模块图 ............................................................3 2.2程序的数据设计 ............................................................4 3详细设计 .....................................................................5 3.1功能及工作流程图 ..........................................................5 3.2源程序代码 ................................................................8 4调试分析 ....................................................................19 4.1测试 .....................................................................19 4.2问题思考与调试: .........................................................27 5总结 ........................................................................28 参考文献 ......................................................................29 致 谢 ........................................................................27

1 概述

1.1设计目的

随着信息社会的高速发展,人与人之间的联系越来越频繁,通讯方式越来越多样化,如何保证与朋友、同学、同事、领导、亲戚等之间的联系,并能方便快捷的查找、记录、修改其相关通讯信息。仅靠以前单独的手工记录已远远不能满足当前的需要。

开发一个通讯录管理系统,借助计算机可以方便、快捷、灵活的管理个人的朋友及相关人员的通讯信息,了解友人相关信息,帮助与友人保持联络。

所以设计一个通讯录管理系统管理各人的通讯信息是是非必要的。

设计“通讯录管理系统”使其具有数据插入、修改、删除、显示和查询等功能。 (1)数据包括:人名、工作单位、电话号码和E-mail地址。 (2)可对记录中的姓名和电话号码进行修改。 (3)可增加或删除记录。 (4)可显示所有保存的记录。 (5)可按人名或电话号码进行查询。

1.2设计要求

建立通讯录信息,信息至少包含姓名、住址、单位、固定电话、移动手机、分类(如同事、朋友、同学、家人等)、E-mail、QQ等。

该系统提供添加、删除、修改和查找功能,其中按姓名方式删除、修改,按姓名、单位、分类方式查找。

将通讯录保存在文件中。 能够输出通讯录中的信息。

1.3系统功能需求分析

主要包含一下多种功能:

添加:添加通讯录记录 显示:显示通讯录记录 删除:删除通讯录记录 查询:查询通讯录记录 修改:修改通讯录记录 保存:将信息保存到文件

本系统为通讯录管理系统,可由用户自由添加,删除和修改信息,还可以将通讯录信息导出到文本文档,极大的方便了用户的使用。

2 总体设计

思路:我们首先设计出了主函数,然后根据去要实现的功能分别设计录入联系人信息、浏览、查询、修改、删除功能的子函数。删除函数的设计是首先从文件内找到要删除的人,然后通过写一个实现删除目的的FOR循环实现删除。修改也大体和删除相同,添加函数在设计时通过申请一片空间,然后通过指针将需要添加的信息添加进去,从而实现添加功能。

2.1总体功能模块图

图2.1 总体功能模块图

添加:可以添加通讯录记录,依次输入编号、姓名、年龄、电话号码、通讯地址、电子邮箱后,会提示是否继续添加。

显示:可以以表格形式输出所有通讯录里的记录。

删除:输入欲删除的那个人的名字后,会自动删除他(她)的记录内容。 查询:可以选择用姓名、电话、地址三种方式查询。

修改:输入欲修改的那个人的名字后,再依次输入编号、姓名、年龄、电话号码、通讯地址、电子邮箱即可完成修改。

保存:输入文件名(带后缀名)后,即可将通讯录信息保存到文件。 运行所需环境:win7及以下各版本windows,visual C++6.0。 2.2程序的数据设计

该系统用下面六个功能模块编写,每个模块执行不同的功能,体现了模块化设计的思想。下面六个模块都是利用C语言文件,向文件中追加数据、修改数据、查询数据和除数据。

创建:用fopen()建立一个文本文件,然后用fprintf()向其中输入数据(例如,向文件中输入“姓名”,“地址”等), 并对文件进行命名。

添加:可以添加通讯录记录,利用C语言文件,向文件中按顺序输入姓名、住址、单位、固定电话、手机号码、分类(如同事、朋友、同学、家人等)、E-mail、QQ,再用fclose()函数关闭并保存文件。

输出:也是用通过循环依次输出文件中的数据,即输出所有通讯录里的记录。 删除:输入你要删除的人的姓名后,系统会自动删除他(她)的记录,在删除通过switch语句满足提示你确认删除的功能,只有等你确认删除后才会删除。 查找:为了满足用户的实际需求,设计了三种查询方式,可以用姓名、单位、分类三种方式查找通讯录记录。这里用到strcmp()函数,通过比较字符串是否相同来判别是否找到相关信息,找到后,就把文件中的数据赋给对应的变量,再把变量所带的值输出到屏幕上。

修改:输入你要修改的那个人的姓名后,系统会查找该通讯录文件(此时用发ftell()函数来跟踪文件指针的指向地址,找到个人的记录后,会显示他(她)的记录,然后通过fseek()函数来找到修改处的地址,然后用户再依次输入他(她)的相关信息来替代以前的记录。

保存:用到fclose()函数,每次操作成功后会自动保存到指定的文件中。

3详细设计

3.1功能及工作流程图

①添加:添加通讯录记录,依次输入编号、姓名、年龄、电话号码、通讯地址、电子邮箱后,会提示是否继续添加。

图3.1(1)添加流程图

②显示:以表格形式输出所有通讯录里的

图3.1(2)显示流程图

③删除::输入欲删除的那个人的名字后,会自动删除他(她)的记录内容。

图3.1(3)删除流程图

④查询:可以选择用姓名、电话、地址三种方式查询。

图3.1(4)查询流程图

⑤修改:输入欲修改的那个人的名字后,再依次输入编号、姓名、年龄、电话号码、通讯地址、电子邮箱即可完成修改。

图3.1(5)修改流程图 3.2源程序代码

#include #include #include

typedef struct

Person pe[80];

int menu_select()

{

char c; do{

system(\"cls\");

printf(\"\\t\\t *****通讯录***** \\n\");

printf(\"\\t\\t┌───────┐\\n\");

printf(\"\\t\\t│ 1.添加记录

│\\n\"); printf(\"\\t\\t│ 2.显示记录

│\\n\"); printf(\"\\t\\t│ 3.删除记录

│\\n\"); printf(\"\\t\\t│ 4.查询记录

│\\n\"); printf(\"\\t\\t│ 5.修改记录

│\\n\"); {

char score;

/*编号*/ char name[10];

/*姓名*/ char num[15];

/*号码*/ char email[20]; char age[8]; char adds[20];

/*邮箱*/ /*年龄*/

/*住址*/ }Person;

} printf(\"\\t\\t│ 6.保存记录

│\\n\"); printf(\"\\t\\t│ 0.退出程序

│\\n\"); printf(\"\\t\\t└───────┘\\n\"); printf(\"\\t\\t请您选择(0-6):\"); c=getchar();

}while(c\'6\'); return(c-\'0\');

int Input(Person per[],int n) {

gets(x);

int i=0;

char sign,x[10];

while(sign!=\'n\'&&sign!=\'N\') {

printf(\"\\t编号:\");

scanf(\"\\t%d\",&per[n+i].score); printf(\"\\t姓名:\");

scanf(\"\\t%s\",per[n+i].name); printf(\"\\t年龄:\"); scanf(\"\\t%s\",per[n+i].age); printf(\"\\t电话号码:\"); scanf(\"\\t%s\",per[n+i].num); printf(\"\\t通讯住址:\"); scanf(\"\\t%s\",per[n+i].adds); printf(\"\\t电子邮箱:\"); scanf(\"\\t%s\",per[n+i].email);

}

} printf(\"\\n\\t是否继续添加?(Y/N)\"); scanf(\"\\t%c\",&sign); i++;

return(n+i);

void Display(Person per[],int n)

{

int i;

printf(\"--------\\n\");

/*格式*/

printf(\"%-5d%-8s%-6s%-13s%-15s%-15s\\n\",per[i-1].score,per[i-1].name,per[i-1].age,perprintf(\"编号

姓名

年龄

电话号码

通讯地址

电子邮箱\\n\"); printf(\"--------\\n\");

for(i=1;i

{

[i-1].num,per[i-1].adds,per[i-1].email);

}

printf(\"--------\\n\"); system(\"pause\"); if(i>1&&i%10==0)

{

} printf(\"\\t----\\n\"); printf(\"\\t\"); system(\"pause\");

printf(\"\\t----\\n\"); }

int Delete_a_record(Person per[],int n) {

} char s[20]; int i=0,j;

printf(\"\\t请输入想删除记录中的名字:\"); scanf(\"%s\",s);

while(strcmp(per[i].name,s)!=0&&i

}

for(j=i;j

}

printf(\"\\t\\t\\t已经成功删除!\\n\"); return(n-1); strcpy(per[j].num,per[j+1].num); strcpy(per[j].name,per[j+1].name); strcpy(per[j].age,per[j+1].age); strcpy(per[j].adds,per[j+1].adds); strcpy(per[j].email,per[j+1].email); per[j].score=per[j+1].score; printf(\"\\t通讯录中没有此人!\\n\"); return(n); void Query_a_record(Person per[],int n) {

int m; printf(\"\\t\\n请选择查询方式:\\n\");

printf(\"\\t┌──────┐\\n\");

printf(\"\\t│1------姓名 │\\n\");

printf(\"\\t│2------电话 │\\n\");

printf(\"\\t│3------地址 │\\n\");

printf(\"\\t│4------返回 │\\n\");

printf(\"\\t└──────┘\\n\");

printf(\"请选择:\");

scanf(\"%d\",&m);

while(m!=1&&m!=2&&m!=3&&m!=4)

{

if(m==1) {

char s[20]; int i=0;

printf(\"\\t请输入想查询的姓名:\"); scanf(\"\\t%s\",s);

while(strcmp(per[i].name,s)!=0&&i

} printf(\"输入错误,请重新选择:\"); scanf(\"%d\",&m);

} ; } return;

printf(\"\\t此人编号: %d\\n\",per[i].score); printf(\"\\t此人年龄: %s\\n\",per[i].age); printf(\"\\t电话号码: %s\\n\",per[i].num); printf(\"\\t通讯地址: %s\\n\",per[i].adds); printf(\"\\t电子邮箱: %s\\n\",per[i].email); if(m==2) {

char s[20]; int i=0;

printf(\"\\t请输入想查询的电话:\"); scanf(\"\\t%s\",s);

while(strcmp(per[i].num,s)!=0&&i

} ; }

printf(\"\\t此人编号: %d\\n\",per[i].score); printf(\"\\t此人姓名: %s\\n\",per[i].name); printf(\"\\t此人年龄: %s\\n\",per[i].age); printf(\"\\t通讯地址: %s\\n\",per[i].adds); printf(\"\\t电子邮箱: %s\\n\",per[i].email);

} if(m==3) {

} ; char s[20]; int i=0;

printf(\"\\t请输入想查询的地址:\"); scanf(\"\\t%s\",s);

while(strcmp(per[i].adds,s)!=0&&i

}

printf(\"\\t此人编号: %d\\n\",per[i].score); printf(\"\\t此人姓名: %s\\n\",per[i].name); printf(\"\\t此人年龄: %s\\n\",per[i].age); printf(\"\\t电话号码: %s\\n\",per[i].num); printf(\"\\t电子邮箱: %s\\n\",per[i].email); printf(\"\\t通讯录中没有此人!\\n\"); return;

void Change(Person per[],int n) {

char s[20]; int i=0;

printf(\"\\t请输入想修改的记录中的名字:\"); scanf(\"%s\",s);

while(strcmp(per[i].name,s)!=0&&i

printf(\"\\t通讯录中没有此人!\\n\");

return;

}

printf(\"\\t编号:\");

scanf(\"\\t%d\",&per[i].score);

printf(\"\\t姓名:\");

scanf(\"\\t%s\",per[i].name);

printf(\"\\t年龄:\");

scanf(\"\\t%s\",per[i].age); printf(\"\\t电话号码:\");

scanf(\"\\t%s\",per[i].num);

printf(\"\\t通讯住址:\");

scanf(\"\\t%s\",per[i].adds); printf(\"\\t电子邮箱:\"); scanf(\"\\t%s\",per[i].email); printf(\"\\t修改成功!\"); }

void WritetoText(Person per[],int n)

{

int i=0;

FILE *fp;

char filename[20];

printf(\"\\t保存到文件\\n\");

printf(\"\\t请输入所保存的文件名:\");

scanf(\"\\t%s\",filename);

if((fp=fopen(filename,\"w\"))==NULL)

/*定义文件指针*/ /*定义文件名*/ /*输入文件名*/

{

}

fprintf(fp,\"******************************************

录printf(\"\\t无法打开文件\\n\"); system(\"pause\"); return;

******************************************\\n\"); fprintf(fp,\"编号

姓名

年龄

电话号码

通讯地址

电子邮箱\\n\"); ;

fprintf(fp,\"%-3d\\t%-6s\\t%-3s\\t%-13s\\t%-20s\\t%-20s\\n\",per[i].score,per[i].name,per[i].agwhile(i

; fprintf(fp,\"***************************************共有%d

条记录 } fprintf(fp,\"----------------------------\\n\")i++;

****************************************\\n\",n);

}

void main()

/*主函数*/ { int n=0; fclose(fp);

/*关闭文件*/ printf(\"保存成功!\\n\"); for(;;) {

switch(menu_select())

{

case 1:

printf(\"\\n\\t添加记录到通讯录\\n\");

n=Input(pe,n); break;

case 2:

printf(\"\\n\\t\\t\\t

通讯录记录表\\n\"); Display(pe,n);

break;

case 3:

printf(\"\\n\\t从通讯录中删除记录\\n\"); n=Delete_a_record(pe,n);

printf(\"\\t\");

system(\"pause\"); break;

case 4:

printf(\"\\n\\t在通讯录中查找记录\\n\"); Query_a_record(pe,n);

printf(\"\\t\");

system(\"pause\");

break;

case 5:

/*添加记录*/

/*显示记录*/ /*删除记录*/

/*查找记录*/

printf(\"\\n\\t修改通讯录中的记录\\n\");

Change(pe,n);

printf(\"\\t\");

system(\"pause\");

break;

case 6:

printf(\"\\n\\t保存功能\\n\");

WritetoText(pe,n);

printf(\"\\t\");

system(\"pause\");

break;

case 0:

printf(\"\\n\\t\\t谢谢使用,再见!\\n\");

printf(\"\\n\\t\\t\");

system(\"pause\");

exit(0);

}

}

}

/*修改数据*/

/*保存数据*/

/*结束程序*/

4调试分析

调试的意义和目的:在管理信息系统的开发过程中,面对着错综复杂的各种问题,人的主观认识不可能完全符合客观现实,开发人员之间的思想交流也不可能十分完善。所以,在管理信息系统开发周期的各个阶段都不可避免地会出现差错。开发人员应力求在每个阶段结束之前进行认真、严格的技术审查,尽可能早的发现并纠正错误,否则等到系统投入运行后再回头来改正错误将在人力、物力上造成很大的浪费,有时甚至导致整个系统的瘫痪。然而,经验表明,单凭审查并不能发现全部差错,加之在程序设计阶段也不可避免还会产生新的错误,所以,对系统进行调试是不可缺少的,是保证系统质量的关键步骤。统计资料表明,对于一些较大规模的系统来说,系统调试的工作量往往占程序系统编制开发总工作量的40%以上。

调试的目的在于发现其中的错误并及时纠正,所以在调试时应想方设法使程序的各个部分都投入运行,力图找出所有错误。错误多少与程序质量有关。即使这样,调试通过也不能证明系统绝对无误,只不过说明各模块、各子系统的功能和运行情况正常,相互之间连接无误,系统交付用户使用以后,在系统的维护阶段仍有可能发现少量错误并进行纠正,这也是正常的。

4.1测试

1).显示的主菜单界面:

图4.1(1)主菜单界面 2).添加界面:

图4.1(2)添加界面 3).显示界面:

图4.1(3)显示界面 4).删除界面:

图4.1(4)删除前界面 删除后,通讯录里的显示记录:

图(4)删除后界面 5).查询界面:以姓名查询方式为例:

图4.1(5)查询界面

6).修改界面:

图4.1(6)修改前界面 修改后,通讯录里的显示记录:

图4.1(6)修改后界面 7).保存界面:

图4.1(7)保存界面

通讯录.txt 文件截图:

图4.1文件截图

4.2问题思考与调试:

1.当我在进行删除、查询、修改、保存等功能时,以查询为例,输入名字按回车后,虽然会显示该人的所有记录,但是显示后,它马上自动消失了,还没来得及等我看内容。因此,向别人请教后,在一些地方加入了system(\"pause\");这个语言,用来对某项操作完成后进行暂停。

2.现在这个程序的界面个人感觉很清爽。但在最初,每次进行一项操作,运行窗口里的内容会一直保留着,感觉很杂乱,如下图(添加后,进行显示操作):

图4.2分析图

之后,我去网上寻求解决办法,知道可以使用system(\"cls\");这一语句可以解决这个问题,最后,修改成功。 5总结

这次的程序实设计实验是对我们进入大学以来学习程序设计语言结果的一次大检验。自己动手,自己发现和解决问题。发现了自己的许多不足。平时没有掌握好的知识在这次实验中彻底暴露出来,经过不断思考,不断查阅资料和上机运行,解决其中大部分问题,当然还存在一些问题没有解决。我相信在以后的学习能够解决好它们。但是,收获还是不小的,我不仅对C的操作有了进一步的掌握,还了解到了程序设计的书写风格及其注释的格式。

当我选择通讯录这个题目时,一开始想运用大量链表及指针来完成,但是在慢慢琢磨之后,觉得这个不一定要用链表,于是改变了编程思路。当然还有不少文件的读写问题,不过还是通过不断测试之后顺利解决了。另外一点要说的就是这个程序用了很多的循环,因此对于循环的控制要十分小心,有时while和do-while的区别也是十分重要的。

还有一点体会就是,书上和老师教的内容是有限的,我们需要不断地靠自己去学习,向他人请教,了解和掌握更多的知识,这样我们才能编出更好的C程序。

总体来说,这次C语言程序设计实验还是比较成功的,虽然最终程序还存在一些不足,但能取得这样的成绩我还是比较高兴的。

最后,要感谢学校为我们提供这次实验机会,也要感谢老师的教导和好心人对我的帮助与支持。

参考文献

[1]谭浩强,张基温。C语言程序设计教程。第三版。北京:高等教育出版社,2006 [2]谭浩强,张基温。C语言习题集与上机指导。第三版。北京:高等教育出版社,2006 [3]谭浩强。C程序设计(第三版)。北京:清华大学,2005 [4]谭浩强。C程序设计(第二版)。北京:清华大学,1999 [5]林建秋,韩静萍,等.C语言程序设计【M】.电子工业出版社,2004. [6]谭浩强.C语言程序设计【M】.清华大学出版社,2006. [7]黄维通.C语言设计教程.清华大学出版社,2005. [8]王成瑞.C语言程序设计.中国水利水电出版社,2005. [9]张基温.C语言程序设计案例教程.清华大学出版社,2004. [10]苏小红,陈惠鹏.C语言大学实用教程【M】.电子工业出版社,2007.

在这里我要感谢杨书鸿老师,她对我进行了无私的指导和帮助,不厌其烦的帮助进行论文的修改和改进。另外,在校图书馆查找资料的时候,图书馆的老师也给我提供了很多方面的支持与帮助。在此向帮助和指导过我的各位老师表示最中心的感谢! 感谢这篇论文所涉及到的各位学者,如果没有各位学者的研究成果的帮助和启发,我将很难完成本篇论文的写作。 感谢我的同学和朋友,在我写论文的过程中给予我很多素材,还在论文的撰写和排版等过程中提供热情的帮助。 由于我的学术水平有限,所写论文难免有不足之处,恳请各位老师和学友批评和指正!

第12篇:通讯录管理系统

淮北师范大学

软件系列课程设计

通讯录管理系统

计算机科学与技术学院

学 生 姓 名

陈 文 超

20081201011

指导教师姓名

陈 美 荣

2010年 06月 20日

目 录

摘 要 ........................................................

1.绪论 .......................................................

1.1 开发背景简介 ......................................... 1.2 管理系统的发展趋势„„„„„„„„„„„„„„„„„„

1.2 目的目的和意义 ........................................

2.开发工具的选择 ............................................

3.系统分析 ................................................... 3.1题目需求分析............................................ 3.2系统功能分析............................................

4.系统总体规划 ............................................... 4.1概要设计...............................................

5.系统设计 ................................................... 5.1系统操作流程图.......................................... 5.2系统详细设计............................................

6.调试 .......................................................

7.全文总结 ...................................................

8.致 谢 .....................................................

参考文献 .....................................................

通讯录管理系统

摘要:

通讯录管理系统是每一个用户管理通讯录的不可缺少的一个管理信息系统,它的内容对于用户的管理者来说是至关重要的,所以通讯录管理系统应该能够为每一个用户的管理者提供充足的信息和快捷的查询手段,大大的方便用户合理的管理通讯录。

随着科学技术的不断提高,计算机科学日渐成熟,网上通讯工具的迅速发展,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。

作为计算机应用的一部分,使用计算机对通讯录进行管理,具有着手工管理所无法比拟的优点,如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高通讯录管理的效率,也是用户理财的科学化、正规化管理,与先进科学技术接轨的重要条件。

因此,开发这样一套管理软件成为很有必要的事情,对于我们即将计算机专业毕业的学员来说,也是一次将计算机应用于现实管理的一次很有意义的实践活动。

关键词:通讯录 管理信息系统 计算机科学 用户

1.1开发背景简介

随着信息活动在国民经济中主导地位的确立和信息产业的崛起信息资源管理(Informetion Resouces Management,简称IRM)作为一个专有名词和独立的学科逐渐发展起来。如何积极开发、合理配置和有效利用信息资源,日益成为社会生活中亟待解决的问题。由于计算机和通信技术的高速发展,推广应用计算机进行信息、管理成为推动信息化工作的重要内容,管理信息系统正是应用计算机信息化过程中出现的新生事物。它是一个利用计算机软硬件资源进行电子数据处理的人——机系统,它能提供信息,支持企业或组织的运行,具有管理和支持决策的功能利用计算机能把生产经营过程中的巨大数据流收集组织起来。经过处理转换为对各部门不可缺少的数据,经过对这些数据的分析使其变为各级管理人员做出决策具有重要意义的信息。总之,管理信息系统用于管理中可以大大减轻管理人员的工作负担,提高工作效率,使管理更加程序化、科学化。

对一个组织而言,内部管理的好坏直接关系到组织的存在与良好运行,而内部管理中非常重要的一项就是对他人的联系,他人的具体情况,如:手机号、电子邮箱、家庭住址„„;一旦工作人员没有及时出现在自己的岗位时、及其他情况发生变化,可以迅速联系或找到本人甚至其家人及时了解情况;引入计算机管理信息系统,可以提高工作效率,改善管理情况,使管理工作系统化、科学化、提高整体的管理的水平。

本系统是针对通讯录管理系统编写的。对于许多人来说,已经认识到一个好的通讯录是很必要的,可以方便和他人的联系;但是应用计算机来进行管理,他们还无法自己实现,这就需要有专门的管理软件来帮助实现。

随着科技的进步和信息产业的飞速发展,通讯录成为了现代生活中一个重要的工具。本通讯录管理系统利用计算机对通讯录进行统一管理,包括添加、修改、查询记录等功能,实现通讯录管理工作的系统化、规范化和自动化,为人们的工作和生活提供便利。整个系统程序采用c语言来实现。c语言是目前国际上比较流行的计算机高级编程语言之一,因其简洁、使用方便且具备强大的功能而受到编程人员的普通青睐。它既适合作为系统描述语言,也可用来编写系统软件,还可用来编写应用软件。

1.2 管理信息系统的发展趋势 现代管理信息系统软件的规模越来越大,且管理思想越来越复杂,以至于超出了软件开发者在合理的时间和价值内设计、描述、开发和验证它们的能力。因此,在开发管理信息系统的时候,需要利用可靠的构件,或者是以前开发的很小但经过验证的较小的程序模块,在可接受的时间范围内组建出可靠而复杂的软件系统。

一般情况下,管理信息系统的体系结构采用自上而下的纵向分层、横向分块来设计实现。分层为管理软件的复杂度及重用提供了一个很好的解决方法,在分层系统的等级组织形式中,每一层都给下一层提供服务,对其下层则要求得到服务。分块指按信息系统软件实现的功能将软件分为若干块,每一块既是一独立的子系统,又是大系统的一个组成部分。块与块之间通过数据表进行耦合。

在确定的分层分块的体系结构中,再采取自下而上的方法,首先,对最底层的功能模块,对该功能模块包含的管理思想标准化、模型化,使其具有通用性,再进行构件化设计,并按照软构件应该具有的可移植性、互操作性、扩展性、可配置性和可维护性等特点,进行参数化设置;其次,对该功能的上一层进行构件化改造,减少模块间的重叠,这样层层改造之后,对于类似企业的管理信息系统的开发,只需要针对该企业的个性,对某些局部的构件进行改动就可以完成了

1.3开发的目的和意义

计算机已经成为我们学习和工作的得力助手,使用其可方便的管理通讯录 今天,计算机的价格已经十分低廉,性能却有了长足的进步。它已经被应用于许多领域。

现在我国的通讯录管理水平还停留在纸介质的基础上,这样的机制已经不能适应时代的发展,因为它浪费了许多人力和物力,在信息时代这种传统的管理方法必然被计算机为基础的信息管理所取代。 我作为一个计算机应用专业的毕业生,希望可以在这方面有所贡献。改革的总设计师邓小平同志说过“科学技术是第一生产力”,我希望能用我所学的知识编制出一个实用的程序来帮助用户进行财务管理。

开发这一系统的好处大约有以下几点:

第一、可以存储大量的通讯录信息,安全、高效;

二、只需一档案录入员即可操作系统,节省人力;

三、可以迅速查到所需通讯录信息。

根据2003年中国电信的调查报告显示我国的上网人数已达到1870万,互联网已经十分普及,况且现在网上通讯已经出现,本系统为用户将来的上网作了先期工作。

2.开发工具

Microsoft Visual Studio是一种可视化的、面向对象和调用事件驱动方式的结构化高级程序设计,可用于开发Windows环境下的种类应用程序。它简单易学、效率高,且功能强大,可以与Windows的专业开发工具SDK相媲美,而且程序开发人员不必具有C/C++编程基础。在 Microsoft Visual Studio环境下,利用事件驱动的编程机制、新颖易用的可视化设计工具,使用Windows内部的应用程序接口(API)函数,以及动态链接库(DLL)、动态数据交换(DDE)、对象的链接与嵌入(OLE)、开放式数据访问(ODBC)等技术,可以高效、快速地开发出Windows环境下功能强大、图形界面丰富的应用软件系统。

3.1需求分析

设计题目及要求:

◆ 建立通讯录信息,信息至少包含姓名、年龄、电话、通讯地址、电子邮箱、邮政编码等;

◆ 能够提供添加、删除和修改通讯录信息的功能;

◆ 能够提供安不同方式查询的功能;如按姓名或年龄、电话等查询; ◆ 将通讯录保存在文件中;

◆ 能够按表格方式输出通讯录信息。

3.2系统功能需求分析:

主要包含一下多种功能:

添加:添加通讯录记录 显示:显示通讯录记录 删除:删除通讯录记录 查询:查询通讯录记录 修改:修改通讯录记录 保存:将信息保存到文件

4.1概要设计

系统功能模块图:

添加:可以添加通讯录记录,依次输入姓名、年龄、电话号码、通讯地址、电子邮箱邮、政编码后,会提示是否继续添加。 显示:可以以表格形式输出所有通讯录里的记录

删除:输入欲删除的那个人的名字后,会自动删除他(她)的记录内容 查询:可以选择用姓名、电话、地址三种方式查询

修改:输入欲修改的那个人的名字后,再依次输入姓名、年龄、电话号码、通讯地址、电子邮箱、邮政编码即可完成修改

保存:,输入文件名(带后缀名)后,即可将通讯录信息保存到文件

5.1操作系统流程图:

①添加:添加通讯录记录

②显示:显示通讯录记录

③删除:删除通讯录记录

④查询:查询通讯录记录

先选择查询方式,以姓名查询方式为例

⑤修改:修改通讯录记录

5.2详细设计

(1).通讯录:

typedef struct

{

char name[10];

/*姓名*/

char num[15];

/*号码*/

char email[20];

/*邮箱*/

char age[8];

/*年龄*/

char adds[20];

/*住址*/

Char post[10];

/*邮政编码*/ }Person;

void main()

/*主函数*/

{

int n=0; for(;;) {

switch(menu_select())

{

case 1:

printf(\"\\n\\t添加记录到通讯录\\n\");

/*添加记录*/

n=Input(pe,n);

break;

case 2:

printf(\"\\n\\t\\t\\t

通讯录记录表\\n\");

Display(pe,n);

break;

case 3:

printf(\"\\n\\t从通讯录中删除记录\\n\");

n=Delete_a_record(pe,n);

printf(\"\\t\");

system(\"pause\");

break;

case 4:

printf(\"\\n\\t在通讯录中查找记录\\n\");

Query_a_record(pe,n);

printf(\"\\t\");

system(\"pause\");

break;

case 5:

printf(\"\\n\\t修改通讯录中的记录\\n\");

Change(pe,n);

printf(\"\\t\");

system(\"pause\");

break;

case 6:

printf(\"\\n\\t保存功能\\n\");

WritetoText(pe,n);

printf(\"\\t\");

system(\"pause\"); break;

/*显示记录*/

/*删除记录*/

/*查找记录*/

/*修改数据*/

/*保存数据*/

}

} case 0:

printf(\"\\n\\t\\t谢谢使用,再见!\\n\");

/*结束程序*/ printf(\"\\n\\t\\t\"); system(\"pause\"); exit(0); }

六.调试

7.全文总结

在本系统的开发过程中,由于本人是初次开发软件,在知识、经验方面都存在着不足。另外,在整个开发的过程中,时间也比较仓促。因此,该系统必然会存在一些缺陷和不足。因为对通讯录信息管理的整个流程不够熟悉,在需求分析时未能做到完全满足用户的需求。

尽管本管理系统存在着很多不足,但通过开发这个系统,我掌握了的项目基本开发过程,用到的知识巩固了我对Visual C++的学习,在这次设计中的最大收获并不是掌握这几门开发工具的应用,而是学会了设计系统的思维方法,以及与同学们之间相互帮助的精神。 8.致 谢

从接受课题到现在完成设计论文,衷心的感谢我的指导老师给予了精心的指导和热情的帮助,尤其在课题设计的前期准备阶段和本人的设计阶段,导师提出许多宝贵的设计意见,在最后的测试修改阶段老师在百忙之中抽出时间为我们提供了必要的帮助,这样使得我得以顺利的完成毕业设计开发工作,老师渊博的知识、敏锐的思路和实事求是的工作作风给我留下了深刻的印象,这将使得我终身受益,谨此向老师表示衷心的感谢和崇高的敬意!

参考文献

[1] 史济明等编著,软件工程-原理、方法与应用,高等教育出版社,2002 [2] 汪孝宜等,信息系统开发实例精粹,电子工业出版社,2006 [3] 谭浩强.C程序设计[M].3版.北京:清华大学出版社,2005 [4] 张基温.C语言程序设计案例教程[M].北京:清华大学出版社,2004 [5] C语言程序设计教程 第三版 ,高等教育出版社

第13篇:考勤管理系统

目 录

一. 选题的背景

随着计算机与信息技术的普遍提高,越来越多的单位使用计算机来管理档案,这样就在很大程度上提高了管理的效率。近几年来高校的扩大招生,一方面给广大民众提供了越来越多的教育机会,另一方面也使学校的管理工作加重了。学生注册管理采用手工录入和打印数据的方式,显然难以保证学生数据的准确无误和实时更新,迫切需要一种新的现代化管理体制对学生进行管理。 二.课题的提出意义

随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。学生注册管理软件是使用计算机科学管理的办法对学生的学籍、班级、课程、成绩、奖罚信息等进行管理。不仅具有检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低的优点,还使学生注册信息的实时性、精确性和学生注册工作的各个环节结合起来,极大地提高学生注册管理的效率,减轻了高校学生管理的负担。

本系统所实现的学生注册管理系统就是以VB和Acce为编程环境来实现其制作和开发过程的,通过对学生注册管理系统进行需求分析、总体设计和详细设计逐步将一个学生注册管理系统的开发过程呈现出来。没有可以追求专业性和商品化软件的华丽包装,而是本着简单、实用的原则,既在功能上满足用户的需求,又力求操作简便,使本系统容易掌握和使用。

三.本系统的功能及特点

经分析系统共分为八个模块:用户管理模块、班级管理模块、学生学籍模块、课程管理模块、成绩管理模块、奖惩管理模块、个人信息查询模块,并得到如图1 所示的系统功能模块组织结构图。其中每个模块分别实现以下功能:

1) 用户管理:管理使用学生注册管理系统的用户信息,包括系统用户的添加、修改、删除和浏览.

2) 班级管理:管理使用学生的班级信息,包括学生所在班级的添加、修改、删除和查询。

3) 学生注册管理:管理在校学生的学籍信息,包括学生学籍的添加、修改、删除和查询。

4) 课程管理:管理学生课程的各种信息,包括学生课程的基本课程设置和班级课程设置。

5) 成绩管理:管理学生在校的所有成绩,包括学生成绩的添加、修改、删除和查询。

6) 奖惩管理:管理学生在校的奖惩信息,包括学生奖惩管理的添加、修改、删除和查询。

7) 个人信息查询:关于学生的各种相关信息,包括学生的性别、年龄、籍贯、身份等。

四.管理系统的现状

管理信息系统(MIS)是一门边缘学科,集管理科学、信息科学、系统科学、现代通信技术和电子计算机技术于一体。1985年,管理信息系统创始人,明尼苏达大学卡尔森管理学院的著名教授戴维斯(Gordon.B.Davis)给出了一个具有代表性的定义:“管理信息系统是一个利用计算机硬件和软件,手工作业、分析、计划、控制和决策模型以及数据库的用户-机器系统。它能提供信息支持企业或组织的运行、管理和决策功能。”

随着网络技术的出现,管理信息系统又有了新的必恭必敬,基于网络的管理信息系统不断出现,管理信息系统的概念模型也发生了相应的变化,许多学者对管理信息系统给出了新的定义。例如劳顿认为:“管理信息系统是一个基于计算机的信息系统,它通过收集、处理、存储和扩散信息,来支持组织的管理、决策、合作、控制、分析活动,并使之可视化。”

第14篇:会议管理系统

一、问题陈述

有一个对外营业的会议中心,有各种不同规格的会议室,为用户提供以下服务:

1、用户可以按照会议人数、会议时间预订会议室。可以只预订1次,也可预订定期召开的会议。

2、开会前允许修改会议时间、人数,重新选择会议室,甚至取消预订的会议。

3、确定会议预订后,会议中心负责会务管理:包括通过邮寄或电子邮件,通知开会人员有关会议信息,制作代表证等。

4、系统根据会议室的使用情况(紧张与否),调整、更改会议室和会议时间,并调整修改预订会议的时间。

找出所有可能与系统发生交互行为的外部实体、对象、系统。

考虑系统的主要功能的使用者,就会想到用户和系统管理者,但如果直接将用户定义为角色,系统的所有功能几乎都由用户使用。根据问题的描述,系统要求将会议和会议的召开分开来。

从会议的角度看,允许用户定义、更改或删除一个会议。

从会议召开的角度看,允许用户为某个会议定义召开时间、参加人数、更改相应的数据或删除已定义的会议召开。

因此,将用户识别为“会议管理者”和“会议申请者”两个角色。

本系统定义以下角色:

会议管理者(Meeting Administrator)

会议申请者(Meeting Instance Requester)

邮局(Post Office )

会议人员管理(Attendee Management )

系统维护者(System Maintainer )

⑴ 与会议管理者相关的用例:

定义一个会议(Define Meeting )

更改一个会议(Alter Meeting ) 

删除一个会议(Remove Meeting ) 

⑵ 与会议申请者相关的用例:

申请会议召开( Request Meeting Instance ) 

更改申请(Chang Request ) 

取消申请(Cancel Request ) 

定义参加人员(Add Attendee ) 

归还会议室(Release Room )

⑶ 与邮局相关的用例:

申请会议召开( Request Meeting Instance )

更改申请( Modify Request )

取消申请( Cancel Request )

⑷ 与会议人员管理相关的用例:定义参加人员(Add Attendee )取消申请(Cancel Request )

申请会议召开(Request Meeting Instance ) 更改申请( Modify Request )⑸ 与系统维护者相关的用例:

会议室维护( Meeting Room Maintenance ) 设定预定时限(Set Reservation Tome Limit ) 在确定角色和用例的基础上,画出用例图(图1)。

用例

1、定义会议(Define Meeting )输入会议名称确定会议规模确定会议类型

其中会议规模是指参会人数范围。

用例2、更改会议( Alter Meeting )改变会议名称改变会议规模改变会议召开频度

用例3、删除会议( Remove Meeting )如果该会议没有召开申请从会议列表中删除如果该会议有召开申请

取消与之相关的会议召开信息删除该会议使用:

用例8 删除参加人员( Remove Attendee ) 用例6 取消申请(Cancel Request)

用例

4、申请会议召开(Request Meeting Instance)确定召开时间(年、月、日)确定参加人员确定侯选会议室发会议通知使用:

用例11 发会议通知(Inform of Meeting)

用例13 选择参加组(SelectGroup Attendee)扩展:

① 如果召开时间在申请时限之外

用例12 申请拒绝(Request Rejection )②如果还没定义参加人员

用例7 定义参加人员(Add Attendee )

用例5:更改申请( Modify Request )更改召开时间更改参加人员更改取得会议室发会议更改通知使用:

用例13 选择参加组(Select Group Attendee)用例11 发会议通知(Inform of Meeting)扩展:

① 如果更改的时间不合法

用例12 申请拒绝(Request Rejection)② 用例7 定义参加人员(Add Attendee )

会议管理系统

管理者

申请者

邮局

人员管理

系统维护者

定义会议更改会议删除会议

申请会议召开

更改申请取消申请

义参加的人归还会议室

申请会议更改会议取消会议

定义参加人员

取消申请

申请会议债开

更改会议

会议室的维护设定预定时限

第15篇:电话簿管理系统

#include #include #include #include #define HEADER1 \"------------------------------telephone book --\\n\" #define HEADER2 \"|-------num-------|--------name--------|----phonenumber-----|---addre------|\\n\" #define HEADER3 \"|-----------------|--------------------|--------------------|----------------|\\n\" #define FORMAT \"|%-10s

|%-10s

|%-15s

|%-16s|\\n\" #define DATA

p->num

,

p->name

,

p->phonenum p->addre #define END

\"----------------\\n\" #define N 100 int saveflag=0;

typedef int Status; typedef struct telebook{

char num[15];

char name[15];

char phonenum[15];

char addre[20]; }TELEBOOK;

void menu() {

system(\"cls\");

textcolor(13);

gotoxy(10,5);

cprintf(\"

The telephone-book Management System

\\n\");

gotoxy(10,8);

cprintf(\"*****************************************************\\n\");

gotoxy(10,9);

cprintf(\"*

1 input record

2 display record

* \\n\");

gotoxy(10,10);

cprintf(\"*

3 delete record

4 search record

* \\n\");

gotoxy(10,11);

cprintf(\"*

5 modify record

6 insert record

* \\n\");

gotoxy(10,12);

cprintf(\"*

7 sort record

8 save record

* \\n\");

gotoxy(10,13);

cprintf(\"*

0 input record

* \\n\");

gotoxy(10,14);

cprintf(\"*****************************************************\\n\"); }

,

void printheader() {

printf(HEADER1);

printf(HEADER2);

printf(HEADER3); }

void printdata(TELEBOOK pp) {

TELEBOOK *p;

p = &pp;

printf(FORMAT,DATA); }

void Disp(TELEBOOK temp[],int n) {

int i;

if(n==0)

{

printf(\"\\n======>Not telephone record!\\n\");

getchar();

return ;

}

printf(\"\\n\\n\");

printheader();

i=0;

while(i

{

printdata(temp[i]);

i++;

printf(HEADER3);

}

getchar(); }

void Wrong() {

printf(\"\\n\\n\\n\\n\\n********Error:input has wrong! pre any key to continue*******\\n\");

getchar(); }

void Nofind() {

printf(\"\\n========>Not find this telephone record!\\n\"); }

Status Locate(TELEBOOK temp[],int n,char findme[],char nameorphonenum[])

/*find the locate*/ {

int i=0;

if(strcmp(nameorphonenum,\"phonenum\")==0)

{

while(i

{

if(strcmp(temp[i].phonenum,findme)==0) return i;

i++;

}

}

else if(strcmp(nameorphonenum,\"name\")==0)

{

while(i

{

if(strcmp(temp[i].name,findme)==0) return i;

i++;

}

}

return -1; }

void stringinput(char *t,int lens,char *notice) {

char n[255];

do{

printf(notice);

scanf(\"%s\",n);

if(strlen(n)>lens) printf(\"\\n exceed the required length!\\n\");

}while(strlen(n)>lens);

strcpy(t,n); }

Status Add(TELEBOOK temp[],int n)

/*increase record*/ {

char ch,num[10];

int i,flag=0;

system(\"cls\");

Disp(temp,n);

while(1)

{

while(1)

{

stringinput(num,10,\"input number(pre \'0\' retrun menu):\");

flag = 0;

if(strcmp(num,\"0\")==0)

{ return n; }

i=0;

while(i

{

if(strcmp(temp[i].num,num)==0)

{

flag = 1;

break;

}

i++;

}

if(flag==1)

{

getchar();

printf(\"==>The number %s is existing,try again?(Y/N):\",num);

scanf(\"%c\",&ch);

if(ch==\'Y\'&&ch==\'y\') continue;

else return n;

}

else break;

}

strcpy(temp[n].num,num);

stringinput(temp[n].name,15,\"Name:\");

stringinput(temp[n].phonenum,15,\"Telephone:\");

stringinput(temp[n].addre,15,\"Adre:\");

saveflag=1;

n++;

}

return n; }

void Qur(TELEBOOK temp[],int n) /*search the record*/ {

int select;

char searchinput[20];

int p = 0;

if(n

{

system(\"cls\");

printf(\"\\n====>No telephone record !\\n\");

getchar();

return ;

}

system(\"cls\");

printf(\"\\n=====>1 Search by name =====>2 Search by telephonenumber!\\n\");

printf(\"

Please choice(1,2):\");

scanf(\"%d\",&select);

if(select==1)

{

stringinput(searchinput,10,\"input the existing name:\");

p = Locate(temp,n,searchinput,\"name\");

if(p!=-1)

{

printheader();

printdata(temp[p]);

printf(END);

printf(\"pre any key to return \");

getchar();

}

else {

Nofind();

getchar();

}

}

else if(select==2)

{

stringinput(searchinput,15,\"input the exiseing telephone number:\");

p = Locate(temp,n,searchinput,\"phonenum\");

if(p!=-1)

{

printheader(); printdata(temp[p]);

printf(END);

printf(\"pre any key to return \");

getchar();

}

else { Nofind(); getchar(); }

}

else Wrong();getchar(); }

Status Del(TELEBOOK temp[],int n) {

int sel;

char findme[20];

int p=0,i=0;

if(n

{

system(\"cls\");

printf(\"\\n======>No telephone !\\n\");

getchar();

return n;

}

system(\"cls\");

Disp(temp,n);

printf(\" ===>1 Name ====>2 Telephone Please choice[1,2]:\");

scanf(\"%d\",&sel);

if(sel==1)

{

stringinput(findme,15,\"input the existing name:\");

p = Locate(temp,n,findme,\"name\");

getchar();

if(p!=-1)

{

for(i=p+1;i

{

strcpy(temp[i-1].num,temp[i].num);

strcpy(temp[i-1].name,temp[i].name);

strcpy(temp[i-1].phonenum,temp[i].phonenum);

strcpy(temp[i-1].addre,temp[i].addre);

}

printf(\"\\n==>delete succe\\n\");

n--;

getchar();

saveflag=1;

}

else

Nofind();

getchar();

}

else if(sel==2)

{

stringinput(findme,15,\"input the existing telephone number:\");

p = Locate(temp,n,findme,\"phonenum\");

getchar();

if(p!=-1)

{

for(i=p+1;i

{

strcpy(temp[i-1].num,temp[i].num);

strcpy(temp[i-1].name,temp[i].name);

strcpy(temp[i-1].phonenum,temp[i].phonenum);

strcpy(temp[i-1].addre,temp[i].addre);

}

printf(\"\\n======>delete succe !\\n\");

n--;

getchar();

saveflag = 1;

}

else

Nofind();

getchar();

}

else

Nofind();

getchar();

return n; }

void Modify( TELEBOOK temp[],int n) {

char findme[20];

int p = 0;

if(n==0)

{

system(\"cls\");

printf(\"\\n=======>No telephone book recorderd\\n\");

getchar();

return ;

}

system(\"cls\");

printf(\"modify telephone book recorder\");

Disp(temp,n);

stringinput(findme,10,\"input the existing name:\");

p = Locate(temp,n,findme,\"name\");

if(p!=-1)

{

printf(\"Number : %s\\n\",temp[p].num);

printf(\"Name : %s\\n\",temp[p].name);

stringinput(temp[p].name,15,\"input new name:\");

printf(\"Telephone:%s \\n\",temp[p].phonenum);

stringinput(temp[p].phonenum,15,\"input new phonenum:\");

printf(\"Addre:%s\\n\",temp[p].addre);

stringinput(temp[p].addre,30,\"input new addre:\");

printf(\"\\n==========>modify succe!\\n\");

getchar();

saveflag = 1;

}

else {

Nofind();

getchar();

}

return ; }

Status Insert(TELEBOOK temp[],int n) {

char ch,num[10],snum[10];

TELEBOOK newinfo;

int flag = 0,i =0,kkk = 0;

system(\"cls\");

Disp(temp,n);

while(1)

{

stringinput(snum,10,\"Please input insert location after the Number:\");

flag = 0;i = 0;

while(i

{

if(strcmp(temp[i].num,snum)==0) {kkk = i;flag = 1;break;}

i++;

}

if(flag==1) break;

else {

getchar();

printf(\"\\n=====>The number %s is not existing,try again?(Y/N)\",snum);

scanf(\"%c\",&ch);

if(ch==\'Y\'||ch==\'y\') continue;

else return n;

}

}

while(1)

{

stringinput(num,10,\"input the new Number:\");

i = 0;flag = 0;

while(i

{

if(strcmp(temp[i].num,num)==0) {flag = 1;break;}

i++;

}

if(flag==1){

getchar();

printf(\"\\n=======>Sorry,The number %s is existing,try again(Y/N)\",num);

scanf(\"%c\",&ch);

if(ch==\'y\'||ch==\'Y\') continue;

else return n;

}

else break;

}

strcpy(newinfo.num,num);

stringinput(newinfo.name,15,\"Name:\");

stringinput(newinfo.phonenum,15,\"Telephone:\");

stringinput(newinfo.addre,15,\"Addre:\");

saveflag = 1;

for(i=n-1;i>kkk;i--)

{

strcpy(temp[i+1].num,temp[i].num);

strcpy(temp[i+1].name,temp[i].name);

strcpy(temp[i+1].phonenum,temp[i].phonenum);

strcpy(temp[i+1].addre,temp[i].addre);

}

strcpy(temp[kkk+1].num,newinfo.num);

strcpy(temp[kkk+1].name,newinfo.name);

strcpy(temp[kkk+1].phonenum,newinfo.phonenum);

strcpy(temp[kkk+1].addre,newinfo.addre);

n++;

Disp(temp,n);

printf(\"\\n\\n\");

getchar();

return n; }

void SelectSort(TELEBOOK temp[],int n) {

int i=0,j=0,indexmin;

char charflag[10];

TELEBOOK newinfo;

if(n

{

system(\"cls\");

printf(\"====>Not telephone record !\\n\");

getchar();

return ;

}

system(\"cls\");

Disp(temp,n);

printf(\"The order is sorted by number:\\n\");

for(i=0;i

{

indexmin = i;

for(j=i+1;j

if(strcmp(temp[i].num,temp[j].num>0))

indexmin = j;

if(indexmin!=i)

{

strcpy(newinfo.num,temp[i].num);

strcpy(newinfo.name,temp[i].name);

strcpy(newinfo.phonenum,temp[i].phonenum);

strcpy(newinfo.addre,temp[i].addre);

strcpy(temp[indexmin].num,newinfo.num);

strcpy(temp[indexmin].name,newinfo.name);

strcpy(temp[indexmin].phonenum,newinfo.phonenum);

strcpy(temp[indexmin].addre,newinfo.addre);

}

}

Disp(temp,n);

saveflag = 1;

printf(\"\\n=======>sort complete!\\n\");

getchar();

return ; }

void Save(TELEBOOK temp[],int n) {

FILE *fp;

int i = 0;

fp = fopen(\"c: elephonebook\",\"w\");

if(fp==NULL)

{

printf(\"\\n=====>open file error !\\n\");

getchar();

return ;

}

for(i=0;i

{

if(fwrite(&temp[i],sizeof(TELEBOOK),1,fp)==1)

continue;

else break;

}

if(i>0)

{

getchar();printf(\"\\n\\n=====>save file comlete,toal save\'s record is save\'s record number is:%d\\n\",i);

getchar();

saveflag = 0;

}

else {

system(\"cls\");

printf(\"the current link is empty , no telephone record is saved!n\") ;

getchar();

fclose(fp);

} }

void main() {

TELEBOOK tele[N];

FILE *fp;

int select ;

char ch;

int count=0;

fp = fopen(\"C: elephonebook\",\"a+\");

if(fp==NULL)

{

printf(\"\\n========>can not open file!\\n\");

exit (0);

}

while(!feof(fp))

{

if(fread(&tele[count],sizeof(TELEBOOK),1,fp)==1)

count++;

}

fclose(fp);

printf(\"\\n==>open file suce, the total records number is :%d.\\n\",count);

getchar();

menu();

while(1)

{

system(\"cls\");

menu();

printf(\"\\n

Please Enter you choice(0-9):\");

scanf(\"%d\",&select);

if(select==0)

{

if(saveflag==1)

{

getchar();

printf(\"\\n==>Wether save the modified record to file?(Y/N):\");

scanf(\"%c\",&ch);

if(ch==\'Y\'||ch==\'y\')

Save(tele,count);

}

printf(\"\\n===>thank you for usene!\");

getchar();

break;

}

switch(select)

{

case 1:count=Add(tele,count);break;

case 2:system(\"cls\");Disp(tele,count);break;

case 3:count = Del(tele,count);break;

case 4:Qur(tele,count);break;

case 5:Modify(tele,count);break;

case 6:count = Insert(tele,count);break;

case 7:SelectSort(tele,count);break;

case 8:Save(tele,count);break;

default :Wrong();getchar();break;

}

}

getch(); }

第16篇:物流管理系统

郑州大学软件学院:09级信息工程专业1班组长:郑贺敏

数据库名称:物流公司管理系统

数据库管理系统:人事管理系统、运输管理系统、仓库管理系统

小组成员:郑贺敏 张云静 李方方 魏璐 吴若君 张杰

本数据库功能:

一.用户需求分析:

(一).本系统所涉及的部门及其职责如下:

财务部:主要负责组织制定并运行财务管理体系,组织资金调度,负责组织年度结算和财务工作,以及公司财务分析报告的编织工作,具体负责汇总分析工作,确认公司与外部往来单位的

往来账,审核各种费用报销单。

人事部:主要负责公司的人事调动和人员招聘及解聘,负责人事考核、

考查工作,建立人事资料档案资料库,做好公司有关岗位的

人员编订工作,核定各岗位的工资制定标准。

业务部:分析市场走向并作出市场预测,确定市场并制定市场拓展及

确定销售策略,为公司赢得更多的订单,增加公司的营业额。

客服部:在业务操作过程中,接受客户信息查询机客户投诉,及时整

理客户的信息回馈,主动联系客户,接待来访客户,对需要

修改的订单及时修改,避免造成不良后果,接受与处理客户

业务订单的凭证,确认客户业务结算明细,催促用户交纳相

应的费用。

宣传部:通过广告的形式为公司提供外部宣传,提高该公司的知名度,

开发潜在客源。

监督部:监督和调查各部门的工作情况、员工考勤情况。

质检部:主要检查货物是否有损坏,是否符合配运标准。

仓库:并由专人负责进出库,仓库管理,收货-存储-拣选-分拣 运营管理部包括:

1. 车辆调度部门:主要负责车辆的调度,监控GPS定位,运

输路线的选取;

2. 配送部门:装卸货物配送的部门配合内勤部、仓库

内勤部:主要负责购买办公用品,日常杂物,车辆维修,车辆购买等。

(二).各系统功能:

人事管理系统:

1、系统功能基本要求:

 员工各种信息的输入,包括员工的基本信息、学历、婚姻状况等;  员工的各种信息的修改;

 对调职、辞职、辞退、退休员工信息的删除;

 可按照一定的条件,查询、统计符合条件的员工信息;

 员工每个工种基本工资的设定;

 加班津贴管理,根据加班时间和类型给予不同的加班津贴;  按照不同种的基本工资情况、员工的考勤情况产生员工的月

工资;

 员工年终奖金生成(基本+津贴)/12;

2、数据库:

 员工基本信息表;

 员工学历信息表,反映员工的学历、专业、毕业时间、学校等;  企业工作岗位表;

 企业部门信息表;

 员工考勤情况表;

 员工工种情况表、反映员工的工种、等级、基本工资等;

 员工津贴信息表,反映员工的加班时间、加班类别、加班天数、

津贴情况等;

 员工基本信息表;

 员工与工资表。

运输管理系统:

1、系统功能基本要求:

 基本信息管理:客户信息的录入、更新、修改、查询;

 车辆信息管理:车辆的基本信息操作及车辆的状态管理(出车、

待命、维修)

 货物信息管理:用户可以清晰明了的看见货物的有关信息,进行

录入、修改、查询等;

 订单处理:运输订单的生成、录入、修改、执行等一系列功能,

有系统生成订单并且调度员安排执行;

 运输调度:系统根据货源、客户、车辆信息,提供运货车辆,

运输线路,便于调度员调度车辆运输;

 仓库作业:根据订单提出相应的货物;

2、数据库:

 客户基本信息表;

 车辆信息表;

 货物信息表;

 订单信息表;

 库存信息表;

仓库管理系统:

1、系统功能基本要求:

 产品入库管理,可以天禧诶入库单,确认产品入库;

 产品出库管理,可以填写出库单,确认出库;

 可以查询产品入库情况、出库情况、当前库存情况,可以按出库

单、入库单,产品、时间进行查询;

2、数据库:

 库存情况表;

 出库表单;

 入库表单。

第17篇:运动会管理系统

南京师范大学 2015-2016学年 第一学期

《数据库系统课程设计》

课程设计报告

姓 名: 学 号: 班 级: 专 业: 学 院: 指导教师: 题 目:

表单设计及数据提取

访问数据库

提交日期:

目录

一、设计目的 ...............................................................................................................................

二、设计平台 ...............................................................................................................................

三、试题内容 ...............................................................................................................................

四、实验设计 ...............................................................................................................................4.1需求分析 ........................................................................................................................4.2实验内容 ........................................................................................................................4.2.1概念结构设计 ....................................................................................................4.2.2逻辑结构设计 ....................................................................................................4.2.3数据库物理设计与实施 ....................................................................................4.2.4访问数据库 ......................................................................................................4.2.5数据库维护 ......................................................................................................

五、参考文献 .............................................................................................................................

六、实验心得 .............................................................................................................................

一、设计目的

数据库课程设计是在系统地学习了《数据库系统原理》课程后,按照关系型数据库的基本原理,综合运用所学的知识,完成一个数据库应用系统的设计全过程,包括需求分析、数据库设计、数据库建立、数据输入、应用系统的设计和开发、用户界面的设计和实现、系统安装和调试。

通过对一个实际问题的分析、设计与实现,将原理与应用相结合,学会如何把所学的知识用于解决实际问题。

二、设计平台

SQL 2005 WPS

三、试题内容

根据给定的“运动会管理系统”的需求分析,完成概念结构设计、逻辑结构设计、数据库的物理设计、数据库的访问和数据库维护等内容,并提交完整的课程设计报告。

四、实验设计

4.1需求分析

引入计算机管理运动会,运动可以在运动会管理系统中查询自己的比赛项目及比赛结果,裁判员或工作人员可以通过系统记录运动员各个比赛项目的成绩、进行成绩统计等。运动会管理系统保存运动员、比赛项目以及不同类型的比赛的参数数据。

对于运动员来说:可以查看运动员所在代表队的名称、领队、本代表队的总积分、总名次;查看运动员参加比赛的项目、每个项目的成绩、积分等。

对于管理员来说:可以记录并查看运动员参加比赛项目的成绩、积分、名次;查看各代表队的总积分、总名次等。

运动会管理系统同主要管理对象有代表队、运动员、比赛项目等。对于代表队,需要有代表队号、代表队的名称、领队、本代表队的总积分、总名次等属性;对于运动员需要有运动员号、姓名、年龄、性别等属性;对于比赛项目,需要有项目号、项目类别、项目名称、成绩单位等属性。

在运动会管理系统中,基本规定为:一个代表队包含多个运动员,一个运动员只能属于一个代表队;一个运动员可以参加多个比赛项目,一个比赛项目也可以被多个运动员参加;假设各个比赛项目结束后,按照成绩由高到低排出名次,并对前3名运动员给予相应的积分,如第

1、

2、3名分别积分为3分、2分、1分,而获得其他名次的运动员积分为0分,将代表队中所有成员的积分累加,得到各代表队总积分,将总积分由高到低排序,得到各个代表队的排名情况。

为简化系统需求,本系统只考虑代表队、运动员、比赛项目的关系,其他关系不考虑。

4.2实验内容 4.2.1概念结构设计

4.2.1.1抽象出实体,并画出各实体的E-R图;

② 分析各实体之间的联系及类型,设计运动会管理系统总体E-R图;

4.2.2逻辑结构设计

根据E-R 图,设计运动会管理数据库的关系模式。

(1)运动员(运动员号、姓名、年龄、性别);

(2)代表队(代表队号、代表队的名称、领队、本代表队的总 (3)比赛项目(项目号,项目类别,项目名称,成绩单位); (4)参加(运动员号, 项目号,成绩,积分,名次)

积分、总名次);

4.2.3数据库物理设计与实施 (1)建立数据库

建立“运动会管理系统”数据库,其初始大小为100MB,增长率为10%,数据文件和日志文件名分别为:“运动会管理系统_data”和“运动会管理系统_log”,存储路径为“D:\\MSSQL.1\\MSSQL\\Data”文件夹下。

创建运动会数据库SQL代码如下:

CREATE DATABASE 运动会管理系统 on(

NAME=运动会管理系统_data,

FILENAME=’D:\\MSSQL.1\\MSSQL\\Data\\运动会管理系统.mdf\',

SIZE=100MB,

MAXSIZE=200MB,

FILEGROWTH=10%

) LOG ON(

NAME=运动会管理系统_log,

FILENAME=\'D:\\MSSQL.1\\MSSQL\\Data\\运动会管理系统.ldf\',

SIZE=1MB,

MAXSIZE=20MB,

FILEGROWTH=10%

) GO

(2)建立基本表

①创建代表队表 SQL代码:

- 5

③ 创建比赛项目表 SQL代码:

CREATE TABLE 比赛项目 ( 项目号CHAR(6) NOT NULL PRIMARY KEY, 项目类别CHAR(10) NOT NULL, 项目名称CHAR(20) NOT NULL, 成绩单位CHAR(20) NOT NULL, )

④ 创建比赛详情表 SQL代码:

CREATE TABLE 比赛详情 (

运动员号CHAR(6) NOT NULL ,

项目号CHAR(6) NOT NULL ,

成绩Float,

积分Tinyint CHECK (积分>= 0 ),

名次Tinyint CHECK (名次>= 0 ),

CONSTRAINT 运动会管理系统_比赛详情_运动员号FOREIGN KEY (运动员号) REFERENCES 运动员表(运动员号),

CONSTRAINT 运动会管理系统_比赛详情_项目号FOREIGN KEY (项目号) REFERENCES 比赛项目(项目号), )

(3)管理基本表

(3-1) 向运动员表中增加“身高”列,其数据类型为整型。

alter table 运动员表add 身高INT NULL

(3-2) 将运动员表中的“身高”的数据类型改为浮点型。 alter table 运动员表alter column 身高float

(3-3) 为运动员表中的“身高”属性增加取值必须大于0的约束条件。 alter table 运动员表add constraint 运动会管理系统_运动员表_身高 check(身高>0) (3-4) 删除运动员表中的“身高”列。

alter table 运动员表drop constraint 运动会管理系统_运动员表_身高 alter table 运动员表drop column 身高

(4)使用Insert语句插入数据,各表中的数据如下:

(4-1) 代表队表数据: insert into 代表队表values (\'GLXY\',\'管理学院\',\'吴道福\',\'7\',\'2\') insert into 代表队表 values (\'JSJXY\',\'计算机学院\',\'张鹏\',\'6\',\'3\') insert into 代表队表values (\'SXXY\',\'数学学院\',\'宋威\',\'3\',\'4\') insert into 代表队表values (\'WYXY\',\'外语学院\',\'王光明\',\'8\',\'1\')

- 111213141516(6-1) 为运动员表中的“姓名”建立次索引。

create index sportname on 运动员表(姓名)

(6-2) 为项目表中的“项目类别”建立次索引。

create index claification on 比赛项目(项目类别)

- 1819(4) 查询“杨中华”参加的比赛项目的情况。

select 运动员表.姓名,比赛详情.运动员号,比赛详情.项目号,比赛项目.项目名称,比赛详情.成绩,比赛详情.积分,比赛详情.名次 from 运动员表,比赛项目,比赛详情

where 比赛详情.项目号= 比赛项目.项目号and 运动员表.运动员号= 比赛详情.运动员号and 姓名= \'杨中华\'

(5) 列出运动员号为“G1104”的运动员的所有的个人信息及比赛信息。 select 比赛详情.运动员号,运动员表.姓名,运动员表.性别,运动员表.年龄,运动员表.代表队号,比赛详情.项目号,比赛项目.项目类别, 比赛项目.项目名称,比赛详情.成绩,比赛详情.积分,比赛详情.名次from 运动员表,比赛项目,比赛详情

where 比赛详情.项目号= 比赛项目.项目号and 运动员表.运动员号= 比赛详情.运动员号and 运动员表.运动员号= \'G11004\'

(6) 统计代表队号为“JSJXY”的参加比赛的各个运动员的积分情况,并且按积分由大到小的顺序排序。

select 比赛详情.运动员号,运动员表.姓名,比赛详情.积分 from 运动员表,比赛详情

- 21表.代表队号

from 运动员表,比赛详情

where 运动员表.运动员号=比赛详情.运动员号 and 比赛详情.积分>=3

2.数据更新

(1) 增加一名新的运动员,要求运动员号:S11006;姓名:王林;性别:男;年龄:17;代表队号:SXXY。

insert into 运动员表(运动员号,姓名,性别,年龄,代表队号) values(\'S11006\',\'王林\',\'男\',\'17\',\'SXXY\')

(2) 将“王林”的年龄更新为16。

update 运动员表set 年龄=\'16\' where 姓名=\'王林\'

(3) 将运动员号为“S11006”的运动员的代表队号更新为“GLXY”。 update 运动员表set 代表队号=\'GLXY\' where 运动员号=\'S11006\'

(4) 将所有运动员的年龄加1。 update 运动员表set 年龄=年龄+1

- 24252627 -

第18篇:图书管理系统

目录

第一章 绪论 .....................................................................................................................................1 第二章 需求分析 ..............................................................................................................................2

2.1任务概述 ............................................................................................................................2

2.1.1 图书管理系统完成的主要目标 ...........................................................................2 2.1.2用户的特点 ............................................................................................................3 2.2需求规定 ............................................................................................................................3

2.2.1对功能的规定 ........................................................................................................3 2.2.2读者管理功能 ........................................................................................................4 2.2.3系统管理功能 ........................................................................................................4

第三章 概要设计 .............................................................................................................................4

3.1总体设计 ............................................................................................................................4

3.1.1系统目标设计 ........................................................................................................4 3.1.2系统功能分析 ........................................................................................................5 3.2系统设计思想 .....................................................................................................................5 3.3 系统模块功能解析 ............................................................................................................5 第四章 详细设计 .............................................................................................................................6

4.1程序设计说明 ....................................................................................................................6

4.1.1用户登录模块 ........................................................................................................6 4.1.2用户添加模块 ........................................................................................................7 4.1.3书籍查询模块 ........................................................................................................8 4.1.4图书借阅模块 ........................................................................................................9 4.1.5图书归还模块 ......................................................................................................10 4.1.6新书入库模块 ......................................................................................................11 第五章 编码与测试 .......................................................................................................................13 5.1各功能模块的实现 ...........................................................................................................13 5.2 测试 .................................................................................................................................19 5.2.1借阅卡管理测试 ..................................................................................................19 5.2.2书籍管理测试 ......................................................................................................19 5.2.3系统管理测试 ......................................................................................................19 结束语.............................................................................................................................................20 致

谢 ...........................................................................................................................................21 参考文献 .........................................................................................................................................21

图书管理系统

摘要:本文介绍了在VB6.0环境下采用“自上而下地总体规划,自下而上地应用开发”的策略开发一个管理信息系统的过程。通过分析传统的人工管理图书馆的不足,创建了一套行之有效的计算机管理图书馆的方案。文章详细介绍了图书管理信息系统的系统分析部分,包括可行性分析、组织机构分析、管理职能分析、业务流程分析、数据流程分析、数据字典、处理描述等等;系统设计部分主要介绍了系统功能设计和数据库设计;系统实现部分列出了几个主要的程序框图,并附带了一些主要的窗口和程序。 关键字:图书管理系统,VB6.0,sqlserver2000,信息系统

Library Management System Abstract:This article introduces the detailed proce of exploring a management information system under the environment of VB6.0, utilizing “Top-Bottom” overall plan and a strategy according to “Bottom-Top” application and exploitation.That is to establish a set of effective scheme for library management by computer, through analyzing disadvantages of traditional library management by human resources.This article emphasizes on three sections.The system analysis section of library management information includes feasible analysis, organizing organs analysis, management function analysis, technological proce of busine analysis, technological proce of data analysis, data dictionary, disposal description and the like.The system design section mainly focuses on system function design and data base design.And the system realization section has provided several major program charts, together with the main windows and programs.Key words: library management system, VB6.0,information system

第一章 绪论

随着人类社会的发展,人类对知识的需求也不断地增长。在这种形势下,书籍就渐渐地成为人们获取并增长知识的主要途径,而图书馆就自然而然地在人们的生活中占据了一定的位置,如何科学地管理图书馆不但关系到读者求知的方便程度,也关系到图书馆的发展,因此,开发一套完善的图书馆管理系统就必不可

少了。

图书馆管理系统是典型的信息管理系统,其开发主要包括后台数据库的建立和维护以及前端的应用程序的开发两个方面。对于前者要求建立数据的一致性和完整性,对于后者则要求应用程序功能的完备,易用等的特点。基于上述考虑本系统主要利用VB6.0作前端的应用开发工具 ,利用sqlsever 作为后台的数据库,利用WINDOWS作为系统平台开发的图书管理系统。另外本图书馆管理系统利用软件工程化思想和方法,总体上是采用结构化生命法进行系统分析和设计的,而系统实现等步骤则采用了原型法和面对对象的方法

系统开发的总目标是实现内部图书借阅管理的系统化、规范化和自动化。能够对图书进行注册登记,也就是将图书的基本信息(如:书名、作者、价格等)预先存入数据库中,供以后检索。能够对借阅人进行注册登记,包括记录借阅人的姓名、地址、电话等信息。提供方便的查询方法。如:以书名、作者、出版社、出版时间(确切的时间、时间段、某一时间之前、某一时间之后)等信息进行图书检索,并能反映出图书的借阅情况;以借阅人编号对借阅人信息进行检索;以出版社名称查询出版社联系方式信息。提供统计分析功能。可以展现出图书类型比例、库存与借出比例。提供旧书销毁功能,对于淘汰、损坏、丢失的书目可及时对数据库进行修改。能够对使用该管理系统的用户进行管理,按照不同的工作职能提供不同的功能授权。提供较为完善的差错控制与友好的用户界面,尽量避免误操作。图书馆的基本功能就是为读者提供借阅服务,读者通过借阅这一过程,可以把图书带出图书馆,从而使读者能够更方便的浏览图书。借书过程中,图书管理员要对读者的借书资格进行审查,对符合借书条件的读者,允许其借书,对其借书记录进行登记;对没有借书资格的读者,禁止其借书。

在VB6.0环境下采用“自上而下地总体规划,自下而上地应用开发”的策略开发一个管理信息系统的过程。通过分析传统的人工管理图书馆的不足,创建了一套行之有效的计算机管理图书馆的方案。文章详细介绍了图书管理信息系统的系统分析部分,包括可行性分析、组织机构分析、管理职能分析、业务流程分析、数据流程分析、数据字典、处理描述等等;系统设计部分主要介绍了系统功能设计和数据库设计;系统实现部分列出了几个主要的程序框图,并附带了一些主要的窗口和程序。

第二章 需求分析

2.1任务概述

2.1.1 图书管理系统完成的主要目标

进入系统前需要身份认证、用户名、密码、输入正确方可进入。用户可以根据需要进行书库管理。用户可以进行借书证的办理、查询、挂失等操作。用户可

以添加账户和修改密码。 2.1.2用户的特点

最终用户包括读者(具有借阅卡的人)、图书管理员,鉴于此软件应用于大学图书管理,读者基本都是在校大学生即校职工和领导,图书管理员都是接受过高等教育的职工,因此他们都懂得运用基本的计算机知识。大学图书管理系统的使用频度很高,假如一个一万人的大学来讲,每天图书馆的平均日流量为1.5万。因此,该软件的可靠性、可用性、可维护性显得尤为重要。

2.2需求规定

2.2.1对功能的规定

1、图书信息查询/借书信息查询:图书馆主要向读者提供图书借阅的服务。读者为了借阅图书,一般情况下,需要在借书之前查询所要借阅的图书情况,所以图书馆需要为读者提供图书查询功能。例如,读者可能想借阅某方面的书,但不知道图书馆在该方面有哪些图书可供借阅,所以需要对图书馆的图书进行查询;或者,读者知道想借阅的图书信息,但不知道该图书馆是否有该书或不知道图书在图书馆的位置、是否被借出、是否可以借阅等信息,这也需要使用图书查询功能。一般的图书查询中,读者是通过图书登记卡、浏览图书登记卡中的信息得到图书信息的。经过图书查询,读者获得图书馆是否有自己想要的图书,该图书的简单信息以及图书在图书馆的借阅位置等信息。

2、新书入库:为了能正常运行,图书馆要及时更新馆藏图书。对于新书,要购进,供读者借阅;所以要设计到图书的批量入库。对于批量入库,图书管理员要批量登记图书的信息,包括书名ID、ISBN、图书名称、作者、出版社、单价、入库时间、图书总量、现存总量等。

3、借阅图书/归还图书:图书馆的基本功能之一就是为读者提供借阅服务,读者通过借阅这一过程,可以把图书带出图书馆,从而使读者能够更方便的浏览图书。借书过程中,图书管理员要对读者的借书资格进行审查,对符合借书条件的读者,允许其借书,对其借书记录进行登记;对没有借书资格的读者,禁止其借书。具体的步骤如下:读者向图书管理员提交请求和图书借阅卡,图书管理员检查读者提供的借阅卡,如果该借阅证真实准确,读者已经借阅的图书并没有超过允许借书量,而且读者没有逾期未还的图书,则允许读者借书,否则,读者不能从图书馆借书。读者拿到要借阅的图书,同时拿到自己的借阅卡,借书过程完毕。当借阅图书的数量超过5本或者出现未按期归还图书的情况,则不好进行借阅处理。图书馆的另一基本功能就是为读者提供还书服务,读者在一本图书借阅期满之前把该图书还给图书馆,一般的还书步骤如下:读者把所借的图书和自己的借阅卡交给图书管理员。图书管理员对图书进行检查,看有无损坏,如果出现图书的损坏情况,读者应进行相应的赔偿。图书管理员查看是否超过规定借阅期限,如果已经过期,则读者要按规定交纳罚金。图书管理员进行登记,同时把还书信息记入借阅卡。读者拿回自己的借阅卡,还书过程借书。读者逾期未归还图书超过三天,将按照每本每天进行一定的罚款。

4、书籍挂失:对图书由于丢失而不能即时还书的情况,读者要即时到图书管理员进行登记,确保图书信息的更新。进行书籍挂失的步骤一般如下:读者将所丢图书信息告诉图书管理员并将借阅卡交给图书管理员。图书管理员对该图书信息进行登记,并按图书的价格,要求读者进行相应赔偿。图书管理员将信息记入借阅卡。读者拿回自己的借阅卡,挂失功能结束。

2.2.2读者管理功能

1、办理借阅卡:图书馆向读者提供借阅服务,读者必须具有有效凭证方可借阅。因此,读者必须办理借阅卡获取有效凭证。读者在办理借阅卡时,必须输入个人有关注册信息,包括读者姓名、性别、出生日期、家庭住址、身份证号码、电话号码等信息。系统根据读者提供的信息,办理借阅卡并生成个人帐号、读者可自行修改密码。

2、借阅卡信息查询;图书馆在正常运营中要面对大量的读者信息,需要掌握每个读者的信息,即时准确的掌握读者的基本情况,这些是图书馆运营的保证。读者要进行信息查询,可以通过系统将自己的借阅卡账户、密码输入系统,系统通过核对找到读者的信息。如果读者的信息正确,系统将读者的信息包括读者姓名、性别、出生日期、家庭住址、身份证号码、电话号码等信息。如果读者的信息不正确,系统将提示错误,并且系统设定,当错误次数超过5次时,系统将不予查询。

3、借阅卡挂失:对借阅卡的丢失要即时进行挂失处理,以防止其他人盗用自己的有效信息并出现私自借书等行为。借阅卡挂失的一般步骤可分为:读者将挂失情况即时到图书管理员处进行登记,并填写登记单。图书管理员将读者情况进行登记挂失,注销借阅卡的信息,并咨询读者是否重新办理。若读者需重新办理,则重新填写相关信息,系统自动生成心的借阅卡信息记录,读者重新设置帐号即密码,并交纳相应的费用。若读者不需办理,则系统将信息注销。读者获得新的图书借阅卡。

2.2.3系统管理功能

1、注册管理员:为了对图书馆管理系统进行管理,图书馆需要若干名图书管理员进行管理,在图书管理员对系统进行管理之前必须进行注册功能,以确定管理员身份。对管理员进行注册,系统生成相应信息。其中管理员的基本信息包括:成员ID、密码等。系统管理员每次登陆前输入自己的ID与密码,系统对其信息进行核实,如基本信息正确,则系统管理员可进行系统管理功能,若系统检查不正确,则系统管理员不可以进行相应的操作。

2、修改密码:服务图书馆管理员可能由于某些原因,如电脑中毒导致管理员密码的泄露,为避免图书管理信息遭到破坏,系统具有修改密码的功能,确保图书管理功能的安全性。

3、退出功能:系统管理员每次离开必须进行退出功能,确保管理功能不被他人所用,这样更方便图书管理系统出现问题时,找到责任人。

第三章 概要设计

3.1总体设计

3.1.1系统目标设计

系统开发的总目标是实现内部图书借阅管理的系统化、规范化和自动化。能够对图书进行注册登记,也就是将图书的基本信息(如:书名、作者、价格等)

预先存入数据库中,供以后检索。能够对借阅人进行注册登记,包括记录借阅人的姓名、地址、电话等信息。提供方便的查询方法。如:以书名、作者、出版社、出版时间(确切的时间、时间段、某一时间之前、某一时间之后)等信息进行图书检索,并能反映出图书的借阅情况;以借阅人编号对借阅人信息进行检索;以出版社名称查询出版社联系方式信息。提供统计分析功能。可以展现出图书类型比例、库存与借出比例。提供旧书销毁功能,对于淘汰、损坏、丢失的书目可及时对数据库进行修改。能够对使用该管理系统的用户进行管理,按照不同的工作职能提供不同的功能授权。提供较为完善的差错控制与友好的用户界面,尽量避免误操作。 3.1.2系统功能分析

根据以上功能,将图书管理系统的数据分为:数据输入部分:主要包括图书基本信息的录入、借阅人基本信息的录入、用户基本信息的录入。数据输出部分:主要是各种统计查询,包括:根据图书信息(如书名、作者、出版社等)查阅图书及其借阅信息、统计输出图书类型比例等。数据处理部分:主要涉及借阅和归还的处理,如一本书借出后,必须在数据

库中将该书标记为已借出,以防出现数据库中有书但图书馆无书的情况;一本书归还后,同样必须在数据库中将其标记为已经归还,以便再次借出。

概念设计阶段主要任务和目标是根据需求分析的结果,包括一般联系实体,画出对应的ER图。对于复杂的系统,通常首先要对它的各功能模进行分析,然后再把它的功能结构图画出来,便是设计和优化。功能分析之后,再根据各个岗位、各个用户对数据和使用权限的不同要求作出局部ER图,然后再把各个局部ER图综合起来形成统一的整体ER图。

3.2系统设计思想

1、图书管理系统是典型的信息管理系统(MIS),其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。图书管理系统使用的是SQL Server2000的数据管理系统和以Visual Basic6.0为开发工具。

2、首先进行系统设计分析,系统设计主要包括系统功能分析、系统模块设计以及运行环境的选择、系统实现过程。

3、然后根据系统功能分析设计出需要的数据库,绘制系统数据流图与总结数据字典、设计数据库结构。

4、最后在实现各个功能模块时,采用先模块后系统集成的方式,即各系统功能模块分别独立设计和调试,在创建系统主窗体时才将各个功能模块通过主窗体菜单系统集成到一起,最后进行系统整体的设计和调试。

3.3 系统模块功能解析

(1)系统设计分析

本图书管理系统主要有以下功能: 图书征订:包括图书征订数据的录入、修改、删除与审校等功能。 图书编目:包括图书数目信息的录入、修改、删除功能。 图书典藏:包括新书分配、库室调配等功能。

图书流通:包括图书借阅、续借、图书返还,图书书目的查询的功能。 系统用户管理:包括系统用户数据的录入、修改与删除等功能。

读者数据管理:包括读者类别管理,读者个人数据的录入、修改和删除功能。 (2)系统功能分析

权限功能:权限功能设置的对象为高级管理员、普通管理员、读者。高级管 删除所有信息;普通管理员只能对授权范围内进行相应修改及删除;读者 只能查询借阅记录和图书书目不能修改。

录入功能:为普通管理员提供相应的录入功能,为高级管理员提供对所有信息的录入功能。

查询功能:为所有用户提供查询的功能,可查询允许范围内的所有信息。 维护功能:为普通管理员提供查询及相应的修改,删除功能,为高级管理提 供对所有信息的修改删除功能。

打印功能:可打印图书征订计划。

退出功能:各个功能模块和主窗体都设有关闭命令按钮,可方便地退出各模 块或系统。

第四章 详细设计

4.1程序设计说明

4.1.1用户登录模块

1.程序描述:此程序用于用户登陆的至用户界面,程序通过输入用户的ID,用户密码的正确性来实现对验证用户的真实性。2.功能:实现用户的登录功能

3.性能:用户通过输入用户ID,用户名和密码进行用户登陆,通过认证后,用户

即可进入用户界面。

4.输入项:输入用户ID,用户名,密码5.输出项:用户主页面。流程逻辑如图所示:

输入用户名和密码N数据库是否打开Y连接失败返回N用户名和密码是否正确Y输入次数是否超过5次YN重新输入密码关闭数据库返回登陆成功进入主界面

图4-1用户登录流程逻辑

4.1.2用户添加模块

1.程序描述:此程序用于添加新的用户,用户通过向数据库内输入必要的信息来注册成为新的用户,才通过一系列的验证之后,即注册成为真正的用户。

2.功能:实现对用户的添加功能。

3.性能:查询新用户的用户名是否存在,若存在则停止添加返还数据库;若用户不存在,则进行添加,并进行注册,注册成功后返回。

4.输入项:输入用户的详细信息,包括姓名,出生日期,性别,地址,身份证号码,电话号码等信息。

5.输出项:若添加成功,则输出提示用户注册成功界面;若未成功,则提示输出未成功原因界面。

6.流程逻辑如下图所示:

输入用户信息N判断数据库是否打开提示连接失败返回Y查询数据库中是否有该用户Y提示已经存在该用户关闭数据库并返回N向数据库中添加新用户提示注册成功返回

图4-2用户添加模块流程逻辑

4.1.3书籍查询模块

1.程序描述:此程序用于实现用户对想要借阅的查询功能。用户通过输入相应的图书信息来查询,数据库根据用户提供的信息来搜索,最后给出客户相应的图书信息。

2.功能:实现图书查询功能。

3.性能:对进行想要查询的书籍进行搜索,若存在此书则显示该书的详细信息;若不存在此书,则提示没有此书并返回。

4.输入项:输入图书的详细信息,包括图书名称,书籍ID,图书作者,出版社,单价等信息。

5.输出项:若输入的图书存在即输出图书详细信息界面;若输入的图书不存在则显示图书不存在界面。

6.流程逻辑如下图所示:

输入图书信息判断数据库是否打开Y查询是否有该书YN连接失败返回N关闭数据库返回显示该书的信息关闭数据库返回 图4-3图书查询模块流程

4.1.4图书借阅模块

1.程序描述:此程序用于图书的借阅,用户通过登录自己的借阅ID后,对需要借阅的图书进行借阅操作,如果符合借阅的要求,则可进行借阅。 2.功能:实现对图书的书籍借阅功能。

3.性能:首先验证借阅者输入的借阅ID是否存在,若存在进行下一步;若不存在则返回。

4.若借阅ID存在,则检查此借阅ID是否借阅书籍超出4本,若超出则提示超出借阅数目,返回;若没有超出,则进行下一操作。

5.对想要借阅的图书ID进行搜索,若此书不存在,则提示此书不存在;若此书存在则进行下一步操作。

将借阅者借阅的数量増一,将数据库中此书数量减一,同时提醒借阅成功,然后返回。

6.输入项:输入借阅证的ID,图书ID 7.输出项:若借阅证ID正确且图书ID正确且符合借阅要求,则输出提示借阅成功界面;若存在借阅ID或图书ID或不符合借阅要求等问题,则输出提示没有借阅成功原因的界面。 8.流程逻辑如下图

输入书籍ID和借阅IDN数据库是否打开YN借阅卡ID是否存在YY判断借阅ID是否借书超出4本提示超出最大借书数量关闭数据库返回提示不存在该借阅者关闭数据库返回数据库连接失败返回NN数据库中是否存在书籍IDY将借阅者的借书数量加1提示不存在该书籍关闭数据库返回将书籍的数量减1提示借书成功关闭数据库返回 图4-4图书借阅模块

4.1.5图书归还模块

1.程序描述:此程序用于图书的归还,用户在登录自己的ID之后,用户可以对需要归还的图书进行操作,如果符合归还要求,则可以将图书归还。 2.功能:实现对图书的书籍归还功能。

3.性能:首先验证借阅者输入的借阅ID是否存在,若存在进行下一步;若不存在则返回。

对想要归还的图书ID进行搜索,若此书不存在,则提示此书不存在;若此书存在则进行下一步操作。将借阅者借阅的数量减一,将数据库中此书数量加一,同时提醒借阅归还,然后返回。

4.输入项:输入借阅证ID和图书ID 5.输出项:若借阅证ID和图书ID正确,则输出提示图书归还成功界面;若借阅证ID或图书ID不正确,则输出提示没有成功原因的界面。

6.流程逻辑如下图:

输入书籍ID和借阅IDN数据库是否打开YN借阅卡ID是否存在YN提示不存在该书籍关闭数据库返回提示不存在该借阅者关闭数据库返回数据库连接失败返回数据库中是否存在书籍IDY将借阅者的借书数量减1将书籍的数量加1提示还书成功关闭数据库返回 图4-5图书归还模块

4.1.6新书入库模块

1.程序描述:此程序用户对新进图书的入口登记处理。用户可以将新书的详细信息进行输入,保存在数据库中后,新书即登记成功。

2.功能;实现新进图书入库功能。

3.性能:对数据库查询是否已存在此书,若存在则将此书数量加一,提示添加成功;若没有此书,则将此书的基本信息存入数据库,并提示添加书籍成功。

4.输入项:输入新书的书籍ID,书名,作者,出版社,单价等信息。

5.输出项:若添加成功,则输出提示新书添加成功界面;若没有添加成功, 输出提示未成功原因界面。

6.流程逻辑如下图

输入书籍信息N数据库是否打开关闭数据库返回Y是否已经存在Y该书将该书的数量加1提示添加书籍成功关闭数据库N将该书信息存入数据库是否是第一条N记录提示添加书籍成功关闭数据库返回Y提示添加第一本书籍关闭数据库返回图4-6新书入库模块

返回

第五章 编码与测试

5.1各功能模块的实现

(1)用户登录窗体

图5-1 用户登录窗体

用户登录代码:

Const MaxLogTimes As Integer = 3 Private Sub cmdcancel_Click()

If MsgBox(\"是否真的退出系统登录?\", vbYesNo, \"登录验证\") = vbYes Then

Unload Me

End If End Sub Private Sub cmdok_Click()

Static intLogTimes As Integer

intLogTimes = intLogTimes + 1

If intLogTimes >MaxLogTimes Then

MsgBox \"超过登录次数!\", vbCritical, \"登录验证\"

Else

With Library_Manage.rsSysUsers

.Open

If .RecordCount >0 Then

.MoveFirst

.Find \"编号=\" & Trim(txtLog(0)) & \"\"

If .EOF Then

MsgBox Trim(txtLog(0)) & \"不是系统用户,请检查输入!\", vbCritical, \"登录验证\"

txtLog(0).SetFocus

txtLog(0).SelStart = 0

txtLog(0).SelLength = Len(txtLog(0))

ElseIf .Fields(\"口令\") Trim(txtLog(1)) Then

MsgBox \"口令错误,请检查输入口令!\", vbCritical, \"登录验证\"

txtLog(1).SetFocus: txtLog(1) = \"\"

Else

CurrentUserNum = .Fields(编号)

CurrentUserPaword = .Fields(\"口令\")

CurrentUserStatus = .Fields(\"权限\")

MsgBox \"欢迎使用常州信息学院管理系统!\", vbInformation, \"登陆成功!\"

Unload Me

End If

End If

.Close

End With

End If End Sub Private Sub Form_Load()

SysLogon.BackColor = RGB(192, 210, 270) End Sub (2)用户管理窗体界面

图5-2 用户管理窗体

用户管理窗体代码 \'保存

Private Sub cmdSave_Click()

Dim objcopy As New Recordset

If Trim(txtNum) = \"\" Then

MsgBox \"不能为空!\", vbCritical, \"系统用户管理\"

txtNum.SetFocus

txtNum.SelStart = 0

txtNum.SelLength = Len(txtNum)

ElseIf Len(Trim(txtPwd)) 6 Then

MsgBox \"用户口令须为6位字符串!\", vbCritical, \"系统用户管理\"

txtPwd.SetFocus

txtPwd.SelStart = 0

txtPwd.SelLength = Len(txtPwd) ElseIf Not txtAuth Like \"[0,1]\" Then

MsgBox \"用户权限必须为0或1\", vbCritical, \"系统用户管理\"

txtAuth = \"\"

txtAuth.SetFocus Else

Set objcopy = Library_Manage.rsSysUsers.Clone \'对错?

With objcopy

If .RecordCount >0 Then

.MoveFirst

.Find \"编号\" & Trim(txtNum) & \"\"

If Not .EOF And .AbsolutePosition Library_Manage.rsSysUsers.AbsolutePosition Then

MsgBox \"编号:\" & Trim(txtNum) & \"已被使用,请选择其他编号!\", vbCritical, \"系统用户管理\"

txtNum.SetFocus

txtNum.SelStart = 0

txtNum.SelLength = Len(txtNum)

Exit Sub

Else

\'保存记录

Library_Manage.rsSysUsers.Update

MsgBox \"数据保存成功!\", vbInformation, \"系统用户管理\"

cmdAdd.Enabled = True

cmdDel.Enabled = True

isAdding = False: picNavigation.Enabled = True

End If

End With End If End Sub Private Sub Form_Load()

cmdMove(0).Value = True End Sub (3)读者数据管理窗体界面

图5-3 读者数据管理窗体

读者数据管理窗体代码

Library_Manage.Library_Manage_Con.Execute \"TRUNCATE TABLE 读者类别\"

With Library_Manage.ReaderType

If .State = adStateClosed Then .Open

.AddNew

.Fields(\"编号\") = \"0\"

.Fields(\"名称\") = \"特殊\"

.Fields(\"借书量\") = Val(txtSp(1))

.Fields(\"借书期\") = Val(txtSp(2))

.Fields(\"有效期\") = Val(txtSp(3))

.Update

.AddNew

.Fields(\"编号\") = \"1\"

.Fields(\"名称\") = \"馆员\"

.Fields(\"借书量\") = Val(txtL(1))

.Fields(\"借书期\") = Val(txtL(2))

.Fields(\"有效期\") = Val(txtL(3))

.Update

.AddNew

.Update

.AddNew

.Fields(\"编号\") = \"2\"

.Fields(\"名称\") = \"教师\"

.Fields(\"借书量\") = Val(txtT(1))

.Fields(\"借书期\") = Val(txtT(2))

.Fields(\"有效期\") = Val(txtT(3))

.Update

.AddNew

.Fields(\"编号\") = \"3\"

.Fields(\"名称\") = \"学生\"

.Fields(\"借书量\") = Val(txtS(1))

.Fields(\"借书期\") = Val(txtS(2))

.Fields(\"有效期\") = Val(txtS(3))

.Update

End With End Sub Private Sub Form_Load() cmdMove(0).Value = True End Sub Private Sub SSTab1_DblClick() End Sub (4)图书征订管理窗体

图5-4 图书征订管理窗体

图书征订管理代码

txtPubDate.SelLength = Len(txtPubDate)

ElseIf Trim(txtAuthor) = \"\" Then

MsgBox \"作者不能为空!\", vbCritical, \"图书征订管理\"

txtAuthor.SetFocus

txtAuthor.SelStart = 0

txtAuthor.SelLength = Len(txtAuthor)

ElseIf Val(txtNum) = \"\" Then

MsgBox \"正的数量无效!\", vbCritical, \"图书征订管理\"

txtNum.SetFocus

txtNum.SelStart = 0

txtNum.SelLength = Len(txtNum)

ElseIf Not IsDate(txtDate) = \"\" Then

MsgBox \"作者不能为空!\", vbCritical, \"图书征订管理\"

txtDate.SetFocus

txtDate.SelStart = 0

txtDate.SelLength = Len(txtDate)

Else

\'保存记录

Library_Manage.rsBooksOrder .Update

MsgBox \"数据保存成功!\", vbInformation, \"图书征订管理\"

cmdAdd.Enabled = True: cmdDel.Enabled = True

cmdExam.Enabled = True: cmdRefresh.Enabled = True

isAdding = False: picNavigation.Enabled = True

End If End Sub Dim objcopy As Recordset Private Sub cmbOut_Click()

AddListOut

End Sub Private Sub cmdAddAll_Click(Index As Integer) \'选择全部条码

ListItem_Add lstPre(Index), LstIn(Index), Index, True End Sub Private Sub cmdAddOne_Click(Index As Integer)\'选择当前条码

ListItem_Add lstPre(Index), LstIn(Index), Index, False End Sub Private Sub cmdExit_Click()

If LstIn(0).ListCount >0 Then

If MsgBox(\"你选定了部分新书准备入库,但没执行保存操作\" & vbCr & \"是否要执行保存操作?\", vbCritical + vbYesNo, \"图书典藏管理\") = vbYes Then

SSTab1.Tab = 0

cmdSave.Value = True

End If

ElseIf LstIn(1).ListCount >0 Then

If MsgBox(\"你选定了部分新书准备入库,但没执行保存操作\" & vbCr & \"是否要执行保存操作?\", vbCritical + vbYesNo, \"图书典藏管理\") = vbYes Then

SSTab1.Tab = 1

cmdSave.Value = True

End If

End If

Unload Me End Sub \'刷新新书或调出库室条码列表

Private Sub cmdRefresh_Click(Index As Integer)

Select Case Index

Case 0 \'刷新新书列表

With Library_Manage.rsBooksBibli

If .State = adStateClosed Then .Open

.Requery

End With

AddListNew

Case 1 \'刷新库室条码列表

With Library_Manage.rsBooksStore

If .State = adStateClosed Then .Open

.Requery

End With

AddListOut

End Select End Sub Public Sub AddListNew()

lstPre(0).Clear

With Library_Manage.rsBooksBibli

If .State = adStateClosed Then .Open

If .RecordCount >0 Then

.MoveFirst

While Not .EOF

lstPre(0).AddItem .Fields(\"条码\")

.MoveNext

Wend

Else

lstPre(0).AddItem \"当前无待分配新书\"

End If End With End Sub 5.2 测试

5.2.1 借阅卡管理测试

进度安排测试办理借阅证信息,检查个人账号、读者可自行修改密码。测试查询借阅卡信息的正确性,包括输入的读者信息等。测试借阅卡挂失功能,包括读者信息等。

5.2.2 书籍管理测试

进度安排:测试新书入库信息的正确性。测试借书、还书功能信息正确性。测试书籍挂失信息的正确性。测试图书信息查询的正确性。测试借书信息查询的正确性。

5.2.3 系统管理测试

进度安排测试注册管理员信息的正确性。测试修改密码信息的正确性。

结束语

对于这篇论文我有不少心得体会。这次是对我们掌握所学知识的一次考核。它可以让我们了解自己一学期里的学习情况,有助于在今后的学习中加以改进。通过这次上机实验,我发现了自己对数据库和vb语言掌握的并不牢,有的知识点根本就不懂。这都要怪自己在平时的学习过程中不够用心,不懂的地方也没有及时的去搞懂,课后也没怎么花时间去研究。这次实验我觉得自己不仅学到了很多软件设计方面的知识,也让我巩固了以前所学的知识以及看到了自己以前学习中的不足之处。

在今后的学习过程中,我一定会认真学习专业课程,再也不能像以前那样迷迷糊糊的,课后要多花时间去研究一些有关编程方面的题目,不懂的地方及时把它弄懂。以后自己还要多动手编写一些程序。在这里我要感谢学校能提供这么一个宝贵的机会,我们可以把课堂上所学的理论知识运用到实践中去,把书上的东西变成我们自己的。这个机会既让我们学习巩固了知识,也让我们发现了自己的不足之处。特别要感谢我们的指导老师,正因为有了您的帮助我们才可以完成实验。我也希望今后还会有更多的机会让我们去实践,去充实自己。

致 谢

在本次设计的过程中,老师们给了我们很大的帮助。不仅使我们在规定时间内完成了系统的设计,同时还使我们学到了很多有益的知识和宝贵的经验在此, 我谨向他们表示最衷心的感谢。感谢老师的指导,使我们充分利用软件工程,VB,数据库原理开发出自己的项目.在开发的过程中使我体会到了工程化开发方法和瀑布模型利用的重要性,在此还要感谢所有合作参与项目开发的同学们这次毕业设计的成功离不开所有参与的同学们的帮助和支持,是他们让我知道了团队工作的重要.

参考文献

1、陶宏才.数据库原理及设计[M].北京:清华大学出版社.2004.

2、陆丽娜.软件工程 [M].北京:经济科学出版社.1999

3、郝志恒、刘舫.Visual Basic 6.0 编程篇[M] 北京:电子工业出版社 2004

4、刘世峰.数据库基础与应用[M] 北京: 中央电大出版社 2003

5、吴斌、鲁大林.Visual Basic+SQL Sever数据库应用系统开发[M] 北京:机械工程出版社 2008

6、邱李华 .SQL Server 2000 数据库应用教程[M] 北京:人民邮电出版社 2007

7、钟军 .Visual Basic数据库高级实例导航[M] 北京:清华大学出版社 2003

8、赵松涛.Visual Basic+SQL Server 2000 系统开发实录[M] 北京: 机械工业出版社 2007

第19篇:经销商管理系统

经销商管理系统,系统集进销存于一体,代表一种新型B/S管理软件趋势,可以随时

随地都可以管理企业销售信息,随地实现订单处理、收发货,更简单的管理树型结构

万级会员吗....

经销商管理系统

经销商管理系统是一套由网畅基于PHP+Mysql技术的MVC架构开发的Web

电子商务网站,它是由商品供应商提供平台,代理商在此平台中对消费者

销售的经营模式网站,它可以根据地区设定多级代理,而且互不干扰,网

站平台则由商品供应商直接管理,它主要功能有:采用了缓存更新处理机

制;代理上可以发布自己的商品,价格由自己设定,支付手段支持在线充

值、支付宝支付、财付通即时到账、财付通中介担保、银行汇款、网银支

付、paypal支付、货到付款等多种支付手段;有新闻发布、广告管理、

友情链接、交易邮箱提醒、信用评价、站短信通知、信息脏话过滤、文件

下载、视频发布、后台分权限管理等功能;系统前端完全遵循W3C网页标

准,采用XHTML+CSS开发,极大的提高了在

IE6/IE7/IE8/Firefox/Charome/Opera等主流浏览器下运行良好;无缝整

合UC/DZ/PW论坛产品,一站式会员注册、登录。旨在为厂家、总经销商

提供一个网络交易和管理的电子商务平台。

多级代理管理系统模式图

功能介绍

鼠标拖曳排版-----可以任意调整网站排版布局,灵活设置插件显示方式,

网站管理维护更方便快捷;

在线支付管理-----支持支付宝、财付通、在线充值、银行汇款、网银支

付、paypal支付等方式;

多级分类-----商品可实现多级分类,从而满足网站多元化商品信息的需求;

商品搜索-----多种搜索方式;如:商品、团购、拍卖、秒杀、资讯搜索

等多种搜索方式;

信息评价-----拥有信用评价功能、可对交易双方作出信用评价,并自动

统计用户的信用指数;

代理商平台二级域名-----可实现代理商平台二级域名转向功能(需独立 服务器支持);

代理商类型-----根据代理商类型、等级可设置不同的权限;如:商品发布数量、代理商功能区分;

主营品牌设-----代理商可以设置主营品牌;

商品信息发布-----发布商品介绍、图片、价格等商品信息;

商品发布模式-----一口价商品、团购商品、拍卖商品等多种发布模式;

商品批量导入-----可批量导入淘宝商品图片和数据;

水印管理功能-----支持支持图片和文字水印方式; HTML编辑-----信息的添加和更新改用 HTML编辑器,实现所见即所得;

广告系统-----具有分组轮播广告、页内广告等多种广告形式;

商品管理-----商品分类,商品管理、推荐,品牌管理;

下载-----可对专业文档、软件等设置收费下载,帮助网站盈利;

视频-----通过视频模式展示企业产品和宣传资料,支持会员上传;

数据库管理-----可以后台进行数据库备份还原管理;

后台多级管理-----后台管理员多级权限管理模式。

第20篇:工程项目管理系统

Creat-epm 工程项目管理系统.cn/createpm

本系统针对国内现有施工企业信息化不足、网络条件差等情况,结合我们近十年工程经验,坚持以成本管理为核心的软件研发,通过先进的管理理念与施工企业具体实际相结合,使我们对施工企业和施工项目的成本核算与成本管控积累了丰富的实践经验,为用户提供一流的解决方案。

本系统集项目部一线人员、各级公司部门管理者、各级公司高层决策者于一体,通过托管日常业务工作,将企业庞大组织中的相关角色有机的集成为一个整体,按照企业自身的管理流程和规则有序协作,帮助施工企业对各项目进行全方位管理,提升管理能力并实现战略落地。

良好的实施服务将帮助施工企业认清真实需求、降低投资风险、提高管理水平、推动企业变革进步。从而保证企业可以成功实施本系统,真正实现企业的管理智能化。

采用本系统有利于企业节约IT资金,降低企业成本,创造更高的效益,树立良好的企业外界形象。通过现代化的管理模式,规范管理全部项目部,使工地与项目之间真正建立起畅通的信息交换通道,最终达到决策者在第一时间根据各方面的企业数据进行准确分析,做出正确决策。

1.采用积木式设计,系统简洁、操作简单、上手快、易用性强,一般用户几乎不用培训就可以开始使用。

2.国内首家嵌入计算公式的Excel工作流表单定制技术,界面更美观,功能更强大,使用更方便,一个工作就是一个表单,没有多余界面

3.集成了个人办公模块,企业无需增加别的办公系统就可以实现企业办公的自动化

4.可以定制出任意的工作流程,真正实现无纸化办公,使办公更轻松更有效!

5.网络上动辄几十万\\上百万的项目管理系统不同,EPRO在价格上充分为中小型施工企业用户考虑,一般区区几万元就可以轻松实现项目的智能化管理。

6.完全兼容Excel,可以导入及导出Excel,生成PDF文档

7.强大的报表功能,可以表单直接输出、标准报表、三联报表等

整个系统中我们通过权限控制,让不同的用户负责不同的角色,从而实现企业管理的分工更加合理,从而使企业管理流程变成企业数据流,使企业管理更加智能化同时管理决策层可以通过本系统及时了解员工的工作情况同时可以动态的掌握公司的资金流、成本情况。

1.项目权限:授权用户可以访问的项目

2.用户权限:授权用户可以添加、修改、删除、输出、锁定的权限

3.模块权限:授权用户可以使用的模块

4.审批流程:对不同的表单定义相应的审批流程,实现企业数据的工作流管理

网络实施是保证企业成功实施本系统的基础,针对当前企业网络现状;本系统采用了多种网络方式,它包括支持无网络应用,局域网,广域网和Internet,实现项目的信息化管理

1.针对工地网速很慢:可以定期采用生成离线包传送到服务器(如U盘\\邮件)、数据上传(定期上传到总部服务器)、数据下载(接收离线包或定期从服务器下载需要数据)

2.针对工地网速一般:可以采用三层架构的C/S模式,客户端可以安全及快速的访问

3.公司一般网速较好:可以使用普通模式访问就可以了

本系统采用条形码管理,所有单据都可以生成条形码,为了满足现代仓库管理需求;系统可以与PDA扫描设备进行数据连接,用户只需手持PDA扫描设备就可以进行材料的入库、出库及盘点工作。PDA扫描设备通过GPRS网络以及数据连接方式,导入到本系统中实现系统的智能化。

对于供应商的管理,系统提供B/S及C/S架构的送货单模块,供应商直接在网上或软件提交送货单;这样我们就可以直接导入到系统中实现自动入库。

数据接口,系统可以导入EXCEL数据,快速生成表单

教学计划管理系统
《教学计划管理系统.doc》
将本文的Word文档下载到电脑,方便编辑。
推荐度:
点击下载文档
相关专题
点击下载本文文档