C/C++ 编程代写
当前位置:以往案例 > >案例计算机CS专业C++编程:实现C++ GUI管理系统英文
2019-06-04

课程设计任务书

课程名称:面向对象程序设计




一、设计要求 :

1. 此课程设计需要实现CUICommand User Interface)版本 (如能实现C++ GUI则更好)。

2. 至少应包含以下要求功能,在项目实现时还应能尽可能多考虑实际软件的必须因素(如登陆等等)

3. 在实际编程中类的设计建议尽量考虑利用面向对象的相关知识,在项目的可重用性 可拓展性 易修改性上反复调优代码质量。(:基础较弱的同学可先考虑功能实现,待功能实现后再考虑代码优化)

4. 建议额外功能

a. 用户登陆和登出操作,用户密码在用户文件中实现加密功能

b. 增加员工信息修改功能 (界面逻辑方面,自行设计)

c. 全系统设置为GUI界面或者只是用户登陆部分设置成GUI

d. 符合逻辑的其它额外功能设计

如果实现以上额外功能,会得到适度加分。

5. 软件项目提交内容:

a. 项目工程源代码

b. 项目需求和设计文档

c. 分工协作相关说明

d. 项目代码编制和实施心得体会。

<可以适度制作屏幕截图和录像,以进行工程展示>

二、评分标准

1) 合理的OOP理念,良好的系统结构 20

2 良好编码规范 20

3) 功能完整,性能稳定 40

4) 文档说明和其它展示内容 20

三、项目需求

兴邦资讯是上海的一个小咨询公司,创建于1998年,目前已经有700名以上的全职员工。请创建一个小mis(Management Information System)系统,主要完成对该公司员工信息的管理。在该系统中,员工信息存储在文本文件中。 (emp_data.txt

111:02-98781999:Williams:Nick:T:35:Computer Officer:14-10-2000

112:02-99893878:Brown:Sarah:B:12:Electrician:09-02-1992

131:02-95673456:Couch:David:A:26:Consultant:23-04-1994

236:02-95437869:Anderson:Sarah:K:19:CEO:21-09-1988

553:03-99999999:Coles:David:M:12:Manager:12-12-1999

869:02-95671660:Jones:Sarah:B:45:Sales Manager:14-12-1995

148:02-93272658:Smith:John:C:43:Technical Manager:21-10-1988

372:02-12345678:Miller:Sam:B:22:Engineer:12-03-1998

059:02-95673455:Chen:Xiao:Y:26:Consultant:01-05-2003

812:02-98781987:Xue:Fei:L:35:Computer Officer:10-08-1998

619:02-95436669:Wang:Mengjie:X:26:Consultant:12-02-2001

员工信息必须满足以下规范

· employee payroll number:3位数字

· telephone numberXX-XXXXXXXX X都为数字,详细要求见下文P8

· name, (last name, first name, initial) (必须都为英文)

· department number, (都为数字)

· job title (必须都为英文)

· date of hiring. XX-XX-XXXXX都为数字)

主菜单页面实现以下七个功能

1. Displaying all current employee records on the screen.

2. Displaying all current employee records (formatted and sorted) on the screen. (工号)

3. Displaying only names and phone numbers on the screen.

4. Displaying only names and phone numbers (formatted and sorted) on the screen. (名字)

5. Searching for and displaying specific employee record(s).

6. Add new records to the data file.

7. Delete records from the data file .

1 2 3 4主要实现的是显示功能\5实现的是查找功能,6实现的增加功能,7实现的是删除功能。

以下详细描述项目的需求

兴邦资讯 – Employee Information – Main Menu

=====================================================

1 – Print All Current Records

2 – Print All Current Records (formatted)

3 – Print Names and Phone Numbers

4 – Print Names and Phone Numbers (formatted)

5 – Search for specific Record(s)

6 – Add New Records

7 – Delete Records

Q – Quit

Your Selection: | (waiting for user input)

· 如果数据文件不存在,应做提示之后并终止运行。Employee information data file can not found! Now exit!”, 然后退出程序。

· menu菜单上,如果用户的选择输入的不是1, 2, 3, 4, 5, 6, 7 Q, 程序应该显示"Invalid code! Press Enter to continue…" (这时候,程序的光标应该停在这个消息的后面,而不能停在下一行的开头). 用户重新敲回车后,最初的主菜单重新显示以便用户重新做选择。用户可以通过输入Q q退出程序.

· menu菜单上,如果用户的选择输入仅仅敲回车,应该提示"No selection entered. Press Enter to continue…"(这时候,程序的光标应该停在这个消息的后面,而不能停在下一行的开头). 用户重新敲回车后,最初的主菜单重新显示以便用户重新做选择。

When the User Selects Option 1 – Print All Current Records

Here is a sample output from menu when the user selects option 1 from the main menu:

(The main menu here)

Your Selection: 1 (user input)

111:02-98781999:Williams:Nick:T:35:Computer Officer:14-10-2000

112:02-99893878:Brown:Sarah:B:12:Electrician:09-02-1992

131:02-95673456:Couch:David:A:26:Consultant:23-04-1994

236:02-95437869:Anderson:Sarah:K:19:CEO:21-09-1988

553:03-99999999:Coles:David:M:12:Manager:12-12-1999

869:02-95671660:Jones:Sarah:B:45:Sales Manager:14-12-1995

148:02-93272658:Smith:John:C:43:Technical Manager:21-10-1988

372:02-12345678:Miller:Sam:B:22:Engineer:12-03-1998

059:02-95673455:Chen:Xiao:Y:26:Consultant:01-05-2003

812:02-98781987:Xue:Fei:L:35:Computer Officer:10-08-1998

619:02-95436669:Wang:Mengjie:X:26:Consultant:12-02-2001

Press Enter to continue… (Waiting here for the user to press Enter. After the user presses Enter, the main menu is displayed again)

When the User Selects Option 2 – Print All Current Records (formatted)

Here is a sample output when the user selects option 2 from the main menu:

(The main menu here)

Your Selection: 2 (user input)

Anderson Sarah K 236 02-95437869 19 CEO 21-09-1988

Brown Sarah B 112 02-99893878 12 Electrician 09-02-1992

Chen Xiao Y 059 02-95673455 26 Consultant 01-05-2003

Coles David M 553 03-99999999 12 Manager 12-12-1999

Couch David A 131 02-95673456 26 Consultant 23-04-1994

Jones Sarah B 869 02-95671660 45 Sales Manager 14-12-1995

Miller Sam B 372 02-12345678 22 Engineer 12-03-1998

Smith John C 148 02-93272658 43 Technical Manager 21-10-1988

Wang Mengjie X 619 02-95436669 26 Consultant 12-02-2001

Williams Nick T 111 02-98781999 35 Computer Officer 14-10-2000

Xue Fei L 812 02-98781987 35 Computer Officer 10-08-1998

Press Enter to continue… (Waiting here for the user to press Enter. After the user presses Enter, the main menu is displayed again)

When the User Selects Option 3 – Print Names and Phone Numbers

Here is a sample output when the user selects option 3 from the main menu:

(The main menu here)

Your Selection: 3 (user input)

Williams,Nick,02-98781999

Brown,Sarah,02-99893878

Couch,David,02-95673456

Anderson,Sarah,02-95437869

Coles,David,03-99999999

Jones,Sarah,02-95671660

Smith,John,02-93272658

Miller,Sam,02-12345678

Chen,Xiao,02-95673455

Xue,Fei,02-98781987

Wang,Mengjie,02-95436669

Press Enter to continue… (Waiting here for the user to press Enter. After the user presses Enter, the main menu is displayed again)

When the User Selects Option 4 – Print Names and Phone Numbers (formatted)

Here is a sample when the user selects 4 on the main menu,

(The main menu here)

Your Selection: 4 (user input)

Anderson Sarah 02-95437869

Brown Sarah 02-99893878

Chen Xiao 02-95673455

Coles David 03-99999999

Couch David 02-95673456

Jones Sarah 02-95671660

Miller Sam 02-12345678

Smith John 02-93272658

Wang Mengjie 02-95436669

Williams Nick 02-98781999

Xue Fei 02-98781987

Press Enter to continue… (Waiting here for the user to press Enter. After the user presses Enter, the main menu is displayed again)

When the User Selects Option 5 – Search for specific Record(s)

Here is a sample when the user selects 5 on the main menu,

(The main menu here)

Your Selection: 5 (user input)


在线提交订单